Flutter项目Gradle构建失败:Android Gradle插件需Java 11(当前为Java 1.8)
Flutter Android构建Java版本不匹配问题解决
核心错误信息
无法使用与Gradle发行版'https://services.gradle.org/distributions/gradle-7.5-all.zip'的连接执行分阶段构建操作。
org.gradle.api.ProjectConfigurationException: 配置根项目'android'时出现问题。
应用插件'com.android.internal.application'失败。
Android Gradle插件运行需要Java 11,您当前使用的是Java 1.8。
当前JDK路径:C:\Program Files\Eclipse Foundation\jdk-8.0.302.8-hotspot\jre
已尝试操作(未解决)
- 修改
JAVA_HOME环境变量指向C:\Program Files\Eclipse Adoptium\jdk-11.0.18.10-hotspot - VS Code中通过
JAVA: Install New JDK安装OpenJDK 11 - 卸载多余Java版本,仅保留Eclipse Temurin JDK 11.0.18+10和Oracle JDK 11.0.17
针对性解决步骤
1. 锁定VS Code的Java运行环境
- 打开VS Code,按
F1输入Java: Configure Java Runtime - 在Projects标签下,找到当前Flutter项目的Android模块,将其Java Runtime指定为已安装的JDK 11
- 切换到Global Settings标签,确保全局Java Development Kit选择JDK 11路径
2. 强制Gradle使用指定JDK
在项目的android/gradle.properties文件中添加或修改配置:
org.gradle.java.home=C:\\Program Files\\Eclipse Adoptium\\jdk-11.0.18.10-hotspot
路径可改用正斜杠避免转义:C:/Program Files/Eclipse Adoptium/jdk-11.0.18.10-hotspot
3. 验证终端环境变量生效
- 关闭所有VS Code窗口,重新打开终端
- 执行以下命令确认版本:
java -version javac -version - 若仍显示Java 1.8,检查系统环境变量:
- 右键「此电脑」→属性→高级系统设置→环境变量
- 确保
JAVA_HOME指向JDK 11,且Path中JDK 11的bin目录优先级高于旧版本 - 重启电脑让环境变量彻底生效
4. 清理Gradle缓存
- 删除项目根目录下的
.gradle文件夹 - 删除
android/.gradle和android/app/build文件夹 - 重新执行
flutter run或flutter build apk
内容的提问来源于stack exchange,提问作者Mahmoud Samy
相关产品推荐
相关产品推荐

