近日部署项目到Tomcat,访问一直404。

于是查看 catalina.out 日志信息,发现如下信息

30-Jun-2019 16:38:03.642 SEVERE [main] org.apache.catalina.core.StandardContext.startInternal One or more listeners failed to start. Full details will be found in the appropriate container log file
30-Jun-2019 16:38:03.646 SEVERE [main] org.apache.catalina.core.StandardContext.startInternal Context [/XXX] startup failed due to previous errors

其实还是没有看明白原因,只知道项目启动失败

再次查看 localhost.2019-06-30.log 发现如下循环输出的异常信息:

30-Jun-2019 16:13:56.351 SEVERE [localhost-startStop-1] org.apache.catalina.core.StandardContext.listenerStart Exception sending context initialized event to listener instance of class [org.springframework.web.context.ContextLoaderListener]
java.lang.StackOverflowError
at org.apache.log4j.Log4jLoggerFactory.getLogger(Log4jLoggerFactory.java:39)
at org.apache.log4j.LogManager.getLogger(LogManager.java:45)
at org.slf4j.impl.Log4jLoggerFactory.getLogger(Log4jLoggerFactory.java:66)
at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:270)
at org.apache.log4j.Category.<init>(Category.java:57)
at org.apache.log4j.Logger.<init>(Logger.java:37)
at org.apache.log4j.Log4jLoggerFactory.getLogger(Log4jLoggerFactory.java:43)
at org.apache.log4j.LogManager.getLogger(LogManager.java:45)
at org.slf4j.impl.Log4jLoggerFactory.getLogger(Log4jLoggerFactory.java:66)
at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:270)
at org.apache.log4j.Category.<init>(Category.java:57)
at org.apache.log4j.Logger.<init>(Logger.java:37)

 

推测是jar包冲突:log4j-over-slf4j.jar 和 slf4j-log4j12.jar

果然在 WEB-INF\lib 里面找到这两个家伙,于是先删除log4j-over-slf4j.jar,在重启tomcat,通过浏览器能够正常访问。

我们的是maven项目,用的Idea。

打开pom.xml文件

右键 -> Maven -> Show Dependencies

然后打开依赖的图, 看到依赖关系之后,

ctrl+f 在弹出框Diagram Elements 找到 log4j-over-slf4j 点进去:

右键 -> Exclude 即可。

最终在pom.xml文件里自动生成排除我们在界面exclude的依赖。

重新打包项目,发布war包到tomcat,能正常启动,访问。

问题解决。

Tomcat启动堆栈异常的更多相关文章

  1. tomcat启动出现异常 Error filterStart

    tomcat启动中出现 Error filterStart异常, 没有任何堆栈信息,如下: SEVERE: Error filterStart Jul 6, 2012 3:39:05 PM org.a ...

  2. tomcat启动报异常(一)

    异常问题:Caused by: java.lang.IllegalStateException: Unable to complete the scan for annotations for web ...

  3. Tomcat 启动过滤器异常

    严重 [RMI TCP Connection(2)-127.0.0.1] org.apache.catalina.core.StandardContext.filterStart 启动过滤器异常 ja ...

  4. tomcat 启动 证书异常java.io.IOException: Alias name [cas] does not identify a key entry

    在搭建CAS server的过程中,Tomcat开启https,配置秘钥证书,证书是通过keytool生成的 <Connector port=" protocol="org. ...

  5. Tomcat启动之异常java.lang.IllegalStateException

    严重: Exception sending context destroyed event to listener instance of class org.springframework.web. ...

  6. 用普通用户通过sudo进行启动tomcat时报如下异常

    用普通用户通过sudo进行启动tomcat时报如下异常 tomcat user 不在 sudoers 文件中.此事将被报告. 这是由于sudo命令使用root用户执行命令.而处于安全性的考虑,一般不允 ...

  7. Tomcat启动load action异常

    近期将之前的项目移到另一个文件夹中(包的路径也更改了),启动Tomcat之后包错:无法加载action,看错误提示知道是路径错误,网上也有各种各样的解决方案,这里我的错误是因为项目移到了别的文件中,所 ...

  8. IDEA tomcat启动异常 org.apache.catalina.startup.ContextConfig parseWebXml

    启动Tomcat发现有异常,总是无法启动,具体的异常日志为下图 具体的解决方法为:在tomcat的conf/content.xml中加上<Loader delegate="true&q ...

  9. tomcat 启动异常 EOFException: Unexpected end of ZLIB input stream

    EVERE: Exception fixing docBase for context [/agdis] java.io .EOFException: Unexpected end of ZLIB i ...

随机推荐

  1. H3C 开局设置

    简介: 系统菜单  即 [H3C] 模式 一:恢复出厂设置 这个没什么说的,必须Console连接. 连上以后,在启动时Ctrl+B,进入管理启动菜单,删除文件,删除配置文件然后重启即可. Ctrl+ ...

  2. qtableview 右键菜单弹出及获取数据

    connect(tableView, SIGNAL(customContextMenuRequested(const QPoint &)), this,SLOT(slot_tableViewM ...

  3. Kubernetes之使用kubeadm部署

    参考:https://www.cnblogs.com/caoxb/p/11243472.html 部署虚拟机规划 192.168.1.11 k8s-master 192.168.1.12 k8s-no ...

  4. jq同一页面内容切换

    $(function() { //选择标题显示 初始显示内容及样式 $('.right-content .right-item').eq(0).addClass('showcontent') $('. ...

  5. DOM事件: DOM事件级别、DOM事件流、DOM事件模型、DOM事件捕获过程、自定义事件

    前端面试中只要问到事件,就肯定会有DOM事件:如果回答出来了,就会一直向下延申,其实这些东西都很简单,但我第一次被问到的时候,也是懵的: DOM事件级别: DOM0 element.onclick = ...

  6. 如何理解JavaScript的原型和原型链

    在现在的业务开发中,应该很少人在写原生JavaScript了,大家都一股脑地扑在各个框架上.本来,这些框架对于业务和开发者来说是一种福音,减少了各种各样的开发痛点,但是带来的负面问题就是对于开发者来说 ...

  7. centos7双网卡绑定

    # 概念 服务器存在多块网卡时,可以通过bond来实现多块网卡并在一起使用: # 模式 mode 0:load balancing (round-robin) Support:需要Switch支持 & ...

  8. Python之路【第二十篇】:python项目之旧版抽屉新热榜

    旧版抽屉新热榜 代码如下: <!DOCTYPE html> <html lang="en"> <head> <meta charset=& ...

  9. [终极巨坑]golang+vue开发日记【二】,登陆界面制作(一)

    写在前面 本期内容是适合第一次使用vue或者golang开发的,内容会以实战的形式来讲解.看懂本段内容需要了解基础内容有html,css,最好可以看一下vue的基础.并且这里的每个知识点不可能详细解说 ...

  10. Jenkins 远程启动nodejs失败,使用pm2守护Nodejs

    一.概述 使用Jenkins 远程ssh到linux,使用命令: ssh root@192.168.10.1 'cd /data/test;nohup npm start &' 发现linux ...