Windows环境下Dotnet Workload安装失败:android/maui/ios不被支持
问题根源
你遇到的核心问题是当前使用的是x86版本的.NET SDK——Android、iOS这类跨平台Workload仅支持x64架构的.NET SDK。从dotnet --info输出能看到,默认SDK的RID是win-x86,虽然系统里装了x64的.NET,但没被优先调用,所以才会提示“android不支持当前平台”,连dotnet workload search都只能显示少数几个Workload。
解决步骤
1. 切换到x64版.NET SDK
打开命令提示符或PowerShell,输入以下命令强制切换到x64架构的.NET:
set DOTNET_ROOT=C:\Program Files\dotnet set PATH=%DOTNET_ROOT%;%PATH%
执行完后运行dotnet --info,确认RID变为win-x64、Base Path指向C:\Program Files\dotnet\sdk\8.0.303\即表示切换成功。
2. 重新安装Workload
切换到x64 SDK后,以管理员身份执行原安装命令:
dotnet workload install --from-rollback-file "C:\TEMP\uno-check-be5e2d2d\workload.json" android ios maccatalyst macos maui --source "https://api.nuget.org/v3/index.json"
如果仍有问题,可尝试直接安装完整MAUI Workload:
dotnet workload install maui
3. 修复Workload清单缓存
若切换架构后dotnet workload search结果依旧异常,执行以下命令清理并重置缓存:
dotnet workload uninstall --all dotnet workload update --force dotnet workload search
该操作会重新拉取完整的Workload清单,之后应该能看到Android、iOS等跨平台选项。
4. 检查Visual Studio组件
确认Visual Studio已安装以下组件:
- .NET Multi-platform App UI开发
- Mobile development with .NET(移动端开发专属支持)
- 注意组件需为x64版本,Visual Studio默认安装x64,若之前选了x86需重新调整安装选项。
重要提示
Windows平台上,Android、iOS、MacCatalyst等跨平台Workload仅兼容x64版.NET SDK,x86版本无法安装这类组件,这是架构层面的硬限制。当系统同时存在x86和x64.NET时,32位命令提示符会优先调用x86版本,因此必须手动指定环境变量完成切换。
内容的提问来源于stack exchange,提问作者user3279361
相关产品推荐
相关产品推荐

