【发布时间】:2013-09-13 08:00:06
【问题描述】:
我刚刚升级到 NuGet 2.7 并关注了Migrate to automatic package restore walkthrough。之后,我注意到 NuGet 无法正确识别已安装的包:
构建未下载软件包,因此构建失败。
在项目中选择“管理 NuGet 包”时,该包未列在“已安装”下。
浏览在线软件包时,已安装的软件包上有一个绿色勾号,因此我无法安装它们,即使“已安装”选项卡没有列出它们。
我得出的结论是,NuGet 2.7 仅将这些包识别为安装了一半,因此我手动从 packages.config 中删除了一行,然后重新安装了该包。这显示了 csproj 文件中的一个有趣的变化(差异视图):
- <Reference Include="xunit, Version=1.9.2.1705, Culture=neutral, PublicKeyToken=8d05b1bb7a6fdb6c, processorArchitecture=MSIL">
- <SpecificVersion>False</SpecificVersion>
+ <Reference Include="xunit">
<HintPath>..\packages\xunit.1.9.2\lib\net20\xunit.dll</HintPath>
</Reference>
前两行被第三行替换。之后,该软件包再次正确安装。
那么我怎样才能在不为每个项目的每个包执行上述过程的情况下再次正确安装我的包?
【问题讨论】:
标签: visual-studio-2012 nuget nuget-package-restore