我有一个包含多个项目的解决方案。大多数第三方引用都缺失了,但是有一些包。每个项目的配置文件。我如何得到NuGet安装/更新所有需要的包?这需要通过命令行为每个项目完成吗?
当前回答
不知道从什么时候开始,但在VS2019中你可以用一种更简单的方式来做:
在解决方案资源管理器中右键单击解决方案 为解决方案选择管理Nuget包 有4个选项卡,浏览,安装,更新,合并 合并显示是否有任何项目使用不同版本的包(在大多数情况下,这就是为什么我们要更新所有的包) “更新”显示任何项目中是否有可用的更新。选择全部并单击更新,任务将完成。
其他回答
现在Nuget包管理器控制台在Visual Studio 2012给你一个“恢复”按钮,一旦它发现任何包没有安装,但在Package .config。 很棒的功能!
如果您安装了Nuget 2.8,请选中复选框
Tools >> Nuget Manager >> Package Manager Settings >> Automatically check for missing packages during build
在Visual Studio。如果选中该选项,则只需重新构建项目即可恢复所有参考库。
在Visual Studio 2017中-当你使用IDE编译时-它会下载所有缺少的nuget包并保存在文件夹“packages”中。
但是在构建机器上编译是使用msbuild.exe完成的。在这种情况下,我下载了nuget.exe。
在执行msbuild.exe之前的每个构建过程中。它将执行-> nuget.exe restore NAME_OF_SLN_File(如果只有一个. sln文件,则可以忽略该参数)。
对于那些因为构建服务器遇到这个问题而到达这里的人,您可以创建一个MSBuild目标,运行exec命令来运行nuget恢复命令,如下所示(在这种情况下,nuget.exe在.nuget文件夹中,而不是在路径上),然后可以在构建解决方案之前立即在TeamCity构建步骤中运行
<Target Name="BeforeBuild">
<Exec Command="..\.nuget\nuget restore ..\MySolution.sln"/>
</Target>
打开包管理器控制台
视图->其他Windows -> Package Manager Console
重新安装当前解决方案all PROJECTS中的所有包:
Update-Package -Reinstall
重新安装当前解决方案的SPECIFIC PROJECT中的所有包(感谢unarity和ashes999):
Update-Package -ProjectName 'YourProjectNameGoesHere' -Reinstall
推荐文章
- Nuget连接尝试失败“无法为源加载服务索引”
- 重新定位解决方案从。net 4.0到4.5 -如何重新定位NuGet包?
- 如何在解决方案中找到未使用的NuGet包?
- 获取“项目”核配置无效错误
- 如何在Visual Studio中启用NuGet包恢复?
- 系统。方法未找到?
- 是否可以更改NuGet包的位置?
- 缺少NuGet包
- 让TFS忽略我的包文件夹
- 如何通过NuGet安装旧版本的包?
- 该项目引用了这台计算机上缺少的NuGet包
- 资产文件project.assets.json未找到。运行NuGet包恢复
- 如何使用命令行清除NuGet包缓存?
- 如何在本地安装NuGet包. nuupkg文件?
- 如何获得NuGet来安装/更新packages.config中的所有包?