Visual Studio 2022 Mac下.NET 6项目构建报错:需还原NuGet包
解决Visual Studio 2022 Mac中.NET 6项目NuGet MSBuild目标缺失的构建错误
针对你遇到的以下错误:
Error: NuGet packages need to be restored before building. NuGet MSBuild targets are missing and are needed for building. The NuGet MSBuild targets are generated when the NuGet packages are restored.
结合dotnet build可正常执行、其他.NET 6项目无异常的情况,以下是针对性解决步骤:
1. 清理项目本地缓存
- 关闭Visual Studio Mac
- 删除项目根目录下的
.vs隐藏文件夹(Mac Finder中按Cmd+Shift+.可显示隐藏文件) - 删除项目
obj文件夹内的所有内容 - 重新打开Visual Studio,加载项目后先执行「还原NuGet包」,再尝试构建
2. 强制刷新项目与NuGet的关联
- 在Visual Studio中右键项目,选择「卸载项目」
- 右键已卸载的项目,选择「重新加载项目」
- 重新加载完成后,点击顶部菜单栏「项目」->「还原NuGet包」
- 等待还原完成后执行构建
3. 重置Visual Studio的NuGet缓存
- 打开Visual Studio偏好设置(路径:
Visual Studio->Settings) - 进入
NuGet->Sources页面 - 点击「Clear All Caches」按钮清空缓存
- 重启Visual Studio,重新加载项目并还原包
4. 补充项目文件的基础SDK引用
你的csproj文件缺少对基础SDK的显式引用,可添加以下内容后重试:
<ItemGroup> <PackageReference Include="Microsoft.NET.Sdk" Version="6.0.0" /> </ItemGroup>
添加后保存文件,在终端执行dotnet restore,再回到Visual Studio执行构建
5. 修复Visual Studio安装组件
若以上方法均无效,可能是Visual Studio的NuGet相关组件损坏:
- 打开Mac上的「Visual Studio Installer」
- 选择当前Visual Studio实例,点击「Modify」
- 确认
.NET 6 SDK和NuGet Package Manager组件已勾选,点击「Modify」执行修复
内容的提问来源于stack exchange,提问作者Vivek Nuna
相关产品推荐
相关产品推荐

