java Tomcat 9 UI Stop命令未触发ApplicationListener

cvxl0en2  于 2023-04-10  发布在  Java
关注(0)|答案(1)|浏览(125)

我正在通过Tomcat 9 UI启动和停止应用程序,并且正在卡住线程。在尝试调查时,我没有看到触发ContextClosedEvent来停止executorservice。
我尝试过实现ApplicationListener并使用注解@EventListener。
然后我尝试使用@PreDestroy注解,甚至运行时关闭钩子。当我在Tomcat UI中单击“停止”时,这些都不会被调用,导致线程卡住。
有谁知道为什么Tomcat不会触发任何上下文线索来表明应用程序被关闭了吗?有没有其他的触发器可以用来识别应用程序被关闭了?

bxgwgixi

bxgwgixi1#

我确定Tomcat UI会在单击“停止”按钮时关闭应用程序上下文并触发ApplicationEvent ContextClosedEvent。在单击“取消部署”按钮时不会触发ContextClosedEvent。
要正确地从Tomcat中删除应用程序,您需要单击停止,然后取消部署。

相关问题