Mac OSX(version 10.14.3) Maven 执行mvn -v,提示JAVA_HOME没有正确配置

2,957 阅读1分钟
错误提示:
The JAVA_HOME environment variable is not defined correctly
This environment variable is needed to run this program
NB: JAVA_HOME should point to a JDK not a JRE
环境变量设置为:
export JAVA_HOME=⁨/⁨Library⁩/⁨Java⁩/JavaVirtualMachines⁩/⁨jdk1.8.0_121.jdk⁩/Contents⁩/Home⁩
export PATH=$JAVA_HOME/bin:/usr/local/bin:$PATH
export CLASS_PATH=$JAVA_HOME/lib

#Maven
export MAVEN_HOME=/Users/lee/maven/apache-maven-3.6.0(放在任意位置都可以)
export PATH=$MAVEN_HOME/bin:$PATH
执行
$ java -version
java version "1.8.0_121"
Java(TM) SE Runtime Environment (build 1.8.0_121-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.121-b13, mixed mode)
执行
$ echo $JAVA_HOME
/Library/Java/JavaVirtualMachines/jdk1.8.0_121.jdk/Contents/Home

一直找不到原因,也看不出哪里出错,经过大量的搜索和尝试,最终发现Max OSX新的版本设置JAVA_HOME有别于老版本:

Mac OSX 10.5 or later:
export JAVA_HOME=$(/usr/libexec/java_home) 来替代上面的JAVA_HOME设置才成功
tips:
shell如果使用bash,请在bash_profile下设置环境变量,如果使用zsh,请在.zshrc下设置环境变量。

Thanks:

www.mkyong.com/java/how-to…