有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java Eclipse,Hibernate 5.0.7锁定调试模式

我的web应用程序有问题。这就是背景:

  • Eclispe 2021-09
  • Tomcat 9.0.44
  • Java 11.0.12

当我启动Eclipse并在debug中运行web应用程序时,一切都很好,但当我停止Tomcat并立即重新启动web应用程序时(始终处于debug状态),它似乎锁定在HibernateSessionRequestFilter上

这是HibernateSessionRequestFilter.java

HIbernateSessionRequestFilter.java 锁在第27行:

HibernateUtil.getSessionFactory().getCurrentSession().beginTransaction();

通过分析调试调用,我可以看到应用程序仍然处于锁定状态

final Metadata metadata = metadataBuilder.build();

配置

enter image description here

我注意到,当我停止Tomcat时,它会立即停止,并抛出一个错误:

WARNING: The web application [AlphaPickServer] appears to have started a thread named [Timer-0] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread:
 java.base@11.0.12/java.lang.Object.wait(Native Method)
 java.base@11.0.12/java.util.TimerThread.mainLoop(Timer.java:553)
 java.base@11.0.12/java.util.TimerThread.run(Timer.java:506)
nov 11, 2021 9:53:05 AM org.apache.catalina.loader.WebappClassLoaderBase checkThreadLocalMapForLeaks

有没有可能Eclipse没有正确停止Tomcat?我试图用关机来阻止它。蝙蝠但没有不同的结果。如果我关闭并重新打开Eclipse,一切都会发生变化。如果我第一次重启电脑,调试开始时不会出现问题

我注意到这个问题只有在调试模式下才会发生,运行模式才能正常工作

提前谢谢


共 (0) 个答案