MAC $JAVA_HOME设置

$JAVA_HOME是常用的环境变量之一,但是在Mac中的设置方式与其余Linux系统有所不同

首先,在终端直接调用的java是/usr/bin/java,而后者是指向以下目录的软链接

$ ls -l /usr/bin/java
/usr/bin/java -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java

其最终调用的是$JAVA_HOME/bin/java

同时,Mac中可以通过/usr/libexec/java_home返回$JAVA_HOME的路径

$ ls -l /usr/libexec/java_home
/usr/libexec/java_home -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java_home

$ /usr/libexec/java_home
/Library/Java/JavaVirtualMachines/jdk1.8.0_65.jdk/Contents/Home

威廉安装了jdk1.7jdk1.8两个版本,是通过dmg格式安装的,系统将其放在了/Library/Java/JavaVirtualMachines/目录下

$ ls -l /Library/Java/JavaVirtualMachines/
drwxr-xr-x  3 root  wheel  102 10 25 14:51 jdk1.7.0_79.jdk
drwxr-xr-x  3 root  wheel  102 11  7 21:49 jdk1.8.0_65.jdk

/usr/libexec/java_home -v参数可返回不同版本JDK的路径,因此可以通过以下的指令实现JDK的切换

$ java -version
java version "1.8.0_65"

$ export JAVA_HOME=$(/usr/libexec/java_home -v '1.7*')
$ java -version
java version "1.7.0_79"

你可能感兴趣的:(不那么基础的Java基础)