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

GitHub Actions构建Android项目报错:需Java 17而非Java 11

解决GitHub Actions中Android CI/CD的JDK版本不匹配问题

GitHub Actions默认JDK版本说明

GitHub官方提供的runner镜像(如ubuntu-latest、macos-latest)目前默认预装Java 11(Temurin分发版),这就是你遇到环境使用Java 11的原因。

查看当前Actions环境的JDK版本

如果需要确认当前job使用的JDK版本和路径,可在main.yml中添加以下步骤:

- name: 检查JDK版本
  run: |
    java -version
    echo $JAVA_HOME

执行后就能在Actions日志里看到具体的JDK版本和安装路径。

修改GitHub Actions的JDK配置为Java 17

使用官方的actions/setup-java action可快速切换到Java 17,在CI/CD job中添加该步骤即可。以下是完整示例片段:

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - name: 检出代码
        uses: actions/checkout@v4

      # 配置Java 17环境
      - name: 设置JDK 17
        uses: actions/setup-java@v4
        with:
          java-version: '17'
          distribution: 'temurin' # 和你本地使用的OpenJDK分发版一致
          cache: gradle # 可选:缓存Gradle依赖加速构建

      # 执行Lint检查和构建
      - name: 运行Lint检查
        run: ./gradlew lint

      - name: 构建项目
        run: ./gradlew assembleDebug

该步骤会自动下载并配置指定版本的JDK,同时设置好JAVA_HOME环境变量,确保Android Gradle插件能找到符合要求的Java 17运行环境。

额外注意事项

  • 确保项目根目录gradle.properties或Gradle配置中指定的JDK版本和Actions配置一致,比如:
    org.gradle.java.home=/usr/lib/jvm/temurin-17-jdk-amd64
    
    不过通常actions/setup-java会自动处理JAVA_HOME,无需手动指定路径。
  • 如果使用macOS runner,配置方式和Ubuntu完全一致,只需把runs-on改为macos-latest即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.11 21:43:12