6

我在我的 VS2010 中右键单击我的解决方案文件并单击Enable NuGet Package Restore,我收到一条错误消息说Unable to read package from path 'NuGet.CommandLine.2.7.1.nupkg'.

我用谷歌搜索并没有看到任何关闭的东西。

有什么线索吗?

4

1 回答 1

12

该错误消息通常是因为 NuGet 无法打开 NuGet 包,因为它无法下载它。我会检查您的 NuGet 缓存以查看 NuGet.CommandLine.2.7.1.nupkg 文件是否为零字节或小于预期。如果是这样,请删除文件或清除缓存,然后重试。有时下载可能会失败,并且NuGet 会在缓存中留下一个空文件,这会导致安装该 NuGet 包时出现问题。如果 NuGet 包没有完全下载,您也可以看到错误,因此包不会是零字节,但不会完全下载,NuGet 无法打开它。所以值得从缓存中删除 NuGet 包并重试。

NuGet 缓存位于以下目录中:

%localappdata%\NuGet\Cache

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

请注意,对于较新版本的 NuGet 2.8,此问题应得到修复。更高版本中的 NuGet 将下载到临时文件位置并在下载完成后重命名,因此部分下载的 NuGet 包不会留在缓存中。

于 2013-10-26T16:13:13.573 回答