Ubuntu Java运行错误的排查与修复指南
一 快速定位与通用排查
二 常见错误与对应修复
| 错误信息或症状 | 可能原因 | 修复要点 |
|---|---|---|
| UnsupportedClassVersionError | 编译与运行JDK版本不一致 | 统一版本;用javac -source X -target X重编译;用update-alternatives --config java切换版本 |
| Error: Could not find or load main class X | 类不在classpath、包声明与目录不符、执行目录错误 | 在源码根目录运行;包名与目录一致;必要时用**-cp .**显式包含当前目录 |
| NoClassDefFoundError(如JavaFX) | 缺少依赖库 | 安装openjfx;将JavaFX库加入模块路径或构建路径 |
| Permission denied | 脚本/应用无执行权限 | 执行chmod +x your-app |
| 程序启动但端口未监听 | 防火墙/云安全组未放行 | 放行对应端口(如sudo ufw allow 8080)或调整云安全组规则 |
| Error occurred during initialization of VM | 运行库损坏或JAVA_HOME指向错误 | 检查**$JAVA_HOME/lib**中关键包是否完整;校正JAVA_HOME并重启终端/会话 |
三 环境与版本管理
四 最小可复现实例与验证
五 仍未解决时的高效求助方式