由于构建服务器

时间:2015-07-24 21:49:30

标签: visual-studio tfs msbuild nuget tfsbuild

本周我更新到VS2015,并在我的网站解决方案中更新了所有NuGet包。

网站在本地构建并运行正常,但是当我在我的构建服务器上进行门控检查时,在构建失败时会得到以下内容

NuGet Error

正如您所看到的那些软件包正在抱怨NuGet版本,但我不确定如何更新构建服务器上的NuGet版本。我确实拥有服务器的管理员权限,但遵循http://blog.stangroome.com/2014/02/04/update-nuget-exe-version-used-by-team-build-2013-package-restore/所描述的公会没有帮助。首先,我的文件夹实际上是C:\Program Files\Microsoft Team Foundation Server 11.0\Tools,不像指南中描述的C:\Program Files\Microsoft Team Foundation Server 12.0\Tools,但另外我在文件夹中没有NuGet.exe。

我已经对NuGet.exe进行了完整的硬盘搜索,但除了与项目源代码(.nuget \ NuGet.exe)直接相关的目录外,无法在任何目录中找到它。

我已经在服务器上打开了visual studio,并在“扩展和更新”中更新了NuGet版本,希望能解决问题,不幸的是它没有。

有关如何解决屏幕截图中显示的问题/错误的任何想法?

1 个答案:

答案 0 :(得分:1)

问题是你正在使用旧式的,已弃用的NuGet 2.7风格的包恢复"这是基于修改您的CSProj文件以包含对NuGet.targets文件的引用和NuGet.exe的副本,该副本被放入.nuget文件夹并最终受源控制。

基本上,构建服务器上的nuget.exe版本现在无关紧要 - 您的CSProj文件指向.nuget文件夹中的文件。

2013年及以后的TFS支持自动包恢复,而不使用NuGet.targets方法。您可以非常轻松地迁移它:https://docs.nuget.org/consume/package-restore/migrating-to-automatic-package-restore