设定:
我在安装了VS 2015 Update 2的代理上运行了构建(新)定义。我有一个项目,里面有几个NuGet包。直到今天下午,构建工作正如预期的那样。我在完成构建之后对其进行了一些更改,然后我开始收到此错误:
2016-04-28T16:35:03.3605826Z将workingFolder设置为默认值:E:\ agent \ tasks \ NuGetInstaller \ 0.1.17
2016-04-28T16:35:03.4073604Z执行powershell脚本:E:\ agent \ tasks \ NuGetInstaller \ 0.1.17 \ NuGetInstaller.ps1
2016-04-28T16:35:05.0948829Z保存到E:\ agent_work \ 1 \ NuGet \ newNuGet.config
2016-04-28T16:35:05.1418632ZE:\ agent \ agent \ worker \ tools \ NuGet.exe restore" E:\ agent_work \ 1 \ s \ Dev \ eCommerce \ Consol.eCommerce.sln&# 34; -NonInteractive -configfile" E:\ agent_work \ 1 \ NuGet \ newNuGet.config"
2016-04-28T16:35:05.8761260Z MSBuild自动检测:使用msbuild版本' 14.0'来自' C:\ Program Files(x86)\ MSBuild \ 14.0 \ bin'。
2016-04-28T16:35:06.6105618Z恢复NuGet包System.Reflection.Metadata.1.2.0。
2016-04-28T16:35:08.9542747Z警告:无法找到版本' 1.2.0' of package' System.Reflection.Metadata'。
2016-04-28T16:35:09.0012648Z ## [错误]无法找到版本' 1.2.0' of package' System.Reflection.Metadata'。
2016-04-28T16:35:09.0323998Z ## [错误]工具NuGet.exe返回意外退出代码1
现在这就是我迷路的地方,我检查了NuGet.org,包裹和版本存在。我甚至在本地系统上删除了项目中的所有软件包,然后进行了NuGet Package Restore,它运行得很好。我从项目中删除了NuGet包并重新添加它并且工作正常。
有没有人看过这个并知道如何修复它?
2016年4月29日更新: 正如我在下面的评论中所说,我已将其整理出来。 我原来的nuget.config文件是这个
<configuration>
<solution>
<add key="disableSourceControlIntegration" value="true" />
</solution>
<packageSources>
<add key="NuGet official package source v2" value="https://nuget.org/api/v2/" />
<add key="FelineSoft NuGet" value="http://prod-tfs15:81/nuget" />
</packageSources>
<activePackageSource>
<add key="All" value="(Aggregate source)" />
</activePackageSource>
</configuration>
我把它改成了它并且它起作用了
<configuration>
<solution>
<add key="disableSourceControlIntegration" value="true" />
</solution>
<packageSources>
<add key="NuGet official package source v3" value="https://api.nuget.org/v3/index.json" />
<add key="NuGet official package source v2" value="https://nuget.org/api/v2/" />
<add key="FelineSoft NuGet" value="http://prod-tfs15:81/nuget" />
</packageSources>
<activePackageSource>
<add key="All" value="(Aggregate source)" />
</activePackageSource>
</configuration>
新问题是,为什么API端点对此类评论包很重要?
答案 0 :(得分:0)
根据您的错误信息,这可能是由于构建代理上的工作目录已更改。因为您已经更改了构建位置的位置。这可能会导致错误。
您可以删除构建代理上的工作目录,并让它自动重新创建。然后再试一次。
更新
System.Reflection.Metadata 1.2.0仅需要NuGet 2.8.6或更高版本。对于NuGet feed v3(VS 2015 / NuGet v3.x):https://api.nuget.org/v3/index.json和NuGet feed v2(VS 2013及更早版本/ NuGet 2.x):https://www.nuget.org/api/v2。由于您使用的是VS2015,因此可能会添加V3网址。
答案 1 :(得分:0)
这取决于Visual Studio正在使用的nuget客户端版本,然后nuget客户端期望使用特定版本的api消费,看起来更像是nuget客户端版本然后版本。