如何在Mac OS X上设置默认的Java(JDK)版本?

在本文中,您将学习如何JAVA_HOME在计算机中安装多个JDK时在OS X中设置默认值。首先,您需要运行/usr/libexec/java_home -V命令以获取已安装JDK的列表。该命令将打印出类似以下内容的内容,具体取决于计算机中可用的JDK。

在我的机器上,我具有以下版本的Java。

Matching Java Virtual Machines (3):
    9, x86_64:  "Java SE 9"     /Library/Java/JavaVirtualMachines/jdk-9.jdk/Contents/Home
    1.8.0_121, x86_64:  "Java SE 8"     /Library/Java/JavaVirtualMachines/jdk1.8.0_121.jdk/Contents/Home
    1.7.0_80, x86_64:   "Java SE 7"     /Library/Java/JavaVirtualMachines/jdk1.7.0_80.jdk/Contents/Home

从上面的列表中选择要成为默认JDK的版本。例如,我将选择1.8.0_121版本作为我的默认JDK。要设置它,请运行以下命令。

export JAVA_HOME=`/usr/libexec/java_home -v 1.8.0_121`

如果可用JDK的主版本是唯一的,则可以使用主版本,例如:

export JAVA_HOME=`/usr/libexec/java_home -v 1.8`

设置JAVA_HOME并运行java -version命令后,您将看到JDK 1.8是计算机中新的默认JDK。

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)

上面的更改仅在当前运行的Shell中有效。如果关闭或终止外壳,则下次打开外壳时,需要再次进行设置。要使此更改永久生效,您需要在外壳初始化文件中进行设置。例如,如果您正在使用,bash则可以在中设置命令.bash_profile。在文件末尾添加以下行。

# Setting default JDK to version 1.8.
export JAVA_HOME=`/usr/libexec/java_home -v 1.8`

要立即激活此配置,您可以运行source .bash_profile。该命令读取并.bash_profile在当前shell中执行。