错误提示:
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下设置环境变量。