Java 在 Debian 上“报错”原因很多,不能一概而论。下面我按最常见场景给你一个系统性的排查清单,并给出典型错误信息与解决方法。你可以对照看看属于哪一类。
| 报错现象 | 常见原因 | 解决方案 |
|---|---|---|
command not found: java |
Java 未安装或未加入 PATH | 安装 Java |
java: No such file or directory |
架构不匹配(如 32/64 位) | 安装对应架构 JDK |
UnsupportedClassVersionError |
Java 版本不匹配 | 升级或切换 Java |
Permission denied |
没有执行权限 | chmod +x |
Exception in thread "main" |
程序本身问题 | 看具体异常 |
Error: Could not find or load main class |
classpath / main 类错误 | 修正启动参数 |
| Debian 刚装系统就报错 | 没装 JDK / 多版本冲突 | update-alternatives |
bash: java: command not found
sudo apt update
sudo apt install default-jdk
或指定版本:
sudo apt install openjdk-17-jdk
验证:
java -version
java version "11"
but required 17
查看已安装版本:
update-alternatives --list java
切换默认版本:
sudo update-alternatives --config java
UnsupportedClassVersionError:
class file version 61.0, Java 17
✅ 统一版本(推荐)
或:
java -version
javac -version
Error: Could not find or load main class Hello
✅ 正确示例:
javac Hello.java
java Hello
⚠️ 不要写 .class
java: No such file or directory
即使文件存在
uname -m
安装对应架构版本
java -jar app.jar
Permission denied
✅ 解决:
chmod +x app.jar
请你贴出 完整报错信息,例如:
Exception in thread "main" java.lang.NullPointerException
at com.xxx.Main.main(Main.java:10)
或直接说:
我可以一步一步帮你定位 ✅