将JDK 8设置为Debian 8上的默认Java

我试图将Java SDK 8工具(从debian backports repo安装)设置为默认值。

# update-java-alternatives --list java-1.7.0-openjdk-amd64 1071 /usr/lib/jvm/java-1.7.0-openjdk-amd64 java-1.8.0-openjdk-amd64 1069 /usr/lib/jvm/java-1.8.0-openjdk-amd64 # update-java-alternatives --set /usr/lib/jvm/java-1.8.0-openjdk-amd64 update-alternatives: error: no alternatives for mozilla-javaplugin.so update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-8-openjdk-amd64/jre/lib/amd64/IcedTeaPlugin.so 

嗯,除了那个错误(我认为这只是一个警告,根据https://askubuntu.com/questions/141791/is-there-a-way-to-update-all-java-related-如果没有,我不知道如何解决这个问题,因为没有jdk8的插件,我可以看到),这应该是对的,对不对?

但是许多Java工具仍然指向Java 7:

 # update-alternatives --get-selections | grep java appletviewer manual /usr/lib/jvm/java-8-openjdk-amd64/bin/appletviewer extcheck auto /usr/lib/jvm/java-7-openjdk-amd64/bin/extcheck idlj auto /usr/lib/jvm/java-7-openjdk-amd64/bin/idlj jar auto /usr/lib/jvm/java-7-openjdk-amd64/bin/jar jarsigner auto /usr/lib/jvm/java-7-openjdk-amd64/bin/jarsigner java manual /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java javac auto /usr/lib/jvm/java-7-openjdk-amd64/bin/javac javadoc auto /usr/lib/jvm/java-7-openjdk-amd64/bin/javadoc ... 

是什么赋予了? 破碎?

编辑:

围绕这个工作:

 for i in `update-alternatives --get-selections | grep java | awk '{print $1}'`; do update-alternatives --config $i; done 

这将手动提示你为每一个工具。 这需要一分钟左右的时间。 不过,我想知道有没有更好的办法。

update-java-alternatives具有更新的选项--jre-headless ,– --jre--plugin分开。

运用

 sudo update-java-alternatives --jre-headless --jre --set java-1.8.0-openjdk-amd64 

在没有安装插件的Debian Jessie服务器上为我工作。

您必须在下面的文件中更改java 8的java主variables

  'vi /etc/environment' 

在这种格式

JAVA_HOME- / usr / lib / jvm / java-8-oracle

使用重新加载configuration文件

 '. /etc/environment' 

并由此确认

  echo $JAVA_HOME 

在Debian中实现这个最简单的方法是使用这个命令

 update-alternatives --config java 

然后你会得到这样的输出:

 *0 /usr/lib/jvm/java-8-openjdk-amd64/bin/java auto mode 1 /usr/lib/jvm/jdk1.7.0/bin/java manual mode 

然后,您可以通过input索引号来更改默认select(标有“*”)。 例如,您select“1”以将Java 7用作默认JVM。 您可以再次运行该命令以检查更改。

希望能帮助到你。