用途:诊断并修复 .NET MAUI 开发环境问题,适用于新环境搭建、构建报错(缺少 SDK、工作负载、JDK 或 Android 组件)、SDK 或系统更新后验证环境健康。不适用于非 MAUI 的 .NET 项目、Xamarin.Forms、与环境无关的运行时崩溃、应用商店发布签名及 IDE 配置问题。
主要能力:自动检测 macOS、Windows、Linux 平台并加载对应参考文档;检查 .NET SDK 是否匹配 releases-index.json 中 support-phase 为 active 的版本;检查 MAUI 工作负载(Linux 用 maui-android,macOS/Windows 用 maui);从 NuGet 工作负载清单的 WorkloadDependencies.json 动态发现 JDK、Android SDK、Xcode 版本要求;校验 Microsoft OpenJDK、Android SDK 包、Xcode 与 Windows SDK;修复后重新校验并迭代。
使用方式:需 shell 访问与联网,安装 SDK 和工作负载可能需要管理员权限;Bash 需 curl、jq、unzip,PowerShell 使用内置命令。关键命令包括 dotnet --info、xcodebuild -version,以及构建验证:dotnet new maui -o "$TEMP_DIR/MauiTest" 后 dotnet build。可选运行验证需先询问用户,如 dotnet build -t:Run -f net10.0-android。
限制与注意:仅支持 Microsoft OpenJDK,其他发行版会导致构建失败;不要设置 JAVA_HOME,工具会自动检测;工作负载必须带 --version 安装,禁止使用 workload update 或 workload repair;Windows 上使用 sdkmanager.bat;不要硬编码版本,始终从 NuGet API 动态获取;训练数据可能过时,应以 releases-index.json 为准。