簡體   English   中英

在 ubuntu 中解析不同的 java 和 javac 版本

[英]resolve different java and javac version in ubuntu

我的java --version給出:

openjdk 11.0.13 2021-10-19
OpenJDK Runtime Environment (build 11.0.13+8-Ubuntu-0ubuntu1.21.10)
OpenJDK 64-Bit Server VM (build 11.0.13+8-Ubuntu-0ubuntu1.21.10, mixed mode, sharing)

但是當我這樣做時: javac --version我得到:

javac 17

其中 java 給出:

java: /usr/bin/java /usr/share/java /opt/jdk-17/bin/java /usr/share/man/man1/java.1.gz

據我所知,我從官方網站下載了 openjdk 17 並遵循了官方文檔。

我通常使用 maven 項目,我剛剛注意到這個問題。 到目前為止還沒有造成任何問題。 但我想解決它。 是否可以在不刪除 java 並重新安裝的情況下這樣做?

更新:

echo $PATH
/home/arnob/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin:/opt/jdk-17/bin:/home/arnob/sdks/flutter/bin:/opt/maven/bin:/home/arnob/.local/bin:/home/arnob/.pub-cache/bin:/usr/lib/postgres/13/bin

ls -l /usr/bin/java

lrwxrwxrwx 1 root root 22 Dec 19 00:58 /usr/bin/java -> /etc/alternatives/java

例如,在您的 bashrc 中,似乎您正在將/opt/jdk-17/bin添加到 PATH 中,但最后,不是在/usr/bin/之前,並且您已經單獨安裝了 Java 11 JRE,所以它得到了先撿到

你應該通過扭轉它來解決這個問題

export JAVA_HOME=/opt/jdk-17
export PATH="${JAVA_HOME}/bin:$PATH"

我建議對 flutter、maven、Postgres 等做同樣的事情

在終端中運行以下命令並選擇默認的 java 和 javac 版本。 你不需要卸載任何東西。

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM