为了账号安全,请及时绑定邮箱和手机立即绑定

Tomcat启动Spring-boot应用关闭时报错但Application启动应用关闭时却正常

Tomcat启动Spring-boot应用关闭时报错但Application启动应用关闭时却正常

jeck猫 2019-05-23 10:45:01
Springboot2.0工程使用了quartz来执行定时任务,当在IDEA中通过执行Application类来运行的时候可以正常关闭应用。但是将该应用部署到Tomcat中的时候关闭Tomcat的时候却报了下面的错误13-Feb-201817:03:30.768INFO[scheduler_Worker-1]org.apache.catalina.loader.WebappClassLoaderBase.checkStateForResourceLoadingIllegalaccess:thiswebapplicationinstancehasbeenstoppedalready.Couldnotload[ch.qos.logback.core.status.WarnStatus].Thefollowingstacktraceisthrownfordebuggingpurposesaswellastoattempttoterminatethethreadwhichcausedtheillegalaccess.java.lang.IllegalStateException:Illegalaccess:thiswebapplicationinstancehasbeenstoppedalready.Couldnotload[ch.qos.logback.core.status.WarnStatus].Thefollowingstacktraceisthrownfordebuggingpurposesaswellastoattempttoterminatethethreadwhichcausedtheillegalaccess.atorg.apache.catalina.loader.WebappClassLoaderBase.checkStateForResourceLoading(WebappClassLoaderBase.java:1305)Exceptioninthread"scheduler_Worker-1"java.lang.NoClassDefFoundError:ch/qos/logback/core/status/WarnStatusatch.qos.logback.classic.LoggerContext.noAppenderDefinedWarning(LoggerContext.java:186)atch.qos.logback.classic.Logger.callAppenders(Logger.java:264)atch.qos.logback.classic.Logger.buildLoggingEventAndAppend(Logger.java:421)atch.qos.logback.classic.Logger.filterAndLog_0_Or3Plus(Logger.java:383)atch.qos.logback.classic.Logger.debug(Logger.java:482)atorg.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:612)在SimpleThreadPool612行中加了断点但关闭Tomcat的时候并没有进入该断点getLog().debug("WorkerThreadisshutdown.");现在很困惑感觉无从下手同样的代码通过Application类启动的话可以正常关闭但是通过Tomcat来启动的话关闭Tomcat的时候就有了额外的报错信息是Tomcat做了什么额外的工作吗还是通过Application类启动的话会先结束scheduler_Worker-1再结束主线程吗但Tomcat就没有这个顺序为什么加了断点也不会进入呢这样的话都不知道该怎么调试
查看完整描述

2 回答

  • 2 回答
  • 0 关注
  • 3591 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号