19

我在从命令行运行 java 程序时遇到了这个问题。我在我的 linux 系统中安装了 openjdk-6-jdk,但仍然显示错误与 openjdk-7-jdk 有关。
最初我在我的系统中安装了 jdk 7,但是我已经删除了它,但在运行应用程序时仍然遇到问题。

运行 cammand 后

sudo update-alternatives --config java

它显示如下警告

update-alternatives:warning: /etc/alternatives/java is dangling,它将以最佳选择进行更新。
链接组 java 中只有一种选择:无需/usr/lib/jvm/java-7-openjdk/jre/bin/java 配置。

我该怎么办?

4

3 回答 3

59

假设您安装了 OpenJDK6:

sudo apt-get install openjdk-6-jdk

在 Ubuntu 64 位中,确保路径对您的安装有效(如果使用 32 位版本,请更改):

/usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java

/usr/lib/jvm/java-6-openjdk-amd64/bin/javac

设置更新替代方案:

sudo update-alternatives --install "/usr/bin/java" "java" "/usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java" 1
sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/lib/jvm/java-6-openjdk-amd64/bin/javac" 1

sudo update-alternatives --set java /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java
sudo update-alternatives --set javac /usr/lib/jvm/java-6-openjdk-amd64/bin/javac

或者,确保检查 Java 和编译器的正确版本:

sudo update-alternatives --config java
sudo update-alternatives --config javac

列出已安装的 Java 替代品:

sudo update-alternatives --list java
sudo update-alternatives --list javac
于 2013-07-12T07:10:19.147 回答
0

更新java替代品:

sudo update-alternatives --config java

sudo update-alternatives --config javac
于 2017-01-04T09:07:41.787 回答
0

如果你在 docker 中安装 openjdk 8。也许你需要安装“软件-属性-通用”

apt-get update && apt-get install apt-file -y && apt-file update && apt-get install software-properties-common

然后安装 openjdk 8 并设置 end number = 3 的 update-alternatives

sudo apt-get install openjdk-8-jdk
export JAVA_HOME="/usr/lib/jvm/java-8-openjdk-amd64"

update-alternatives --install "/usr/bin/java" "java" "/usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java" 3
update-alternatives --install "/usr/bin/javac" "javac" "/usr/lib/jvm/java-8-openjdk-amd64/bin/javac" 3
于 2019-11-27T10:29:32.847 回答