在 Ubuntu 上选择 Java 编译版本(JDK 版本),一般从 安装、切换、项目指定 三个层面来做。下面用通俗方式说明。
ls /usr/lib/jvm/
常见结果:
java-8-openjdk-amd64java-11-openjdk-amd64java-17-openjdk-amd64sudo apt update
sudo apt install openjdk-17-jdk
可选版本:
javasudo update-alternatives --config java
javac(编译用,最重要)sudo update-alternatives --config javac
选择对应的编号即可。
验证:
java -version
javac -version
✅ javac 版本决定你编译出的 class 文件版本
/usr/lib/jvm/java-17-openjdk-amd64/bin/javac Main.java
export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64
export PATH=$JAVA_HOME/bin:$PATH
<properties>
<maven.compiler.source>17</maven.compiler.source>
<maven.compiler.target>17</maven.compiler.target>
</properties>
java {
sourceCompatibility = JavaVersion.VERSION_17
targetCompatibility = JavaVersion.VERSION_17
}
javac --release 11 Main.java
| 场景 | 推荐版本 |
|---|---|
| 老系统 / Hadoop | Java 8 |
| 企业项目 | Java 11 |
| 新项目 | Java 17 / 21 |
| Android | Java 11 / 17 |
Ubuntu 上选 Java 编译版本 = 选 javac 版本,而不是 java 版本
如果你愿意,可以告诉我:
我可以给你精确到命令的配置方案。