无法通过终端构建Android项目App Bundle:依赖兼容错误
解决Gradle 8.7 + JDK11构建Crashlytics插件兼容问题
问题分析
执行./gradlew bundleRelease时触发依赖解析失败,核心原因是**com.google.firebase:firebase-crashlytics-gradle:3.0.2插件要求Java 17运行环境**,但当前项目使用的是JDK11,导致插件提供的变体(仅支持Java17)与项目环境(要求Java11)不匹配,最终无法完成依赖解析。
解决方案
方案1:升级JDK至17
- 安装OpenJDK 17或Oracle JDK 17
- 配置项目使用JDK17:
- 在项目根目录的
gradle.properties中添加路径配置:org.gradle.java.home=/你的JDK17安装路径 - 或通过IDE设置(如Android Studio:
File → Project Structure → SDK Location → JDK Location)指定JDK17路径
- 在项目根目录的
方案2:降级Crashlytics插件到兼容JDK11的版本
选用支持JDK11的最新插件版本(如2.9.9,适配Gradle8.x且兼容JDK11),修改根项目构建文件:
Groovy DSL(build.gradle):
// 方式1:buildscript依赖块 buildscript { dependencies { classpath 'com.google.firebase:firebase-crashlytics-gradle:2.9.9' } } // 方式2:插件声明块 plugins { id 'com.google.firebase.crashlytics' version '2.9.9' apply false }
Kotlin DSL(build.gradle.kts):
// 方式1:buildscript依赖块 buildscript { dependencies { classpath("com.google.firebase:firebase-crashlytics-gradle:2.9.9") } } // 方式2:插件声明块 plugins { id("com.google.firebase.crashlytics") version "2.9.9" apply false }
修改完成后执行./gradlew clean bundleRelease重新构建项目。
验证步骤
执行以下命令确认环境配置是否正确:
- 检查JDK版本:
java -version - 检查Gradle版本:
./gradlew --version
内容的提问来源于stack exchange,提问作者Subrath kumar
相关产品推荐
相关产品推荐

