如何列出所有本地安装的NuGet软件包?
是否有NuGet的等效项RPM -qa
?在Chocolatey中有chocolatey list -localonly
,但是对我而言,我找不到与该命令等效的NuGet。
如何列出所有本地安装的NuGet软件包?
是否有NuGet的等效项RPM -qa
?在Chocolatey中有chocolatey list -localonly
,但是对我而言,我找不到与该命令等效的NuGet。
Answers:
在NuGet软件包管理器控制台中,输入以下命令:
Get-Package
这将打印出已安装软件包的列表,或者如果不存在,则将以下行写入控制台:
PM> Get-Package
No packages installed.
有关更多详细信息,请参阅《NuGet PowerShell参考》。
Get-Package | Format-Table -AutoSize
会做到的
Get-Package -ProjectName "Your.Project.Name"
将显示指定项目的软件包。
请注意,每个项目都会有一个用于跟踪已安装软件包的packages.config文件。如果更改了此选项(特别是如果您将其向后更改),则项目可能不会自动下载正确的软件包版本。在这种情况下,请记下所需的软件包,并先进行卸载,然后再对每个软件包进行安装。
另外,备份是您的朋友!;)
packages.config
文件。请参阅Microsoft文档。
如果已安装.NET Core运行时,则可以使用.NET Core CLI工具中的dotnet list package命令为给定的解决方案或项目获取已安装的软件包。从Windows命令行这样使用它:
dotnet list "C:\Source\MySolution\MySolution.sln" package
它适用于.NET Framework和.NET Core项目。
注意:为了使此命令生效,解决方案必须使用新的NuGet PackageReference格式来引用NuGet软件包。右键单击packages.config,然后单击“将packages.config迁移到PackageReference ...”,然后通过构建解决方案来还原软件包,就像迁移一样容易。