Mac下JAVA_HOME是否需与Android Studio一致?Flutter构建报错求助
Mac Flutter Android构建Gradle JDK路径冲突解决配置建议
先确认当前实际运行的Java版本
- 终端执行
java -version,能看到当前系统实际调用的Java版本 - 再执行
/Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java -version,对比AS自带JDK的版本,明确两者差异
两种统一路径的解决方案
方案1:统一用Android Studio自带的JDK
- 修改系统环境变量:
打开你的shell配置文件(用zsh就改~/.zshrc,bash改~/.bash_profile),添加或替换以下内容:
终端执行export JAVA_HOME="/Applications/Android Studio.app/Contents/jbr/Contents/Home" export PATH="$JAVA_HOME/bin:$PATH"source ~/.zshrc(对应你的shell文件)让配置生效,再用echo $JAVA_HOME确认路径已经更新 - 给Gradle指定该JDK:在项目的
android/gradle.properties文件里添加一行:org.gradle.java.home=/Applications/Android Studio.app/Contents/jbr/Contents/Home
方案2:统一用系统的Zulu 11 JDK
- 先确认Zulu 11是Gradle兼容版本(Flutter Android构建推荐JDK 11,这个版本没问题)
- 在Android Studio里指定项目JDK:打开项目后,依次点
File > Project Structure > SDK Location,在JDK location选择/Library/Java/JavaVirtualMachines/zulu-11.jdk/Contents/Home - 同样可以在
android/gradle.properties里固定配置:org.gradle.java.home=/Library/Java/JavaVirtualMachines/zulu-11.jdk/Contents/Home
收尾检查
- 终端执行
flutter doctor -v,查看Flutter检测到的Java环境是否和你配置的一致,有问题跟着提示修复 - 进入项目的android目录,执行
./gradlew clean清理Gradle缓存,之后再重新构建项目
内容的提问来源于stack exchange,提问作者Hyejung
相关产品推荐
相关产品推荐

