无法将默认Java版本从11更改为1.8

时间:2018-11-20 21:55:23

标签: bash macos command-line .profile

我打开新终端并输入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

0 个答案:

没有答案