在 Ubuntu 上用 Tomcat 时,定位错误主要看日志文件 + 结合报错信息。下面按“从哪里看 → 看什么 → 常见错误怎么查”给你一个实用指南。
如果你是用 apt 安装的 Tomcat(常见):
/var/log/tomcat9/ # Tomcat 9 示例
主要日志文件:
| 文件 | 作用 |
|---|---|
catalina.out |
最重要,标准输出和异常堆栈 |
catalina.yyyy-mm-dd.log |
每天一个,启动/关闭信息 |
localhost.yyyy-mm-dd.log |
应用级错误 |
manager / host-manager |
管理端日志(一般不管) |
如果是 手动解压的 Tomcat:
$TOMCAT_HOME/logs/
tail -f /var/log/tomcat9/catalina.out
然后复现错误(刷新页面 / 调接口)
grep -i error /var/log/tomcat9/catalina.out
grep -i exception /var/log/tomcat9/catalina.out
less /var/log/tomcat9/catalina.2026-01-15.log
看:
catalina.out
常见原因:
Address already in use
解决:
netstat -tunlp | grep 8080
JAVA_HOME not set
看:
localhost.*.log
确认:
webapps/ 下是否有你的项目WEB-INF/web.xml 是否正确重点看:
catalina.out
示例:
java.lang.NullPointerException
at com.xxx.UserService.getUser
➡ 直接看 at 后面的第一行你的代码
java.lang.OutOfMemoryError
看:
catalina.outsetenv.sh)编辑:
/etc/tomcat9/logging.properties
或:
$TOMCAT_HOME/conf/logging.properties
改成:
.level = FINE
# 看最近 100 行
tail -n 100 /var/log/tomcat9/catalina.out
# 动态看错误
tail -f /var/log/tomcat9/catalina.out | grep -i error
# 看某时间点
less /var/log/tomcat9/catalina.2026-01-15.log
你可以贴:
我可以直接帮你判断是哪一步出的问题。