我无法安装 Java 7。我按照建议选择了它,但是当我输入时什么都没有变化java -version
。
当我输入时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-8-oracle/jre/bin/java 1075 auto mode
1 /usr/lib/jvm/java-7-oracle/jre/bin/java 1074 manual mode
当我输入1
然后enter运行的java -version
时候我发现我的选择并没有有效。
答案1
使用此命令:
$ sudo update-alternatives --config java
您将获得类似如下的结果:
There are 3 choices for the alternative java (providing /usr/bin/java).
Selection Path Priority Status
------------------------------------------------------------
* 0 /usr/lib/jvm/java-8-oracle/jre/bin/java 1093 auto mode
1 /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java 1081 manual mode
2 /usr/lib/jvm/java-8-oracle/jre/bin/java 1093 manual mode
3 /usr/lib/jvm/java-9-openjdk-amd64/bin/java 1091 manual mode
回答您想要运行的版本的提示。
您可以删除不起作用的版本,然后确保正确安装您想要使用的版本:
- 链接中接受的答案中的用户通过删除解决了这个问题全部已安装的 Java 版本并安装他想要使用的版本。此后,“sudo update-alternatives --config java”命令起作用了。
删除问题版本后,您可以安装想要运行的版本:
$ sudo add-apt-repository ppa:webupd8team/java
$ sudo apt-get update
$ sudo install oracle-jdk7-installer
答案2
在已安装的 JDK 之间切换
列出 Java 替代方案:
update-java-alternatives -l
找到您想要的 Java 所在的行。
记住行的第一部分。例如,Oracle Java 8 的行 可能在你的系统上看起来像这样:
java-8-oracle 1082 /usr/lib/jvm/java-8-oracle
该行的第一部分是
java-8-oracle
。将您想要的行的第一部分设置为 Java 替代(
java-8-oracle
用您想要的 Java 替换):sudo update-java-alternatives -s java-8-oracle