在 Debian 上启动 Java 失败,原因很多,一般可以按下面流程一步步排查。
java -version
command not found:说明 Java 没装或没在 PATHsudo apt update
sudo apt install default-jre
# 或
sudo apt install default-jdk
不要只看“启动失败”,要看 真实错误。
java -jar yourfile.jar
把完整报错贴出来,常见有:
Error: Unable to access jarfileUnsupportedClassVersionErrorNoClassDefFoundErrorPermission deniedCannot allocate memoryError: Unable to access jarfile xxx.jar
解决:
ls -l xxx.jar
pwd
java -jar /绝对路径/xxx.jar
bash: ./app: Permission denied
解决:
chmod +x app.jar
UnsupportedClassVersionError
说明:
查看版本:
java -version
安装对应版本(如 Java 17):
sudo apt install openjdk-17-jdk
切换版本:
sudo update-alternatives --config java
Cannot allocate memory
解决:
java -Xms64m -Xmx256m -jar app.jar
或增加 swap。
如果是:
systemctl start yourapp
查看日志:
journalctl -u yourapp -xe
常见原因:
JAVA_HOME 没配置示例 service:
[Service]
User=appuser
WorkingDirectory=/opt/app
ExecStart=/usr/bin/java -jar app.jar
java -version 正常如果你愿意,可以把 具体报错信息 + 启动方式(命令行 / systemd / docker)发出来,我可以直接帮你定位。