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

React Native执行yarn android报错:JAVA_HOME路径无效无法修改

解决React Native yarn android的JAVA_HOME无效问题

问题重现

执行yarn android时报错:

ERROR: JAVA_HOME is set to an invalid directory: /Users/olamidembp/.jenv/versions/system

Please set the JAVA_HOME variable in your environment to match the
location of your Java installation.

已知javac -version返回javac 17.0.9,且~/.zshrc已配置export JAVA_HOME="/Applications/Android Studio.app/Contents/jre/Contents/Home",但修改无效,需使用Java 17运行命令。

解决步骤

1. 定位Java 17的真实安装路径

先找到Java 17的实际安装路径,执行:

/usr/libexec/java_home -v 17

会输出类似/Library/Java/JavaVirtualMachines/openjdk-17.jdk/Contents/Home的路径,记录该路径。

2. 处理jenv的变量覆盖

报错显示JAVA_HOME指向jenv的system版本,说明jenv在覆盖你的配置,可按以下方式处理:

  • 临时生效:在当前终端执行unset JAVA_HOME,再执行export JAVA_HOME=[刚才得到的Java17路径],然后尝试yarn android。
  • 永久适配jenv:若想用jenv管理版本,先执行jenv add [Java17路径]将版本加入jenv,再执行jenv local 17设置当前目录默认Java版本,最后刷新终端。

3. 确保环境变量加载优先级

~/.zshrc的配置可能被其他脚本覆盖,需调整:

  • 将export JAVA_HOME=[Java17路径]移至~/.zshrc的最后一行,避免后续脚本修改该变量。
  • 执行source ~/.zshrc刷新配置,再用echo $JAVA_HOME检查是否正确指向Java17路径。

4. 验证Android Studio的JRE版本

你之前配置的Android Studio内置JRE可能不是Java17,执行:

/Applications/Android Studio.app/Contents/jre/Contents/Home/bin/java -version

若返回版本不是17,直接用步骤1得到的Java17路径替换~/.zshrc里的配置即可。

5. 重启终端确认

配置修改后需完全关闭终端再重新打开,确保新环境变量生效。重启后执行echo $JAVA_HOME确认路径正确,再运行yarn android。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.18 05:34:53