如何在命令行中将NuGet包安装到Visual Studio项目中

25
我下载了nuget.exe并尝试安装。我想要将其应用于Visual Studio项目,以便在Visual Studio之外的命令行上添加引用。它只是下载带有版本号的软件包。 MyOutputDirectory是输出目录,其中包含一个Visual Studio解决方案。

我已经下载了nuget.exe并尝试进行安装。我希望能够将其用于Visual Studio项目,这样可以在Visual Studio之外的命令行上添加引用。它只会下载带有版本号的软件包。MyOutputDirectory是放置Visual Studio解决方案的输出目录。

nuget install nhibernate -o MyOutputDirectory
2个回答

22

嗯,并不是真正的命令行,但你可以通过Visual Studio中的Package Manager控制台(通过工具 > 库包管理器 > 包管理器控制台访问)来完成这个操作。当向多个项目安装软件包时,与“管理解决方案的NuGet包”对话框相比,包管理器控制台仍然更好,因为你可以粘贴项目名称列表,而不需要在对话框中逐个选择它们。

使用此类命令:

Get-Project MyProject1,MyProject2,MyProject3 | Install-Package MyPackage

来源:这个答案

如果你想尝试在Visual Studio之外使用此命令,请阅读以下问题:


22
NuGet命令行实际上不会安装任何软件包。安装命令实际上是执行还原操作。
这意味着nuget.exe的安装命令只会下载并提取软件包到输出位置。它不会修改项目文件,因此不添加引用,不注入内容文件,不应用任何转换,也不导入任何MSBuild文件,并且它也不会运行任何PowerShell脚本。
我确信NuGet团队正在跟踪与您类似的请求,但请随时在那里记录问题:http://nuget.codeplex.com
回答您的问题:目前(nuget.exe v2.8),NuGet命令行不支持您的情况。

好的,没问题。我正在构建一个支持NuGet的代码生成器。看起来在nuget.exe下载文件后,我将自己完成所有这些逻辑。感谢您的帮助。 - Greg Finzer
这在后续版本(v2.8)中有改变吗? - John Simons
@JohnSimons 没有,还没有。我更新了我的答案以反映这一点。 - Xavier Decoster

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接