温馨提示×

ubuntu java编译版本如何选

小樊
39
2026-10-04 10:19:42
栏目: 编程语言

在 Ubuntu 上选择 Java 编译版本(JDK 版本),一般从 安装、切换、项目指定 三个层面来做。下面用通俗方式说明。


一、先确认你有哪些 JDK

ls /usr/lib/jvm/

常见结果:

  • java-8-openjdk-amd64
  • java-11-openjdk-amd64
  • java-17-openjdk-amd64

二、安装指定版本(如没有)

sudo apt update
sudo apt install openjdk-17-jdk

可选版本:

  • 8(旧项目)
  • 11(LTS,常用)
  • 17(新 LTS)
  • 21(最新 LTS)

三、系统级选择编译版本(update-alternatives)

1️⃣ 设置 java

sudo update-alternatives --config java

2️⃣ 设置 javac(编译用,最重要)

sudo update-alternatives --config javac

选择对应的编号即可。

验证:

java -version
javac -version

✅ javac 版本决定你编译出的 class 文件版本


四、只改编译版本,不改系统 Java(推荐)

方法 1:直接指定路径

/usr/lib/jvm/java-17-openjdk-amd64/bin/javac Main.java

方法 2:设置环境变量

export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64
export PATH=$JAVA_HOME/bin:$PATH

五、项目级控制(最推荐)

✅ Maven

<properties>
  <maven.compiler.source>17</maven.compiler.source>
  <maven.compiler.target>17</maven.compiler.target>
</properties>

✅ Gradle

java {
    sourceCompatibility = JavaVersion.VERSION_17
    targetCompatibility = JavaVersion.VERSION_17
}

✅ javac 手动指定

javac --release 11 Main.java

六、常见建议

场景 推荐版本
老系统 / Hadoop Java 8
企业项目 Java 11
新项目 Java 17 / 21
Android Java 11 / 17

七、一句话总结

Ubuntu 上选 Java 编译版本 = 选 javac 版本,而不是 java 版本

如果你愿意,可以告诉我:

  • Ubuntu 版本
  • Java 项目类型(裸 javac / Maven / Gradle)
  • 目标运行环境

我可以给你精确到命令的配置方案。

0 踩