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

Android项目本地运行正常但在Azure Pipeline上运行失败解决方案

问题说明

Android项目本地可正常编译运行,但在Azure Pipeline执行构建时失败,报错信息如下:

应用插件'com.android.internal.application'失败。
Android Gradle插件运行需要Java 11版本支持,当前使用的Java版本为1.8。
当前JDK所在路径为:/Users/runner/hostedtoolcache/Java_Temurin-Hotspot_jdk/8.0.332-9/x64/Contents/Home/jre
您可尝试以下解决方法:

  • 修改IDE设置。
  • 修改JAVA_HOME环境变量。
  • 修改gradle.properties文件中的org.gradle.java.home配置。

错误信息截图

根因

本地开发环境已经配置了满足Android Gradle Plugin(AGP)要求的JDK 11,因此本地编译运行正常;Azure Pipeline构建环境默认使用JDK 8作为运行时,版本达不到AGP的最低运行要求,直接导致插件加载失败。

修复步骤

推荐优先修改流水线配置,不需要改动项目代码,不影响本地开发流程:

  • 在Pipeline的YAML构建文件中,在Gradle构建任务执行前新增JDK版本指定步骤,该步骤会自动将构建环境的JAVA_HOME切换到预装的JDK 11路径,配置参考:
# 放置在./gradlew assemble、./gradlew test等Gradle任务之前
- task: JavaToolInstaller@0
  inputs:
    versionSpec: '11'
    jdkArchitectureOption: 'x64'
    jdkSourceOption: 'PreInstalled'
  • 排查现有流水线的配置项,删除所有硬编码指向JDK 8路径的JAVA_HOME赋值、以及Gradle启动参数中指定旧版Java路径的配置,避免覆盖JDK版本切换逻辑。
  • 从报错的JDK路径判断你当前使用的是macOS构建池,Azure官方维护的macOS-latest、macOS-12、macOS-13镜像都预装了Temurin JDK 11,不需要额外执行JDK下载操作。
避坑提醒

禁止在项目根目录的gradle.properties中硬编码你本地设备的JDK路径作为org.gradle.java.home的值,这类本地私有路径在流水线环境、其他开发人员的设备上都不存在,会触发新的构建错误。JDK版本统一交给CI工具配置或者Gradle官方工具链机制管理即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.26 12:10:33