【问题标题】:New Automatic NuGet package resotore and NuGet.Config新的自动 NuGet 包还原和 NuGet.Config
【发布时间】:2015-06-19 13:39:47
【问题描述】:

我正在迁移到 docs 中所述的自动包还原的新版本

该文件说,应该完全删除 .nuget 文件夹。包括包含属性的 NuGet.Config,我们需要:

<config>
    <add key="repositoryPath" value="..\..\..\commonNugetPackages" />
  </config>

那么应该如何指定恢复包的路径呢?

更新:

更新到 2.8 解决了这个问题。我猜是这个bug。虽然它在 2.7.2 中已修复,但我有 2.7.4。

【问题讨论】:

    标签: .net visual-studio-2013 msbuild nuget nuget-package-restore


    【解决方案1】:

    我会保留 NuGet.Config 文件,因为您使用它来更改默认包目录。

    您可以从 .nuget 目录中删除 NuGet.exe 和 NuGet.targets 文件,并删除项目文件中引用 NuGet.targets 的 Import。

    【讨论】:

    • VisualStudio 在默认位置恢复包,如果我这样做的话。可能是我错过了什么?
    • 将 NuGet.config 文件移动到解决方案的根目录。 .nu​​get 文件夹被目标使用。您需要调整路径以适应位置的变化。请参阅文档了解 NuGet 如何查找配置文件 docs.nuget.org/consume/nuget-config-file
    • @Kiliman - 不确定这会有什么不同。如果 NuGet.Config 文件之前在 .nuget 目录中工作,那么为什么它现在会停止工作? NuGet 将从 .nuget 目录开始检查多个目录中的 NuGet.Config 文件,然后一直返回到根目录。可能是在添加或修改 NuGet.Config 文件时打开解决方案后,NuGet.Config 文件已更改或添加,因为需要重新加载解决方案以供 Visual Studio 获取。另一种可能是 NuGet.Config 文件的 xml 无效。
    • 这并不是文档所说的。探测路径从驱动器根目录开始到解决方案根目录或运行 nuget 的位置。 .nu​​get 文件夹没什么特别的。它只是包还原功能复制 nuget.exe 文件的位置。这就是它从那里加载配置文件的原因。
    • 您链接到的页面具有 Visual Studio 检查的目录,第一个检查的是 .nuget 目录。如果解决方案位于 c:\a\b\c 则检查的第一个目录是 c:\a\b\c\.nuget 所以 .nuget 目录是特殊的。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-11-27
    • 1970-01-01
    • 2020-03-27
    • 1970-01-01
    • 2014-04-13
    • 2013-06-13
    • 1970-01-01
    相关资源
    最近更新 更多