最快验证方式是直接访问http://localhost:8080,但404仅表示默认欢迎页缺失或ROOT未部署;需结合端口监听、日志关键字(如“Server startup in [xxx] milliseconds”)、curl/telnet响应及server.xml端口配置综合判断。

直接访问 http://localhost:8080 是最快验证方式,但页面返回 404 不代表 Tomcat 挂了——它只说明默认欢迎页被移除或未部署 ROOT 应用。
检查 Tomcat 进程和端口是否真实监听
Java 进程可能启动失败后自动退出,或端口被占用导致“假启动”:
- Windows 下运行
netstat -ano | findstr :8080,确认有LISTENING状态且 PID 对应java.exe - Linux/macOS 下执行
lsof -i :8080或ss -tuln | grep :8080,看是否有java进程绑定 - 若端口空闲但访问超时,可能是防火墙拦截(尤其 Windows Defender 防火墙默认阻止入站连接)
查看 catalina.out 或 logs/catalina.log 中的关键日志行
Tomcat 启动成功最可靠的依据是日志中出现明确的完成标识,而非“Started”之类模糊词:
- 成功标志:日志末尾含
Server startup in [xxx] milliseconds(注意是“startup”,不是“start”) - 常见失败线索:
Caused by: java.net.BindException: Address already in use(端口冲突)、SEVERE: Failed to initialize connector(Connector 配置错误)、java.lang.OutOfMemoryError(堆内存不足) - 日志位置:Linux/macOS 在
$CATALINA_HOME/logs/catalina.out;Windows 若以服务方式安装,日志可能在%CATALINA_HOME%\logs\下按日期分割
用 curl 或 telnet 快速判断服务层是否响应
立即学习“Java免费学习笔记(深入)”;
- 执行
curl -I http://localhost:8080,返回HTTP/1.1 200或HTTP/1.1 404均表示 Tomcat HTTP 服务已就绪;若报Connection refused,说明进程未监听或端口错配 - 更底层验证:运行
telnet localhost 8080,能进入空白命令行即证明 TCP 层通;若提示“无法连接到主机”,说明进程根本没起来或 bind 失败 - 注意:Tomcat 默认使用
server.xml中的port="8080",但某些镜像或脚本会改写为8081或80,务必核对$CATALINA_HOME/conf/server.xml中
最容易被忽略的是:Tomcat 启动脚本(startup.sh 或 startup.bat)执行后立即返回,并不阻塞等待启动完成。日志里没看到 “Server startup” 就认为“好了”,往往误判。真正要等的是日志输出完毕,而不是终端回到提示符。










