Ubuntu 20.04 中的 javac 11 到 17

An *_*ea. 3 java

我最近尝试将java从sdk11更新到sdk17。为此我跑了:

sudo apt update
sudo apt install openjdk-17-jdk
Run Code Online (Sandbox Code Playgroud)

并设置JAVA_HOME/usr/lib/jvm/java-17-openjdk-amd64. 问题是我不知道如何更新 javac...目前我只有 1 个版本,第 11 个版本。

java -version
openjdk version "17.0.5" 2022-10-18
OpenJDK Runtime Environment (build 17.0.5+8-Ubuntu-2ubuntu120.04)
OpenJDK 64-Bit Server VM (build 17.0.5+8-Ubuntu-2ubuntu120.04, mixed mode, sharing)

javac -version
javac 11.0.17
Run Code Online (Sandbox Code Playgroud)

每当我用java编译一个程序时,它都会遵循JDK11而不是JDK17......

小智 8

javac 可执行文件不是openjdk-*-jdk软件包的一部分。要安装它,您需要安装openjdk-17-jdk-headless软件包:

sudo apt install openjdk-17-jdk-headless
Run Code Online (Sandbox Code Playgroud)

要管理活动版本,不要忘记 update-alternatives 命令:

sudo update-alternatives --config java
sudo update-alternatives --config javac
Run Code Online (Sandbox Code Playgroud)