首页 文章

使用安装为VS Extension的NuGet重新安装NuGet软件包

提问于
浏览
32

我希望能够在packages.config中安装所有NuGet包,按照The NuGet docs . NuGet作为VS扩展安装,我似乎无法找到nuget.exe . 是否可以运行:

nuget i packages.config -o Packages

没有在每个项目的基础上维护nuget.exe的单独副本?

5 回答

  • 70

    重新安装当前解决方案的所有项目中的所有包:

    Update-Package -Reinstall
    

    您可以找到有关重新安装nuget包的更多信息 here

  • 16

    作为对这篇文章的更新,NuGet 1.6增加了对工作流的支持,以便在构建时恢复包(如果缺失) . 右键单击解决方案,单击“启用程序包还原模式”将其设置为打开状态 .

    更多详情:http://docs.nuget.org/docs/workflows/using-nuget-without-committing-packages

  • 3

    Warning - 使用

    Update-Package -Reinstall
    

    要么

    Update-Package -Reinstall -IgnoreDependencies
    

    可能会删除所有的包和package.config文件!

    始终确保先执行备份 .

    Scenario

    • 具有多个项目的解决方案

    • 每个包含自己的Nuget条目,一些具有相同的包(例如,SharpRepository,Entity Framework)

    • 现在复制文件夹,其他地方没有"distribution"的packages文件夹

    • 假设包文件夹未包含在发行版中

    • 现在尝试命令 Update-Package -Reinstall 或者如果你有一些alpha包和/或确定你的依赖是好的,试试 Update-Package -Reinstall -IgnoreDependencies

    Result
    因为packages文件夹没有说't exist, the entries for your packages methodically go away, too. This can surprise some people - so be careful, is all I' .

  • 20

    This blog entry找到了解决方案 . 我需要安装NuGet.CommandLine,这使得nuget.exe成为可能 . VS命令行中全局可用 . 然后,我可以将其设置为预构建事件,以确保下载依赖项 .

  • 1

    一个更容易的选项,您可以在开发期间继续在Visual Studio中启用,以减轻与NuGet包安装相关的痛苦 .

    保持 NuGet Package Manager > General 下的两个下面提到的选项处于选中状态 -

    • 允许NuGet下载丢失的包

    • 在Visual Studio中构建期间自动检查缺少的包

    看看下面的截图:

    enter image description here

相关问题