温馨提示×

Debian 能安装多个 Java 吗

小樊
51
2026-07-16 01:52:01
栏目: 编程语言

可以,Debian 完全支持同时安装多个 Java 版本
常见做法是通过 Debian 官方仓库 + update-alternatives 来管理多个 Java。


一、安装多个 Java 版本

1️⃣ 安装不同版本的 JDK / JRE

例如同时安装 Java 8、11、17

sudo apt update
sudo apt install openjdk-8-jdk
sudo apt install openjdk-11-jdk
sudo apt install openjdk-17-jdk

安装后,它们会分别位于:

/usr/lib/jvm/java-8-openjdk-amd64
/usr/lib/jvm/java-11-openjdk-amd64
/usr/lib/jvm/java-17-openjdk-amd64

二、切换默认 Java 版本

2️⃣ 使用 update-alternatives

查看已安装的 Java:

sudo update-alternatives --config java

输出示例:

There are 3 choices for the alternative java (providing /usr/bin/java):

  Selection    Path                                         Priority   Status
------------------------------------------------------------
* 0            /usr/lib/jvm/java-17-openjdk-amd64/bin/java   1711      auto mode
  1            /usr/lib/jvm/java-8-openjdk-amd64/bin/java    1081      manual mode
  2            /usr/lib/jvm/java-11-openjdk-amd64/bin/java   1111      manual mode
  3            /usr/lib/jvm/java-17-openjdk-amd64/bin/java   1711      manual mode

Press <enter> to keep the current choice[*], or type selection number:

选择编号即可切换 系统默认 Java

同样切换 javac

sudo update-alternatives --config javac

三、临时使用某个 Java(不切换系统默认)

3️⃣ 指定 JAVA_HOME

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

适合:

  • 某个项目需要特定 Java
  • CI / 脚本环境

四、为不同应用指定不同 Java(推荐)

4️⃣ 应用级配置(不冲突)

应用 配置方式
Tomcat setenv.sh 中指定 JAVA_HOME
Spring Boot JAVA_HOMEapplication.properties
Maven mvn -Djava.home=...
IDE(IDEA / Eclipse) IDE 内单独设置 JDK

这是生产环境最推荐的方式


五、是否支持 Oracle JDK / GraalVM?

✅ 支持,但需要手动安装:

# 例如 Oracle JDK
sudo mkdir -p /usr/lib/jvm
sudo tar -xzf jdk-17_linux-x64_bin.tar.gz -C /usr/lib/jvm

然后注册到 update-alternatives

sudo update-alternatives --install /usr/bin/java java \
/usr/lib/jvm/jdk-17/bin/java 1

六、总结

Debian 可以安装多个 Java
互不冲突
可系统级切换或应用级指定
生产环境推荐应用级 JAVA_HOME

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

  • Debian 版本(10 / 11 / 12)
  • 用途(服务器 / 桌面 / Docker / 开发)

我可以给你一套最适合你的 Java 多版本方案

0