TeamCity Build - MSB3644:找不到 .NETFramework 的参考程序集,版本 = v7.0

问题描述 投票:0回答:1

我有一个 TeamCity 构建配置,已从“Microsoft Visual Studio 解决方案 (.sln) 运行程序”更新为使用“.Net Runner”msbuild 命令来构建我的 API 解决方案。 以前,它所基于的构建配置模板用于构建 .Net Framework 4.8 左右的 Web api,但现在我在新存储库中编写了一个新的 .Net 7 api,该模板已正确链接到此构建配置。 当我进入构建步骤来构建解决方案时,我收到以下错误:

4>C:\ Program Files \ dotnet \ sdk .1.201 \ Microsoft.Common.CurrentVersion.targets(1177,5):错误MSB3644:找不到.NETFramework,Version = v7.0的参考程序集。要解决此问题,请安装此框架版本的开发人员包(SDK/目标包)或重新定位您的应用程序。您可以在 https://aka.ms/msbuild/developerpacks

下载 .NET Framework 开发人员包

此错误表明我应该安装“开发人员包(SDK/目标包)”,但我在构建服务器上安装了以下所有内容。

build server .net related installs

也许我错了,但我还没有找到任何 .Net 7 的“目标包”,这些似乎是用 .Net Framework 完成的,并且 .Net 7 的 SDK 已经安装,如图所示。

我还安装了“Visual Studio Build Tools 2022”以添加到之前安装的“Visual Studio Build Tools 2017/2019”中。

错误消息中对“sdk .1.201”的引用是直到最近安装的最新版本的.Net,到目前为止,没有其他构建/应用程序引用了比该版本更高的版本。我不确定这条路径来自哪里,因为我已经“覆盖”了所有引用此“3.1.201”值的“构建配置参数”以使用“7.0.403”,但路径保持不变。

任何帮助或建议/指导将不胜感激,提前致谢。

我用谷歌搜索了错误消息,大多数答案似乎都引用了.Net Framework 版本。 我尝试覆盖引用旧版 .Net Core 版本 3.1.201 的路径。 我已经按照我在网上发现的类似问题之一的建议安装了最新的构建工具。

c# .net msbuild teamcity .net-7.0
1个回答
0
投票

感谢大家的回复和记录,我的解决方案中没有 global.json 文件,而且我找不到任何其他 global.json 文件,因此我在解决方案的根目录中创建了自己的文件,这解决了问题。所以现在使用正确的版本构建,再次感谢。

© www.soinside.com 2019 - 2024. All rights reserved.