update-alternatives是ubuntu系统中专门维护系统命令链接符的工具,通过它可以很方便的设置系统默认使用哪个命令、哪个软件版本,比如,我们在系统中同时安装了jdk1.7和jdk1.8 两个版本,而我们又希望系统默认使用的是jdk1.7,那怎么办呢?通过update-alternatives就可以很方便的实现了。
首先通过命令查看当前系统存在的jdk及优先级
update-alternatives --display java
![](https://i-blog.csdnimg.cn/blog_migrate/35ca71f515d742a1ec980faa3edd7025.png)
最后的数字代表优先级,数字越大,优先级越高。
如果当前我们正在使用的是jdk1.8,但我们又想切换成1.7。或者我们想用jdk1.7的javac编译,使用jdk1.8的java运行class文件。则可以使用update-alternatives命令指定具体的编译版本和运行版本。
1、如果将当前的jdk1.8切换为1.7则可以使用以下命令(注意将一下命令中的jdk路径换成自己的安装路径)
sudo update-alternatives --install /usr/bin/java java /usr/lib/jdk/jdk1.7.0_131/bin/java 400
sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jdk/jdk1.7.0_131/bin/javac 400
使用java -version验证,如果显示的版本号为jdk1.7则切换成功。
2、如果想用jdk1.7的javac编译,使用jdk1.8的java运行class文件,则使用以下命令
sudo update-alternatives --install /usr/bin/java java /usr/lib/jdk/jdk1.8.0_171/bin/java 520
sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jdk/jdk1.7.0_131/bin/javac 520
更多请参考:https://blog.csdn.net/54powerman/article/details/54572195