tomcat 停止 java 线程不停止_Java Tomcat,底层Netty线程不停止

我正在尝试使用log4j appender将日志发送到GrayLog2(log4j2-gelf)。所以我加我的依赖到我的pom.xml配置log4j2.xml来配置我的appender。用maven构建整个事物并将其部署到本地tomcat,并且一切正常。 当我尝试关闭tomcat时发生问题。如果我不kill -9 PID tomcat的 Tomcat不停止,catalina.out与此结束:Complete stack traceJava Tomcat,底层Netty线程不停止

什么了我的注意是

java.lang.NoClassDefFoundError: io/netty/util/concurrent/DefaultPromise$1

首先,我认为我可以有另一种依赖进口网状那会导致这个例外。但我寻找一些时间,无法找到任何其他netty导入。然后我看到:

Caused by: java.lang.ClassNotFoundException: Illegal access: this web application instance has been stopped already. Could not load [io.netty.buffer.PoolArena$1]. The following stack trace is thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access.

而这就是我的问题即将到来的地方。 我的理解是,gelf-appender使用Netty作为与GrayLog服务器异步通信的一种方式。但它本身就是一台服务器。那么Tomcat是否有可能在杀死底层Netty之前停止父Servlet?这会导致这个问题? 我试图找到关于Tomcat关机的方式的一些文档,但到目前为止我没有找到任何东西,比我可以完全错误地关于此诊断...

+0

我已经做了一些挖掘,我似乎无法重现与码头的问题,所以这看起来像一个tomcat的问题 –

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值