Java 怎么在关闭应用前 debug 到 Spring DisposableBean 的 destroy 方法?

2023-11-10 11:48:30 +08:00
 dumbbell5kg

我单击 IDEA 的“关闭 Spring 应用程序”按钮。并且在 destroy 方法中打印了线程信息,表明 destroy 方法是由 Thread[SpringContextShutdownHook,5,main]执行的。

确实执行了,但是为什么没有停在我的断点处呢?因为 destroy 方法执行之前 JDWP 通道就断开了?

有什么办法可以断点到 destroy 方法吗?

求教啊! orz

636 次点击
所在节点    Java
2 条回复
lylala8
2023-11-13 16:40:38 +08:00
我之前也尝试在 destroy 断点 一直没有断点上 怀疑就没有执行 直到把 log 打出来才怀疑是关闭程序 debug 通道也关闭了...,你想断点做些什么呢 不如手动掉一下 destroy 看看?
dumbbell5kg
2023-11-13 22:45:05 +08:00
@lylala8 http://localhost:8083/actuator/shutdown 调这个接口而不是用 IDEA 去关闭就能 debug 到了,我是为了了解优雅停机的过程。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/990616

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX