温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

tomcat为什么启动失败

发布时间:2026-08-28 03:25:20 来源:亿速云 阅读:110 作者:小樊 栏目:系统运维

Tomcat 启动失败的原因有很多,最常见的是端口被占用、配置错误、JDK 问题或项目本身有问题。下面我按出现频率给你一个系统性的排查清单,你可以对照看看。


一、最常见原因(80% 都在这里)

1️⃣ 端口被占用(最常见)

Tomcat 默认使用:

  • 8080(HTTP)
  • 8005(SHUTDOWN)
  • 8009(AJP)

报错示例

Address already in use
java.net.BindException: Address already in use: bind

排查方法

Windows

netstat -ano | findstr 8080

Linux / macOS

lsof -i:8080

解决方式

  • 杀掉占用进程
  • 或修改端口:conf/server.xml
<Connector port="8081" protocol="HTTP/1.1"
           connectionTimeout="20000"
           redirectPort="8443" />

2️⃣ JDK 没装 / 版本不匹配

Tomcat 必须依赖 JDK/JRE

常见错误

JAVA_HOME is not set
Unsupported major.minor version

检查

java -version

对应版本关系(很重要)

Tomcat JDK
Tomcat 10 JDK 11+
Tomcat 9 JDK 8+
Tomcat 8.5 JDK 7+

✅ 推荐:Tomcat 9 + JDK 8


3️⃣ JAVA_HOME / JRE_HOME 设置错误

Windows

set JAVA_HOME=C:\Java\jdk1.8.0_202

Linux

export JAVA_HOME=/usr/lib/jvm/java-8-openjdk

二、配置文件错误

4️⃣ server.xml 配置错误

常见错误:

  • XML 标签没闭合
  • 端口写错
  • Connector 写错

✅ 检查方式:

catalina.sh configtest

5️⃣ web.xml / 项目配置错误

如果你部署了项目:

常见错误

  • web.xml 格式错误
  • Servlet 类不存在
  • Spring 配置文件路径错误

报错位置

SEVERE: Error deploying web application
ClassNotFoundException

✅ 解决:

  • 先 删掉项目
  • 启动 Tomcat
  • 再一个一个加回来

三、项目或依赖问题

6️⃣ 项目里有编译错误

如果你用 IDE(IDEA / Eclipse):

  • 项目没编译成功
  • WEB-INF/lib 缺 jar 包

✅ 检查:

  • WEB-INF/classes
  • WEB-INF/lib

7️⃣ 内存不足

报错

OutOfMemoryError

解决

修改 bin/catalina.sh(Linux)或 catalina.bat(Windows)

-Xms512m
-Xmx1024m

四、日志才是关键(最重要)

8️⃣ 不会看日志 = 瞎猜

Tomcat 的真正错误原因在:

logs/catalina.out
logs/localhost.log

✅ 搜索关键词:

  • SEVERE
  • Exception
  • Error

五、快速定位流程(推荐你按这个来)

  1. 先不部署任何项目
  2. 启动 Tomcat
  3. 如果成功 → 问题在项目
  4. 如果失败 → 问题在 Tomcat / JDK / 端口

六、如果你愿意,我可以直接帮你定位

你可以把下面任意一项发我:

  • ❌ 完整报错日志(catalina.out)
  • ❌ 启动时的控制台输出
  • ❌ Tomcat 版本 + JDK 版本
  • ❌ 是否刚改过什么配置

我可以直接告诉你是哪一行导致的启动失败 ✅

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI
助
手