2

以前我默认安装了 java 8。将 java 版本升级到 11 后,它显示openjdk 10.0.2 2018-07-17.

jdk-11.0.2_linux-x64_bin.deb从oracle站点下载并安装了它。之后我运行sudo update-alternatives --config java将版本更改为 11,但在运行java --version命令后,我得到以下输出:

openjdk 10.0.2 2018-07-17
OpenJDK Runtime Environment (build 10.0.2+13-Ubuntu-1ubuntu0.18.04.4)
OpenJDK 64-Bit Server VM (build 10.0.2+13-Ubuntu-1ubuntu0.18.04.4, mixed mode)

输出javac --version

javac 10.0.2
4

1 回答 1

2

您对 openjdk 和 oracle jdk 感到困惑。您已经安装了 openjdk 11,因此它显示您的版本为 10(按照 Joachim Rohde 的建议阅读答案)。您可以更新替代方案并重新配置它:

删除 openjdk 11:

sudo update-alternatives --remove "java" "/usr/lib/jvm/java-11-openjdk-amd64/bin/java"
sudo update-alternatives --remove "java" "/usr/lib/jvm/java-1.11.0-openjdk-amd64/bin/java"

sudo update-alternatives --remove "javac" "/usr/lib/jvm/java-11-openjdk-amd64/bin/javac"
sudo update-alternatives --remove "javac" "/usr/lib/jvm/java-1.11.0-openjdk-amd64/bin/javac"

如果您愿意,可以使用以下命令删除 openjdk 文件夹:

sudo rm -r /usr/lib/jvm/java-11-openjdk-amd64/
sudo rm -r /usr/lib/jvm/java-1.11.0-openjdk-amd64/

更新替代品安装 oracle jdk:

sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk-11.0.2/bin/java 1
sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/jdk-11.0.2/bin/javac 1

重新配置:

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

现在运行java --version,您将获得输出为java 11.0.2.

于 2019-03-17T11:09:45.647 回答