blog

#mac上的$JAVA_HOME环境变量设置 mac上的java是默认安装的,所以从来没有设置过$JAVA_HOME环境变量,今天在fish下运行mvn命令,比如mvn package,提示没有mvn命令,设置好mvn的path后再运行,提示Error: JAVA_HOME is not defined correctly,echo $JAVA_HOME才发现JAVA_HOME环境变量为空,怎么设置呢?google了一下,才有了解决方案,可以参考这篇文章Important Java Directories on Mac OS X

主要是用到了/usr/libexec/java_home这个工具命令,执行该命令,就会输出JAVA_HOME路径,还是动态的,后续如果升级java后也不需要修改JAVA_HOME值,非常方便

如果使用的是fish,则在~/.config/fish/config.fish里增加配置set -x JAVA_HOME (/usr/libexec/java_home)

如果使用的是bash,则在~/.bash_profile里增加配置export JAVA_HOME=/usr/libexec/java_home`