¿Cómo se enumeran todos los paquetes NuGet instalados localmente?
¿Existe un equivalente de NuGet RPM -qa
? Dentro de Chocolatey está el chocolatey list -localonly
, pero por mi vida no puedo encontrar el equivalente NuGet de ese comando.
¿Cómo se enumeran todos los paquetes NuGet instalados localmente?
¿Existe un equivalente de NuGet RPM -qa
? Dentro de Chocolatey está el chocolatey list -localonly
, pero por mi vida no puedo encontrar el equivalente NuGet de ese comando.
Respuestas:
En la consola del administrador de paquetes NuGet , ingrese el siguiente comando:
Get-Package
Esto imprimirá una lista de paquetes instalados, o si no hay ninguno presente, escriba la siguiente línea en la consola:
PM> Get-Package
No packages installed.
Para obtener más detalles, consulte la referencia de PowerShell de NuGet .
Get-Package
, los nombres de los paquetes se recortan cuando tienen más de 32 caracteres. ¿Es posible aumentar la columna del nombre del paquete para que la salida muestre los nombres completos sin recortarlos?
Get-Package | Format-Table -AutoSize
lo haré
Si solo lo haces
Get-Package
enumerará los paquetes y dónde se hace referencia a ellos. Enumerará los mismos paquetes una y otra vez si se hace referencia a ellos muchas veces. Si desea obtener una lista limpia de todos los paquetes instalados en la solución, puede hacerlo
Get-Package | select -Unique Id, Versions
Get-Package -ProjectName "Your.Project.Name"
Mostrará los paquetes para el proyecto especificado.
Consulte también: Referencia de PowerShell de la consola del administrador de paquetes
Tenga en cuenta que cada proyecto tendrá un archivo packages.config que se usa para rastrear los paquetes instalados. Si esto se modifica (específicamente si lo modifica al revés), es posible que los proyectos no descarguen automáticamente la versión correcta del paquete. En ese caso, tome nota de los paquetes necesarios y realice un paquete de desinstalación, seguido de un paquete de instalación para cada uno.
Además, ¡las copias de seguridad son tus aliadas! ;)
En Visual Studio,
packages.config
archivo. Consulte la documentación de Microsoft .
¿Cómo enumero todos los paquetes NuGet instalados?
Suponiendo que NuGet esté instalado correctamente
Haga clic con el botón derecho en el nodo Proyecto y haga clic en Administrar paquetes NuGet
Ver lista de paquetes instalados
Responda a "¿Hay alguna manera de hacer esto usando nuget.exe? - bitbonk" :
nuget list -Source C:/packages
Donde C: / packages es una ruta a su repositorio local.
Si tiene el tiempo de ejecución de .NET Core instalado, puede usar el comando dotnet list package en las herramientas de la CLI de .NET Core para obtener los paquetes instalados para una solución o proyecto determinados. Úselo así desde la línea de comandos de Windows:
dotnet list "C:\Source\MySolution\MySolution.sln" package
Funciona tanto en proyectos .NET Framework como .NET Core.
Nota: Para que este comando funcione, la solución debe usar el nuevo formato de NuGet PackageReference para hacer referencia a paquetes NuGet. La migración es tan fácil como hacer clic con el botón derecho en packages.config y hacer clic en "Migrar packages.config a PackageReference ...", luego restaurar los paquetes construyendo la solución.
Responda a "¿Hay alguna forma de hacer esto usando nuget.exe?" - bitbonk
Basado en la respuesta de jstar anterior. He utilizado \
en lugar de /
que se ajusta más al entorno de Windows, donde Nuget está en casa. Mi edición de la respuesta fue rechazada, así que publico la mía.
nuget list -Source c:\code\packages
¿Dónde c:\code
hay una ruta a su repositorio de código local? La packages
carpeta está en el mismo nivel que su archivo de solución (* .sln).