在nuget还原包Microsoft.ApplicationInsights中构建C#项目失败

时间:2015-01-12 12:06:02

标签: nuget travis-ci nuget-package-restore

我有Azure Notification Hubs Sample

因为

而失败
  

'Microsoft.ApplicationInsights 0.12.0-build17386'包需要   NuGet客户端版本'2.8.50313'或更高版本,但是当前的NuGet   版本是'2.8.1.0'。命令“eval nuget restore   src / NotificationHubSample.sln“失败。重试,2 of 3。

为什么?

1 个答案:

答案 0 :(得分:2)

这是Microsoft.ApplicationInsights NuGet包的问题。在.nuspec文件中,它具有以下内容:

<metadata minClientVersion="2.8.50313">

NuGet会根据产品版本检查NuGet包定义的minClientVersion,看看它们是否兼容。

Microsoft.ApplicationInsights NuGet包中使用的minClientVersion似乎使用的是NuGet程序集文件版本而不是NuGet产品版本。因此NuGet恢复或安装将始终失败,至少在新版本的NuGet发布之前。最新发布的NuGet产品版本为2.8.3。

请注意,我忽略了目前有CTP版本的NuGet 3.0。因此,这个NuGet包可以与NuGet 3.0一起使用,所以Microsoft.ApplicationInsights NuGet包的创建者可能只使用该版本进行了测试。

所以你的选择是:

  1. 将问题报告给Microsoft.ApplicationInsights NuGet包的所有者,并等待他们进行修复。
  2. 使用NuGet.exe 3.0使用Travis运行包还原。
  3. 使用不具有此minClientVersion限制的不同版本的Microsoft.ApplicationInsights NuGet包。