update-alternatives 有两个条目,一个是自动的,另一个是手动的

update-alternatives 有两个条目,一个是自动的,另一个是手动的

在我的 Ubuntu 15.04 上,sudo update-alternatives --config java显示:

Selection    Path                                               Priority   Status
------------------------------------------------------------
  0            /usr/lib/jvm/java-8-oracle/jre/bin/java             1074      auto mode
  1            /opt/java32/jdk1.7.0_71/jre/bin/java                1         manual mode
  2            /usr/lib/jvm/java-1.7.0-openjdk-i386/jre/bin/java   10        manual mode
  3            /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java      1071      manual mode
  4            /usr/lib/jvm/java-7-openjdk-i386/jre/bin/java       1070      manual mode
* 5            /usr/lib/jvm/java-8-oracle/jre/bin/java             1074      manual mode

为什么单个路径/usr/lib/jvm/java-8-oracle/jre/bin/java有两个条目,一个在模式中,auto另一个在manual模式中?

即使两条路径具有相同的优先级 1024,并且该manual路径被标记为默认路径。手动模式是否总是比自动模式具有更高的优先级?

答案1

标有 的条目*表示当前选择。它只是默认值,因为update-alternatives如果您不想更改它,则不必输入任何内容。

系统默认值是always auto,这意味着设置将更改为始终选择由包维护者确定的具有最高优先级的替代方案。一行中出现的星号manual表示有人更改了替代方案。即使安装更新时优先级发生变化,系统也不会改变此选择。所以是的,手动模式总是优先于自动模式。显然,有人(手动!)更改了二进制文件的设置java,但当前的替代方案仍然与系统在模式下选择的相同auto,因此该条目出现了两次。

如果您希望系统java自动选择“最佳”路径替代方案,请0在此处选择。请注意,尤其是 Java 应用程序可能对所使用的实现和版本很挑剔,因此请小心更改内容。分别从 Debian 或 Ubuntu 存储库提供的 Java 应用程序应该始终能够使用默认 JRE 运行。

相关内容