首页 > 解决方案 > 如何让我的 Visual Studio 解决方案在 teamcity 中使用最新版本的 nuget.exe

问题描述

我有一个几年前编写的 .net 网站,在 TeamCity 中构建时会导致错误。当 teamcity 进入第二个构建步骤,站点的 csproj 文件的 MSBuild 时,我在尝试运行包还原时收到此错误:“'...' 包需要 NuGet 客户端版本 '2.12' 或更高版本,但当前的 NuGet 版本是'2.8.60318.667'" 原因是该解决方案在其目录中包含 nuget.exe 文件,该文件的版本为 2.8.60318.667。我从事的其他项目/网站中没有 nuget.exe 文件,并且似乎可以在 teamcity 中构建。

我需要(1)更新解决方案,以便我可以删除 nuget.exe 文件,或者(2)使用最新版本,这有望解决 teamcity 问题。

当我用 nuget 的最新文件替换我的 nuget.exe 文件时,我在构建时收到一条错误消息:“1>D:\Sites\testSite.nuget\NuGet.targets(100,9): error : Could not find a part of路径'D:\Sites\testSite\\packages\System.Security.AccessControl.4.4.0'。” 我认为在解决方案目录和包位置之间的配置文件中的某处有一个空格,但我不确定在哪里查找。任何人都可以帮忙吗?

我尝试从我的解决方案中删除 .nuget 文件夹,但在构建时出现错误。谁能帮我重新配置我的解决方案以在没有特定本地版本的 nuget 的情况下工作?

如果有人能以任何方式提供帮助,我将不胜感激,我已经达到了我对 Visual Studio 和 .net 理解的极限。

谢谢

山姆

标签: visual-studionugetteamcity

解决方案


您可以在 TeamCity 中安装多个版本的 Nuget 工具并将任何一个设置为默认

默认为 v4.4。

为此,请点击 TeamCity 文档链接:TeamCity Doc

现在对于特定的构建步骤,如果您想使用较低版本的 nuget,您可以选择不同版本的 nuget 安装程序/恢复,如附图所示

在此处输入图像描述


推荐阅读