我正在尝试学习如何快速更改我的系统使用的 Java 版本,如本文所述:https://aboullaite.me/switching-between-java-versions-on-ubuntu-linux/ 我已经使用 apt-get install openjdk-8-jdk,当我运行 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-amd64/bin/java 1101 auto mode
1 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1101 manual mode
* 2 /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java 1081 manual mode
我正在尝试创建一个可以在版本之间切换的脚本,就像文章中那样。(这是文章中的脚本:
sudo update-java-alternatives -s java-8-oracle
export JAVA_HOME=/usr/lib/jvm/java-8-oracle/
export PATH=$PATH:$JAVA_HOME
但当我尝试时,发生了以下情况:
sudo update-java-alternatives -s java-8-openjdk-amd64
update-java-alternatives: file does not exist: /usr/lib/jvm/.java-8-openjdk-amd64.jinfo
我如何才能更新 java 替代方法而不出错?我应该跳过那一行吗?
答案1
第一次运行命令:
sudo update-alternatives --get-selections | grep "/bin/jinfo"
理想情况下,这个文件应该存在。
其次,检查 /usr/lib/jvm 下的文件。ls -la
在此过程中,您应该看到如下链接:
lrwxrwxrwx 1 root root 20 Nov 9 10:37 java-1.8.0-openjdk-amd64 -> java-8-openjdk-amd64
使用它来运行替代命令:
sudo update-java-alternatives -s java-1.8.0-openjdk-amd64
答案2
解决上述问题的解决方法
sudo update-java-alternatives -s java-1.8.0-openjdk-amd64