在 Debian 上实现 Java 兼容,通常要关注 JDK 版本选择、多版本共存、环境变量、以及应用兼容性。下面按常见场景系统说明。
sudo apt update
sudo apt install default-jdk
default-jdk 会自动选择 Debian 当前稳定版推荐的 JDK查看版本:
java -version
javac -version
sudo apt install openjdk-17-jdk
sudo apt install openjdk-11-jdk
sudo apt install openjdk-8-jdk
✅ 生产环境建议锁定 LTS 版本(8 / 11 / 17 / 21)
sudo apt install wget
wget https://download.oracle.com/java/21/latest/jdk-21_linux-x64_bin.deb
sudo dpkg -i jdk-21_linux-x64_bin.deb
Debian 使用 update-alternatives 管理 Java。
update-alternatives --list java
sudo update-alternatives --config java
示例:
1 /usr/lib/jvm/java-11-openjdk-amd64/bin/java
2 /usr/lib/jvm/java-17-openjdk-amd64/bin/java
选择对应编号即可。
update-alternatives --query java
示例路径:
/usr/lib/jvm/java-17-openjdk-amd64
编辑:
sudo nano /etc/environment
添加:
JAVA_HOME="/usr/lib/jvm/java-17-openjdk-amd64"
生效:
source /etc/environment
| Debian 版本 | 推荐 Java |
|---|---|
| Debian 10 | Java 8 / 11 |
| Debian 11 | Java 11 / 17 |
| Debian 12 | Java 17 / 21 |
⚠️ 不要强行在 Debian 10 上跑 Java 21
class file version 61.0 → Java 17
原因:
✅ 解决:
java -version
确保运行环境 ≥ 编译环境
sudo apt install default-jre
| 软件 | Java |
|---|---|
| Tomcat 9 | Java 8+ |
| Tomcat 10 | Java 11+ |
| Spring Boot 3 | Java 17+ |
FROM debian:12
RUN apt update && apt install -y openjdk-17-jdk
ENV JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64
java -version
javac -version
echo $JAVA_HOME
update-alternatives --display java
✅ 优先使用 OpenJDK
✅ 生产环境锁定 LTS 版本
✅ 使用 update-alternatives 管理多版本
✅ 明确设置 JAVA_HOME
✅ Debian 升级前先确认 Java 兼容
如果你有 具体场景(如:Spring Boot、Hadoop、Minecraft、老旧系统、ARM 架构),可以告诉我,我可以给你 精准兼容方案。