抛出问题

​ 最近碰到一个烦人的问题,在学习JavaWeb的时候,我在电脑上安装了两个编译器,eclipse和myeclipse,当我在eclipse上部署项目到本地Tomcat后,再打开myeclipse部署另外一个项目的时候就报错了,myeclipse提示启动Tomcat失败,下面是控制台打印的报错代码:

org.apache.catalina.LifecycleException: Failed to start component [org.apach...

紧跟着还有子容器启动失败以及指定的主资源集无效等等…

见图:

​ myeclipse提示Tomcat启动失败

​ 控制台提示的错误

分析问题

​ 既然是Tomcat出了问题,那我们当然去Tomcat中解决啦!找到Tomcat的安装文件,找到conf目录下的server.xml文件。

打开这个文件,拉倒最底部

Tomcat里面有两个项目(可以看到有两个 <Context 标签)了,一个是eclipse中的项目,一个是myeclipse中的项目,可是Tomcat中部署的myeclipse的项目并不是我们刚才部署的test01

原来是我在myeclipse中创建了新的工作空间,而之前工作空间的项目部署到Tomcat中没有移除掉,导致新的工作空间无法部署新的项目到Tomcat中。

解决方法
  • 直接在server.xml文件中删除掉原工作空间的项目,即删除其中的一个 <Context 标签,如果忘记是哪个项目的话,最狠的方法就把两个 <Context 标签 都删掉,这样你的Tomcat就干净了,没有任何项目,这样你再重新部署项目就不会报错了。
  • 还可以找到之前的工作空间,将项目从Tomcat中remove掉就行了。

小结

​ 一般Tomcat出了问题,我们都可以去Tomcat的配置文件以及日志文件中寻找原因。

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐