.NET Maui Mac构建报错NETSDK1139:未识别android目标平台标识符
解决.NET Maui在Mac上的NuGet还原及平台识别问题
排查步骤及解决方案
检查项目目标框架配置
打开项目的.csproj文件,确认<TargetFrameworks>节点中的Android目标格式完整,需绑定具体.NET版本和Android API级别,例如:<TargetFrameworks>net8.0-ios;net8.0-android34.0;net8.0-maccatalyst</TargetFrameworks>避免仅写
android这类不完整的平台标识符。清理项目缓存并重新还原
- 删除项目根目录下的
bin、obj文件夹,以及解决方案根目录的.vs隐藏文件夹 - 重启Visual Studio for Mac
- 打开终端进入项目目录,依次执行命令:
dotnet clean dotnet restore
- 删除项目根目录下的
校验.NET SDK与工作负载一致性
- 终端执行
dotnet --list-sdks,确认安装的SDK版本与项目<TargetFramework>指定的版本完全匹配 - 执行
dotnet workload list,检查对应版本的Maui Android工作负载是否已安装。若缺失,执行指定版本的安装命令:
(将dotnet workload install maui-android --sdk-version 8.0.1008.0.100替换为你项目使用的SDK版本)
- 终端执行
检查NuGet源配置
- 在Visual Studio for Mac的NuGet包管理器中,确保已启用官方NuGet源
https://api.nuget.org/v3/index.json,移除其他无效或异常的源 - 终端执行
dotnet nuget list source确认源状态,必要时添加官方源:dotnet nuget add source https://api.nuget.org/v3/index.json --name nuget.org
- 在Visual Studio for Mac的NuGet包管理器中,确保已启用官方NuGet源
确认项目SDK类型
检查.csproj文件开头的SDK声明是否正确,必须为:<Project Sdk="Microsoft.NET.Sdk.Maui">对比排查新项目
创建一个空白的.NET Maui项目,尝试还原并构建。若新项目正常,说明原项目存在配置异常,可逐步迁移代码到新项目中定位问题点。
内容的提问来源于stack exchange,提问作者Adam
相关产品推荐
相关产品推荐

