使用Eclipse IDE以调试模式加速Tomcat

and*_*bd1 44 java eclipse tomcat debug-mode

通过eclipse运行Tomcat在非调试模式下运行良好,但在调试模式下运行不正常.当我尝试在调试模式下启动Tomcat服务器时,控制台输出看起来很好一段时间,但随后开始减速并最终停止,将CPU固定为100%.我不认为它是相关的,但以防万一 - 这是控制台输出正确的时候它开始减速并最终停止(通过停止我的意思是没有更多的控制台输出,但仍然是100%的CPU).

2009-09-02 14:35:30,859 INFO   NONE org.springframework.context.weaving.DefaultContextLoadTimeWeaver:72 - Found Spring's JVM agent for instrumentation
2009-09-02 14:35:49,562 INFO   NONE org.springframework.beans.factory.support.DefaultListableBeanFactory:414 - Pre-instantiating singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@ed889d: defining beans [...
2009-09-02 14:37:31,031 INFO   NONE org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean:221 - Building JPA container EntityManagerFactory for persistence unit ...
Run Code Online (Sandbox Code Playgroud)

我尝试了一切我能想到的解决方法:

  • cleanesd tomcat工作目录
  • 重启日食
  • 重启Windows
  • 刷新/清理所有项目

我上周第一次使用eclipse ganymede遇到了这个问题.在本期之前的几个月里,我一直在调试模式下运行良好.我没有对我们的项目做出任何重大改变.最后,我升级到eclipse galileo,解决了我的问题.现在2天后,我在伽利略遇到了同样的问题.就像我说它在非调试模式下工作正常.任何帮助深表感谢.

我应该补充一点,其他的东西在调试模式下工作 - 例如junit测试,所以它是特定于tomcat的东西.

and*_*bd1 138

我已经解决了这个问题!一旦我弄清楚了,我记得以前发生了这件事.我清除了所有断点,它运行正常.我不知道为什么会导致结果,但它确实有效.

  • 当我今天遇到这个问题时,也为我工作 (7认同)
  • 感谢您的建议,不能再为您提供更多信息!=)) (6认同)
  • **非常感谢!!!**我们应该认真地将其列为"[Eclipse bug](https://bugs.eclipse.org/bugs/)"(或任何可能合适的),以便它不会不再减慢开发人员的速度了! (5认同)
  • 谢谢!你为我和我的公司节省了大量的时间和金钱. (2认同)
  • 同样在这里.非常感谢!加载JPA Hibernate EntityFactory时,我的启动速度变慢了.在那之前.一切都好又快.版本:Kepler Service Release 2 Build id:20140224-0627 (2认同)

Chr*_*ard 20

我自己也遇到了这个问题,这个解决方案帮助了我.然而 - 我只有1个断点,而不是20多个其他海报.然而,我的一个断点是一个方法断点,而不是一个换行符 - 我想知道在tomcat启动时结合方法断点的多个方法调用是否会导致这个问题......我只是尝试了一个小实验:

  1. 设置换行符并启动调试模式 - 5秒启动(正常)
  2. 设置方法断点并启动调试模式 - .....不愿意等待(> 90秒).

我猜这是问题所在.

  • 是的,方法断点和观察点(字段上的断点)比线断点慢得多.尽可能支持线断点,除非您不确定您所使用的源与您正在调试的类匹配.例如,在方法内部的第一个语句而不是方法签名本身上放置一个断点.有关方法断点较慢的原因,请参见http://stackoverflow.com/a/787753/277307. (4认同)