使用备选方案在 Linux 上配置和切换 Java 版本

使用替代品

许多 Linux 发行版使用 alternatives 命令在不同版本的命令之间切换。你可以使用它在计算机上安装的不同 Java 版本之间进行切换。

  1. 在命令 shell 中,将$ JDK 设置为新安装的 JDK 的路径名; 例如

    $ JDK=/Data/jdk1.8.0_67
    
  2. 使用 alternatives --install 将 Java SDK 中的命令添加到备选方案中:

     $ sudo alternatives --install /usr/bin/java java $JDK/bin/java 2
     $ sudo alternatives --install /usr/bin/javac javac $JDK/bin/javac 2
     $ sudo alternatives --install /usr/bin/jar jar $JDK/bin/jar 2
    

    等等。

现在,你可以在不同版本的 Java 命令之间切换,如下所示:

$ sudo alternatives --config javac

There is 1 program that provides 'javac'.

  Selection    Command*+ 1           /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.101-1.b14.fc23.x86_64/bin/javac
   2           /Data/jdk1.8.0_67/bin/javac

Enter to keep the current selection[+], or type selection number: 2
$

有关使用 alternatives 的更多信息,请参阅备选方案(8) 手动输入。

基于 Arch 的安装

基于 Arch Linux 的安装附带命令 archlinux-java 来切换 java 版本。

列出已安装的环境

$ archlinux-java status
Available Java environments:
  java-7-openjdk (default)
  java-8-openjdk/jre

切换当前环境

# archlinux-java set <JAVA_ENV_NAME>

例如:

# archlinux-java set java-8-openjdk/jre

更多信息可以在 Arch Linux Wiki 上找到