用户级 Gradle JDK 17 锁定(创建与验证)
适用对象:macOS + Android / React Native
目的:强制 Gradle 使用 Zulu JDK 17,避免 Android Studio 注入 GRADLE_LOCAL_JAVA_HOME 导致的构建异常
一、创建配置
1. 创建 init.d 目录(如不存在)
mkdir -p ~/.gradle/init.d
2. 创建初始化脚本
nano ~/.gradle/init.d/force-java17.gradle
写入内容:
gradle.settingsEvaluated {
System.setProperty(
'org.gradle.java.home',
'/Library/Java/JavaVirtualMachines/zulu-17.jdk/Contents/Home'
)
}
}
保存并退出:
Ctrl + O → Enter → Ctrl + X
二、查看与确认
3. 查看文件是否创建成功
ls ~/.gradle/init.d
期望输出:
force-java17.gradle
4. 查看文件内容
cat ~/.gradle/init.d/force-java17.gradle
三、验证是否生效
在任意 Android / RN 项目根目录执行:
./gradlew -v
期望输出包含:
Daemon JVM: ... zulu-17 ... (from org.gradle.java.home)
四、回滚方式(如需)
rm ~/.gradle/init.d/force-java17.gradle
结论
通过用户级 ~/.gradle/init.d 锁定 Zulu JDK 17,可一次性解决 macOS 下 React Native / Android 构建因 GRADLE_LOCAL_JAVA_HOME 引发的不稳定问题。