首页 文章

如何在Visual Studio 2015中启用nugets包还原?

提问于
浏览
50

如何在Visual Studio 2015中启用nuget包还原功能?

我的上下文菜单中缺少该功能(是的 - 我已经仔细检查过我在解决方案而不是项目上尝试它)

我唯一的项目是.NET 4.5控制台应用程序 - 还没有.nuget文件夹 . 安装了一个实际的nuget包 .

7 回答

  • 0

    enter image description here

    对VS2015来说非常简单,我所要做的就是右键单击我的项目解决方案并点击恢复nuget .

  • 2

    我和你有同样的问题,我解决它的方法是从我的解决方案中删除 packages 文件夹,并从解决方案中的每个项目中删除 binobj 文件夹并给它重建 .

  • 0

    事实证明,真正的解决方案是migrate to Automatic Package Restore . 在2013年工作一段时间后,我们在升级到VS 2015后遇到了NuGet的问题 . 结果表明,NuGet完全采用了新方法 .

    虽然单调乏味,但解决方案很简单 . 显然,NuGet.targets文件向VS发出信号,使用旧的NuGet处理方式,而且缺少意味着您现在正在使用“自动包恢复” . 您可以按照以下步骤迁移到自动包还原:

    • 删除.nuget / NuGet.exe

    • 删除.nuget / NuGet.targets

    • 对于每个项目:

    • 卸载项目

    • 右键单击 - >编辑项目

    • 删除对NuGet.targets文件的所有引用,即:

    <RestorePackages> true </ RestorePackages>
    ...
    <Import Project =“$(SolutionDir)\ . nuget \ nuget.targets”/>
    ...
    <Target Name =“EnsureNuGetPackageBuildImports”BeforeTargets =“PrepareForBuild”>
    <的PropertyGroup>
    <ErrorText>此项目引用此计算机上缺少的NuGet包 . 启用NuGet Package Restore以下载它们 . 有关详细信息,请参阅http://go.microsoft.com/fwlink/?LinkID=322105 . 丢失的文件是{0} . </ ErrorText>
    </的PropertyGroup>
    <Error Condition =“!Exists('$(SolutionDir)\ . nuget \ NuGet.targets')”Text =“$([System.String] :: Format('$(ErrorText)','$(SolutionDir)\ .nuget \ NuGet.targets'))“/>
    </目标>

    如果您感觉很大胆,还有一个PowerShell脚本可以为您执行迁移 . 你可以在github找到它 .

  • 55

    对于其他人,此选项在Visual Studio选项的Nuget设置部分中可用

    enter image description here

  • 5

    我有恢复包的问题,错误401未经授权 . 我通过取消选中可用的本地包源找到了解决方案 . Debug> Options> NuGet Package Manager> Package Sources

    只允许nuget.org包

  • 37

    我的Visual Studio 2015 Professional使用默认设置进行安装 . 默认情况下已经选中了“允许NuGet下载丢失的软件包”和“在Visual Studio中构建期间自动检查缺少的软件包”的选项,但我仍然无法下载软件包 . 我收到一个错误,无法找到包版本 .

    我需要单击 Tools > Options > NuGet Package Manager > Package Sources 下的复选框以使NuGet Package Restore按预期工作 .

    enter image description here

  • 2

    在管理员模式下启动Visual Studio 2015后,我在访问packages文件夹时遇到问题,因此我删除了它以执行还原 .

    但是在重建解决方案时没有执行还原,并且在解决方案级别或Nuget窗口中找不到还原包 .

    但是,如果右键单击解决方案中项目的 References 节点,则会有一个 Restore Packages 选项 . 在所有项目上运行此操作为我修复了它 .

相关问题