【问题标题】:Eclipse Luna debug slow only up to the very first breakpointEclipse Luna 调试速度慢到第一个断点
【发布时间】:2014-09-24 09:14:15
【问题描述】:

通读 Eclipse 调试主题,我没有找到具体问题的答案。我想知道有没有其他人看过。自从切换到 Luna 后,我才体验到这一点,我之前使用过 Kepler 和 Indigo。

我通常调试 Tomcat,但它发生在任何一类测试应用程序中。当应用程序遇到第一个断点时,会显示调试视图,然后我必须等待 20-30 秒才能初始化调试器,然后才会在编辑器中突出显示代码行。从那时起,每次休息都是立即的。没有经历过其他类型的缓慢。在 Tomcat 中,任何后续请求都会很快停止。问题是当热代码替换不可行时,它经常重新启动。

有人知道怎么调整吗?当时没有进行构建或验证过程,我尝试为 Eclipse 分配不同数量的内存。 -Xms256m、-Xmx2048m 通常对我来说效果很好。

【问题讨论】:

  • 我也有同样的问题。在 Win7 64、Tomcat 8、Java 1.8.0_05 上运行 Luna,在 SSD 上运行 Eclipse/OS,将 webapp 部署到 ramdisk。仍然有足够的可用内存。通过使用 Java 远程应用程序配置连接到 Tomcat 进行调试。不要记得在开普勒下发生过这种情况。
  • 升级到 Luna 后我也一样,只是延迟只有 5 秒左右。
  • 根据错误报告,延迟可能取决于项目使用的库数量。我们有大约 300 个不同大小的罐子。问题是为什么在我开始调试之前无法在后台进行初始化,以及是否可以缓存其结果...
  • 在我的情况下(Tomcat 7、Java 7、Eclipse Luna),在将断点与方法签名对齐时,我遇到了同样的问题。准确地说,它必须是 annonymout 类中重写方法的签名。调试速度变慢了,我不得不等待 30 - 40 秒。当我将断点放在方法体所在的行时,调试工作没有延迟。

标签: java eclipse debugging tomcat


【解决方案1】:

我不知道如何调整它,但在遇到同样的问题时,我发现已经为此创建了一个 Eclipse 错误票证以及重复项:440470 (https://bugs.eclipse.org/bugs/show_bug.cgi?id=440470)。

使用“-consolelog -debug”启动 Eclipse 没有显示任何与此相关的其他错误。

我正在处理一个大型核心 Java 项目,并且还通过更新站点安装了 EMF(Eclipse 建模框架)和 GEF(图形编辑器框架)插件包和依赖项。我已经在以前版本的 Eclipse 中安装了这些,没有调试延迟问题。我尝试关闭这个项目并用一个简单的 Java 类创建了一个新的测试项目。调试这个类没有延迟。

【讨论】:

    【解决方案2】:

    我的问题在 Luna SR1 中得到修复。

    【讨论】:

    • 我正在运行 Luna SR1,但我仍然看到这个问题。
    • 我正在运行 Luna SR2,但遇到了同样的问题。
    【解决方案3】:

    我发现这篇文章试图解决我的问题:初始化 tomcat、hibernate 等非常非常慢。如果你在这里遇到类似的问题,我会建议你解决我的问题。试试:

    • 清除所有断点,主要是 API 中的断点,也清除表达式。

    这对我有用。

    【讨论】:

    • 实际上,它确实提出了一个解决方案,该解决方案对作者在远程相似的情况下(缓慢问题)有效。虽然它可能不是作者实际问题的解决方案(已在 Luna SR1 中解决),但对于正在搜索相关问题的人来说,它是一个可能的解决方案(这就是 Eder Marques 找到问题的方式)。
    【解决方案4】:

    清除所有断点也对我有用。可能是因为 jar 文件中的断点,为这些文件生成行号会花费更多时间。

    【讨论】:

      猜你喜欢
      • 2021-08-09
      • 2016-07-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-01-14
      • 1970-01-01
      • 2013-02-18
      相关资源
      最近更新 更多