我打开新终端并输入java -version
,看到我有Java 11
java version "11.0.1" 2018-10-16 LTS
Java(TM) SE Runtime Environment 18.9 (build 11.0.1+13-LTS)
Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.1+13-LTS, mixed mode)
我希望默认的Java版本为1.8
,所以我检查是否安装了Java 1.8
,因为我输入/usr/libexec/java_home -V
并获得
11.0.1, x86_64: "OpenJDK 11.0.1" /Library/Java/JavaVirtualMachines/openjdk-11.0.1.jdk/Contents/Home
1.8.0_192, x86_64: "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_192.jdk/Contents/Home
所以我用vim ~/.profile
创建新的配置文件并设置JAVA_HOME
并写入并保存
#!/bin/bash
JAVA_HOME="/Library/Java/JavaVirtualMachines/jdk1.8.0_111.jdk/Contents/Home/"
然后我关闭并打开终端,然后输入echo $JAVA_HOME
并获取正确的JAVE_HOME
变量
/Library/Java/JavaVirtualMachines/jdk1.8.0_111.jdk/Contents/Home/
但是随后我输入java -version
仍然得到Java 11
java version "11.0.1" 2018-10-16 LTS
Java(TM) SE Runtime Environment 18.9 (build 11.0.1+13-LTS)
Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.1+13-LTS, mixed mode)
所以我直接输入终端
export JAVA_HOME="/usr/libexec/java_home -v 1.8
我看到Java版本现在是Java 1.8
java version "1.8.0_192"
Java(TM) SE Runtime Environment (build 1.8.0_192-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.192-b12, mixed mode)
但是如果我打开新的终端,我的Java版本将回到Java 11
,因此我将export语句直接添加到~/.profile
#!/bin/bash
export JAVA_HOME=`/usr/libexec/java_home -v 1.8
,但是在打开新终端时,Java的默认版本为Java 11
。
所以我将个人资料更改为
#!/bin/bash
JAVA_HOME="/usr/libexec/java_home -v 1.8"
并打开新终端,java -v
仍然提供Java 11
。
如何在OSX上将Java的默认版本从Java 11
更改为Java 1.8
?