Mac M1 Pro上Rider构建.NET6项目报MSB3971错误求助
解决Rider中.NET 6项目MSB3971构建失败问题
针对你遇到的Rider构建报错MSB3971(找不到.NETFramework,Version=v6.0引用程序集),可以尝试以下步骤排查解决:
检查Rider的.NET SDK配置
打开Rider的Preferences(快捷键Cmd+,),进入Build, Execution, Deployment>Toolset and Build:- 确认
MSBuild version选择的是与.NET 6匹配的版本(优先选择.NET Core SDK下的MSBuild,而非Mono MSBuild) - 核对
Use MSBuild from的路径,确保指向Mac上.NET 6 SDK的安装目录(通常为/usr/local/share/dotnet/sdk/6.x.x/)
- 确认
清理项目并重新加载
- 右键项目选择
Clean,完成后再选Reload Project - 删除项目根目录下的
.idea文件夹、bin和obj目录,重启Rider后重新打开项目,强制Rider重新解析依赖
- 右键项目选择
修正csproj中的框架引用问题
- 找到那处NETFramework相关引用,检查是否是错误引入了针对.NET Framework的NuGet包或程序集
- 若为不必要的引用,直接删除;若必须保留,替换为支持.NET 6的包版本
- 确保csproj文件中
<TargetFramework>仅设置为net6.0,无其他冲突的框架定义(如同时存在.NETFramework相关条目)
- 找到那处NETFramework相关引用,检查是否是错误引入了针对.NET Framework的NuGet包或程序集
对齐终端与Rider的.NET SDK版本
- 在终端执行
dotnet --version,确认当前使用的是.NET 6 SDK - 回到Rider的
Toolset and Build设置,确保Rider使用的SDK版本与终端完全一致,避免加载旧版SDK导致的兼容问题
- 在终端执行
重置Rider缓存
打开File菜单选择Invalidate Caches...,勾选缓存选项后重启Rider,清除可能存在的缓存异常
内容的提问来源于stack exchange,提问作者Barbarian772
相关产品推荐
相关产品推荐

