在 Debian 上运行 Tomcat 报错时,排查通常有固定套路。下面我按「先看日志 → 再分常见错误 → 给解决办法」来说明。
Tomcat 报错不要只看屏幕,一定要看日志:
# 系统日志(如果用 apt 安装)
journalctl -u tomcat9
# 或 Tomcat 自身日志
tail -n 200 /var/log/tomcat9/catalina.out
tail -n 200 /var/log/tomcat9/catalina.YYYY-MM-DD.log
注:Debian 上常见版本是
tomcat9或tomcat10
报错示例:
Address already in use
解决:
# 查看端口
ss -lntp | grep 8080
# 杀掉占用进程
kill -9 <PID>
# 或修改端口
vi /etc/tomcat9/server.xml
改:
<Connector port="8080" ...
为:
<Connector port="8090" ...
报错示例:
Permission denied
java.io.FilePermission
原因:
tomcat 用户运行tomcat解决:
chown -R tomcat:tomcat /var/lib/tomcat9/webapps
chmod -R 755 /var/lib/tomcat9/webapps
报错示例:
The JAVA_HOME environment variable is not defined
解决:
apt install default-jdk
确认:
java -version
Debian tomcat 一般会自动识别,不需要手动设。
常见原因:
正确位置:
/var/lib/tomcat9/webapps/
重启:
systemctl restart tomcat9
systemctl status tomcat9
如果失败:
journalctl -xe
java -version 正常catalina.out请把以下信息发我:
cat /etc/os-release)我可以直接告诉你具体原因 + 命令级解决方案。