You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

TeamCity构建报错MSB3644:.NETFramework v7.0引用程序集未找到

解决TeamCity中.NET 7 API构建指向旧SDK路径的问题

4>C:\Program Files\dotnet\sdk\3.1.201\Microsoft.Common.CurrentVersion.targets(1177,5): error MSB3644: The reference assemblies for .NETFramework,Version=v7.0 were not found. To resolve this, install the Developer Pack (SDK/Targeting Pack) for this framework version or retarget your application. You can download .NET Framework Developer Packs at https://aka.ms/msbuild/developerpacks

问题根源

这个错误核心是混淆了.NET Framework和.NET(Core)生态:.NET 7属于.NET(Core)系列,不存在".NET Framework 7.0"目标包,错误是因为构建过程仍按.NET Framework逻辑查找依赖,同时旧SDK路径的配置残留导致调用了3.1版本的SDK。

具体解决步骤

  • 修正项目文件的目标框架配置
    打开API项目的.csproj文件,确认<TargetFramework>节点值为net7.0(不是netframework7.0),删除所有和.NET Framework相关的遗留配置节点(比如<TargetFrameworkVersion>)。

  • 重置TeamCity构建配置的SDK指定
    在TeamCity的.NET运行器配置中,强制指定SDK版本为7.0.403;检查构建配置的所有环境变量,删除任何指向3.1.201的硬编码路径(比如MSBuildSDKsPath);执行一次构建缓存全量清理,避免旧依赖缓存干扰。

  • 调整构建服务器的SDK优先级
    在构建服务器上执行dotnet --list-sdks确认7.0.403已安装;检查系统PATH环境变量,确保C:\Program Files\dotnet\下的7.0版本路径排在3.1之前;构建步骤中直接使用.NET 7 SDK自带的MSBuild(路径为C:\Program Files\dotnet\sdk\7.0.403\MSBuild\Current\Bin\MSBuild.exe),避免调用Visual Studio Build Tools中的旧版MSBuild。

  • 跳过解决方案文件直接构建项目
    如果之前是构建.sln文件,改为直接构建API项目的.csproj文件,避免解决方案中遗留的.NET Framework配置影响构建逻辑。

内容的提问来源于stack exchange,提问作者tadhg88

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.07 05:24:53