温馨提示×

Ubuntu Java为何启动失败

小樊
48
2026-07-27 07:07:39
栏目: 编程语言

Ubuntu 下 Java 启动失败 的原因很多,常见主要集中在 环境配置、版本冲突、路径错误、权限问题 等。下面按常见场景给你一个排查清单,你可以对照看看。


一、常见报错与原因速查

1️⃣ java: command not found

原因

  • Java 没有安装
  • JAVA_HOME 未配置
  • 没有加入 PATH

解决

sudo apt update
sudo apt install openjdk-17-jdk   # 或其他版本
java -version

2️⃣ No such file or directory

即使 java -version 正常,也可能出现。

原因

  • 架构不匹配(如 32 位程序在 64 位系统)
  • 使用了错误的二进制文件

排查

file java
ldd java

3️⃣ UnsupportedClassVersionError

class file version 61.0, this version of Java only recognizes up to 55.0

原因

  • 编译版本 > 运行版本(如 Java 17 编译,Java 11 运行)

解决

  • 升级 Java
sudo apt install openjdk-17-jdk
  • 或重新用低版本编译

4️⃣ JAVA_HOME is not set

原因

  • 启动脚本依赖 JAVA_HOME

解决

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

永久生效:

nano ~/.bashrc

5️⃣ 多版本 Java 冲突

sudo update-alternatives --config java

选择正确版本。


6️⃣ 权限问题

chmod +x your.jar

java -jar your.jar

7️⃣ Spring Boot / 服务启动失败

常见原因:

  • 端口被占用
  • application.yml 配置错误
  • 日志路径不存在

查看日志:

journalctl -u your-service

二、快速自检命令(推荐执行)

java -version
echo $JAVA_HOME
echo $PATH
which java

三、如果你愿意,我可以精准定位 ✅

你可以直接把 完整报错信息启动命令 + 报错截图 发给我,比如:

  • java -jar xxx.jar 报错
  • systemd 启动失败
  • IDEA / Jenkins / Docker 中失败

我可以直接帮你判断是哪一类问题,并给出最小修复方案

0