C# 如何列出所有已安装的NuGet软件包?
如何列出所有本地安装的NuGet软件包 是否有一个NuGet等效于C# 如何列出所有已安装的NuGet软件包?,c#,asp.net,visual-studio,nuget,C#,Asp.net,Visual Studio,Nuget,如何列出所有本地安装的NuGet软件包 是否有一个NuGet等效于RPM-qa?其中有巧克力列表-localonly,但就我而言,我找不到与该命令等效的NuGet命令。在NuGet软件包管理器控制台中,输入以下命令: Get-Package 这将打印出已安装软件包的列表,或者如果没有,则在控制台中写入以下行: PM> Get-Package No packages installed. 有关详细信息,请查看Visual Studio中的。 转到有问题的项目或解决方案 右键单击,管理N
RPM-qa
?其中有巧克力列表-localonly
,但就我而言,我找不到与该命令等效的NuGet命令。在NuGet软件包管理器控制台中,输入以下命令:
Get-Package
这将打印出已安装软件包的列表,或者如果没有,则在控制台中写入以下行:
PM> Get-Package
No packages installed.
有关详细信息,请查看Visual Studio中的。
- 转到有问题的项目或解决方案
- 右键单击,管理NuGet软件包
- 在左侧,您将看到“已安装的软件包”
- 单击此按钮,您将看到列表
Get-Package
它将列出这些包及其引用位置。如果您多次引用相同的包,它会一次又一次地列出它们。如果您想获得解决方案中安装的所有软件包的完整列表,可以这样做
Get-Package | select -Unique Id, Versions
如何列出所有已安装的NuGet软件包
假设
右键单击项目节点,然后单击管理NuGet软件包
请参阅已安装软件包列表
除了所有给出的答案外,Visual Studio项目根文件夹中还以XML格式列出了所有已安装的软件包:packages.config: 回答:
其中C:/packages是指向本地存储库的路径。回答“有没有办法使用nuget.exe执行此操作?” 根据上面的答案。我使用了
\
而不是/
,这更适合nuget在家的Windows环境。我对答案的编辑被拒绝了,所以我发布了自己的答案
numget列表-源代码c:\code\packages
其中c:\code
是指向本地代码存储库的路径。
packages
文件夹与解决方案文件(*.sln)处于同一级别。如果安装了.NET Core运行时,可以使用.NET Core CLI工具中的命令获取给定解决方案或项目的已安装包。在Windows命令行中使用它:
dotnet list "C:\Source\MySolution\MySolution.sln" package
它同时适用于.NET框架和.NET核心项目
注意:要使此命令起作用,解决方案必须使用引用NuGet包。迁移非常简单,只需右键单击packages.config,然后单击“Migrate packages.config to PackageReference…”,然后通过构建解决方案还原包。有没有办法使用nuget.exe执行此操作?在运行命令
Get Package
后,当包的字符数超过32个时。是否可以增加“包名”列,以便输出显示全名而不进行修剪?Get package | Format Table-AutoSize
可以做到这一点,在我看来,这是最好的回答。随着Visual Studio 2017 15.7版中引入的新项目文件结构,NuGet包可以(或将用于新项目)被移动到项目文件,您将找不到packages.config
文件。看,这一次只给你一个项目。我的解决方案中有大约250个项目,因此如果您不想一次只看一个解决方案,那么其他答案会更好。它适用于.NET Core,但不适用于.NET 4.5解决方案:至少在我的计算机上是这样。@ChristianCasett我刚刚测试了它,它在.NET Framework 4.5上运行良好,我唯一要做的是,然后通过构建解决方案还原nuget软件包。引用/使用和安装之间没有区别吗?NuGet软件包不是独立于解决方案/项目而在全球范围内安装的吗?@PeterMortensen我在这里假设OP是为项目/解决方案安装的。在全局范围内,下载的包被缓存,我认为术语“已安装”在该上下文中没有意义。但这列出了源(包来自何处),而不是已安装的包(?)。请注意,我必须使用一个绝对路径才能工作。要排序:`Get Package | select-Unique Id,Versions | sort Id
nuget list -Source C:/packages
dotnet list "C:\Source\MySolution\MySolution.sln" package