Many Linux distributions use the alternatives
command for switching between different versions of a command. You can use this for switching between different versions of Java installed on a machine.
In a command shell, set $JDK to the pathname of a newly installed JDK; e.g.
$ JDK=/Data/jdk1.8.0_67
Use alternatives --install
to add the commands in the Java SDK to alternatives:
$ 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
And so on.
Now you can switch between different versions of a Java command as follows:
$ 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
$
For more information on using alternatives
, refer to the alternatives(8) manual entry.
Arch Linux based installs come with the command archlinux-java
to switch java versions.
$ archlinux-java status
Available Java environments:
java-7-openjdk (default)
java-8-openjdk/jre
# archlinux-java set <JAVA_ENV_NAME>
Eg:
# archlinux-java set java-8-openjdk/jre
More information can be found on the Arch Linux Wiki