You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure Pipelines遇NETSDK1139错误:未识别Android目标平台

解决.NET MAUI Azure DevOps构建中NETSDK1139错误的方案

问题核心

你遇到的Error NETSDK1139是NuGet还原阶段无法识别Android目标平台导致的——尽管已安装MAUI相关workload,但NuGetCommand@2任务可能未正确关联dotnet的workload环境,或代理缺少Android SDK基础组件。

具体修复步骤

  1. 替换NuGet还原任务为dotnet原生命令
    既然dotnet restore此前执行正常,直接改用DotNetCoreCLI@2任务完成还原,规避NuGet任务与dotnet workload的兼容性问题:

    - task: DotNetCoreCLI@2
      displayName: 'Dotnet Restore'
      inputs:
        command: 'restore'
        projects: '**/*.csproj'
        feedsToUse: 'select'
    
  2. 补装Android SDK核心组件
    仅安装maui-android workload可能不够,Windows代理可能缺少Android构建必需的工具。添加PowerShell任务执行以下安装命令:

    & "$env:ANDROID_SDK_ROOT\cmdline-tools\latest\bin\sdkmanager.bat" "build-tools;33.0.2" "platforms;android-33" "cmdline-tools;latest"
    

    注:请将版本号替换为你项目中指定的Android API级别。

  3. 验证workload与dotnet版本匹配
    Azure DevOps代理可能存在多版本dotnet,执行以下命令确认当前使用的版本和workload安装状态:

    dotnet --version
    dotnet workload list --verbosity detailed
    

    如果版本不匹配,添加UseDotNet@2任务切换到项目依赖的.NET 7版本:

    - task: UseDotNet@2
      inputs:
        packageType: 'sdk'
        version: '7.x'
    
  4. 重新安装完整的Android相关workload
    带上NuGet源参数重新执行安装,避免代理内部源的缓存或依赖缺失问题:

    dotnet workload install maui-android --source https://api.nuget.org/v3/index.json
    dotnet workload install android --source https://api.nuget.org/v3/index.json
    

额外排查点

  • 切换Azure DevOps代理镜像至windows-latest,新版本镜像默认包含更多MAUI预安装依赖。
  • 检查csproj文件是否指定了正确的Android SDK版本:
    <AndroidSdkVersion>33</AndroidSdkVersion>
    <AndroidTargetSdkVersion>33</AndroidTargetSdkVersion>
    

内容的提问来源于stack exchange,提问作者Rafael

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.13 21:55:05