【发布时间】:2016-11-18 00:26:20
【问题描述】:
当我在 IntelliJ 中使用远程调试器在服务器上调试 Java 应用程序时,它会成功地在断点处停止,但是当我尝试评估任何表达式或变量时,它会挂起并且什么也不显示(通常带有“正在收集数据”消息)。从那时起,我什至不能再继续单步执行代码了。我必须单击恢复,以便它至少运行,但它也永远不会在其他断点处停止,直到我重新启动调试会话,通常甚至是正在调试的 Java 应用程序。
我可以在断点处停止后单步执行代码,而且我在调试器面板中看到了变量,只有当我尝试评估表达式或添加观察器时它才开始表现得很奇怪。然后它停止工作并重新启动调试器并且需要该应用程序。
有没有人遇到过类似的事情?是 IntelliJ 还是服务器问题?
(抱歉,描述的太模糊了,但我不知道要分享什么或问题可能是什么)
【问题讨论】:
-
你能指定你使用的是哪个版本的 IntelliJ。也是社区还是专业?使用 IntelliJ 16,我注意到您通常不需要评估或观察表达式,IntelliJ 会突出显示变量的值,直到当前执行断点为止。所以我不知道为什么你应该看到。
-
2016 专业。好吧,有时,我需要评估的不仅仅是执行代码中的内容来调试错误(或更改值以模拟某些东西)
-
这可能取决于您尝试调试和评估的内容。因此,除非提供更多信息,否则我将无能为力。我建议添加更多关于您尝试调试的内容、服务器及其版本以及是否有任何信息可以从应用日志中提取的信息。
-
每当我使用调试器命中任何断点时都会发生这种情况...
-
我想我也经历过类似的事情。当应用程序只是在没有断点的情况下运行(即使在调试模式下)时,它运行得很快。但是,当您在断点帧上停止时,变量会慢慢解决。通过解决我的意思是慢慢出现框架和慢慢消失在变量旁边的“收集数据”消息。我不知道您等待评估多久了,但就我而言,最终控制权会以结果返回给您。所以它不会挂起。它只是非常慢......它可能取决于您的代码的复杂性,变量的数量等......慢速连接在这里也无济于事。
标签: java intellij-idea remote-debugging