【问题标题】:Error when trying to enable NuGet Package Restore in new Solution尝试在新解决方案中启用 NuGet 包还原时出错
【发布时间】:2013-09-13 08:29:08
【问题描述】:

在我刚刚创建的新解决方案中尝试启用包还原时出现错误。 VS2012中的错误是:

NuGet 包管理器

配置解决方案以还原 NuGet 时出错 构建包

无法从路径“NuGet.Build.2.7.0.npkg”读取包。

我尝试在 VS2010 中打开解决方案以解决该问题,但在尝试启用包还原时也遇到错误,但消息不同:

NuGet 包管理器

配置解决方案以还原 NuGet 时出错 构建包

存档文件的大小不能为 0。

我尝试创建一个新的解决方案,但得到了相同的结果。

然后我尝试对 VS2012 更新 3 进行修复并重新启动。问题依旧。

我还扫描了文件夹、项目和解决方案文件中的任何 NuGet 或 .nupkg,但那里什么都没有。

那么我怎样才能让这个功能再次发挥作用呢?我最后一次使用它是大约一周前,我不记得具体从那以后我改变了什么。我卸载了大约一周前安装的 VS Power Tools 软件包,但这也没有解决问题。

更新

我按照“删除”说明here 并使用我已有的项目作为模板来手动启用包恢复。但是,我仍在寻找更好的解决方案,因为这是我经常使用的功能。

我也尝试从 Visual Studio 卸载并重新安装 NuGet,但仍然遇到同样的问题。如果内存正常,则最近有一次 NuGet 更新(是否有 VS 扩展安装日志以便我检查?)。

【问题讨论】:

  • 您可以通过运行 devenv.exe /log 来启用登录 VS,然后查找 customactivity.xml
  • 是的,但这对一周前发生的事情没有多大好处...我正在寻找类似于 Windows Update 具有更新安装日志的方式。
  • 如果你能复制我发现这个:stackoverflow.com/questions/10356981/…
  • 谢谢,但又不是我需要的。我没有对 NuGet 包的安装进行故障排除,而是试图查找我对 Visual Studio 所做的可能干扰此功能的 VSIX 包更新的历史列表。
  • 抱歉没明白你想要什么。

标签: visual-studio visual-studio-2010 visual-studio-2012 nuget nuget-package-restore


【解决方案1】:

我怀疑 NuGet.Build.2.7.0.npkg 文件由于下载失败而为零字节。 NuGet.Build.2.7.0.npkg 是 Visual Studio 下载的 NuGet 包,以便为您的解决方案启用包还原。

查看您的缓存并查看此文件是否为零字节。如果是这样,请删除文件或清除缓存并尝试再次启用包还原。缓存位于您的个人资料下的类似目录中:

C:\Users\YourUsername\AppData\Local\NuGet\Cache

您还可以通过打开包管理器设置、选择常规并单击浏览按钮从 Visual Studio 中浏览到缓存。

【讨论】:

  • 您的解决方案效果很好。如果错误消息提供了它正在查找的文件的完整路径,那么它会更有帮助,因为我不知道在哪里查找。
  • 在我的机器中路径是“C:\Users\YourUsername\AppData\Roaming\NuGet”
  • 缓存不应在您的漫游配置文件下。 NuGet.Config 文件将位于您的漫游配置文件下。答案中提到的缓存文件夹也特定于 NuGet v2。
【解决方案2】:

所有之前的答案,加上这个:如果这是之前启用了包还原的解决方案,你能运行 .\nuget\nuget.exe update -self 吗?

【讨论】:

  • 不,这个问题发生在我创建的每个新解决方案上。我之前已经尝试过更新 NuGet。
【解决方案3】:

检查您的 nuget 包管理器是否已更新。 从工具-> 扩展和更新-> 更新中检查这个

更新你的 Nuget 包管理器,然后它就可以工作了

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-02-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-01
    • 2012-05-19
    相关资源
    最近更新 更多