Tomcat 在 Eclipse 中未关闭
我正在构建一个相对简单的Web应用程序,其中主servlet实现接口以确定上下文是否已启动或已停止。我已经实现了我的 、和方法(两者都调用基类)。我目前没有实现任何真正的功能,除了我已经在加载文件的方法中初始化了log4j。ServletContextListener
contextInitialized
contextDestroyed
init
destroy
init
destroy
super
contextInitialized
log4j.properties
然而,当我从Eclipse中启动和停止Tomcat服务器时,一切都以正确的顺序调用(我正在使用一些's来测试这一点),但是在停止服务器大约10秒后,我会出现一个Eclipse弹出窗口,说明以下内容:System.out.println
服务器 Tomcat v6.0 服务器在本地主机没有响应。是否要终止此服务器?单击“确定”终止服务器,或单击“取消”继续等待。
这是我停止服务器时在 Eclipse 控制台中打印的内容:
04/01/2010 7:39:13 PM org.apache.catalina.core.StandardService stop
INFO: Stop service Catalina
contextDestroyed
04/01/2010 7:39:13 PM org.apache.coyote.http11.Http11Protocol destroy
INFO: Stop Coyote HTTP/1.1 on http-8080
在最后一条消息之后,它只是挂在那里,直到弹出窗口出现。如果我选择等待,按取消,Eclipse将变得不可用,我必须从终端终止Eclipse进程。INFO
如能就如何解决这一问题提供任何意见,将不胜感激。
更新:
这个问题是由我在方法中启动的非守护进程线程引起的(忘记提到:)。通过使用该方法显式停止线程解决了该问题,即使该方法似乎已被弃用。init
stop