2017-10-06 113 views
0

我们在本地托管TFS 2017 Update 2,并使用本地生成代理。最新版本的NuGet.exe目前是4.3.0,但我们的构建代理始终默认使用v4.0.0。我如何让我们的构建代理使用最新版本的NuGet.exe?使用旧版本的NuGet.exe的TFS本地生成代理

我们需要更新,因为NuGet restore在使用v4.0.0时失败,但与v4.3.0一起工作,因为我们正在处理新的.Net Standard 2.0软件包。在我们的构建服务器上,我能够执行NuGet.exe update -self以将在C:\Builds\_work\_tool\NuGet\4.0.0\x64\nuget.exe上找到的NuGet.exe从4.0.0更新到4.3.0,但该C:\Builds\_work\_tool目录经常被删除并重新创建,所以这不是一个持久的解决方法。

如何让我们的构建代理始终使用最新版本的NuGet.exe或至少v4.3.0?

回答

1

我知道你不应该用链接回答,但是这篇文章提供了你需要的所有细节,确认这个任务确实仍然使用4.0.0,VSTS和TFS 2018怎么样,不必担心这个问题(有一个新的NuGet安装程序任务)以及如何通过PowerShell脚本为VS 2017.2(及更早版本)重新创建这类任务,Using the latest NuGet in your build

+0

感谢Greg。我曾考虑将v4.3.0 NuGet.exe添加到我们的存储库并以这种方式进行,但在构建时动态下载它似乎更清洁一点,不会让回购混乱,因为这应该是临时修复,直到TFS 2018/VSTS。如果构建由于网络问题而开始失败,我们可能会将NuGet.exe移动到构建服务器上的硬编码位置,这样我们就不必总是下载它,并且不会使存储库混乱。谢谢! – deadlydog