Mac
查看系统下所有JDK版本
/usr/libexec/java_home -V
出现以下信息
# 已安装的JDK列表
Matching Java Virtual Machines (2):
11, x86_64: "OpenJDK 11" /Library/Java/JavaVirtualMachines/jdk-11.jdk/Contents/Home
1.8.0_171, x86_64: "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_171.jdk/Contents/Home
# 当前使用的JDK
/Library/Java/JavaVirtualMachines/jdk-11.jdk/Contents/Home
使用以下命令切换版本(系统生命周期内有效)
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_171.jdk/Contents/Home
长期有效可以使用修改配置文件的方法
vi ~/.bash_profile
# 写入配置参数
export JAVA_11_HOME=$(/usr/libexec/java_home -v 11)
export JAVA_8_HOME=$(/usr/libexec/java_home -v 1.8)
export JAVA_HOME=$JAVA_11_HOME
# 配置命令别名
alias jdk11="export JAVA_HOME=$JAVA_11_HOME"
alias jdk8="export JAVA_HOME=$JAVA_8_HOME"
Ubuntu
使用命令切换
sudo update-alternatives --config java
出现可选项大致如下(*
表示当前的版本,其他版本选择直接输入数字即可):
There are 2 choices for the alternative java (providing /usr/bin/java).
Selection Path Priority Status
------------------------------------------------------------
* 0 /usr/lib/jvm/java-11-openjdk-i386/bin/java 1111 auto mode
1 /usr/lib/jvm/java-11-openjdk-i386/bin/java 1111 manual mode
2 /usr/lib/jvm/java-8-openjdk-i386/jre/bin/java 1081 manual mode
Press <enter> to keep the current choice[*], or type selection number:
这里选择0
,使用自动模式,其他都是手动模式。