我有一个很奇怪的问题。我正在Eclipse中研究Java SWING应用程序。我在代码中的某个地方设置了一个断点,然后运行调试。我执行包含断点的代码,但总是被跳过。一旦我运行了引发未捕获异常的代码,断点就会再次被击中,而无需进行其他任何更改。引发异常的代码与包含断点的代码无关。
我试图在多个地方设置断点,但是直到抛出异常,它们才被击中。我仅对这一特定应用程序有此问题。我的调试器可以在其他SWING应用中正常运行。
您能想到引起这种情况的任何原因吗?
您正在运行什么版本的eclipse和Java?
你知道这个问题吗?在JDK 1.6.0_14下无法击中断点)
正如gojomo在评论中所述,该bug(279137)现在(2009年7月21日)提到:
该错误现在在sun bug数据库中可见: bug 6862295 。 我们列出了针对此问题的解决方法,可以在研究该错误的修复程序时使用。 变通 使用该选项 -XX:+UseParallelGC 将导致客户端VM或服务器VM无法重现故障。 我建议您使用“观看此错误”功能,以便在有错误更新时通知您。这里是观看此 特定错误 的链接
该错误现在在sun bug数据库中可见: bug 6862295 。
我们列出了针对此问题的解决方法,可以在研究该错误的修复程序时使用。
使用该选项 -XX:+UseParallelGC 将导致客户端VM或服务器VM无法重现故障。
-XX:+UseParallelGC
我建议您使用“观看此错误”功能,以便在有错误更新时通知您。这里是观看此 特定错误 的链接
正如 jdk6_u16 的 发行说明 (2009年8 月末 )提到的那样,该错误已得到修复。
此版本中修复的错误: 6862295 JDWP线程ID在调试会话期间发生更改(导致忽略的断点)
此版本中修复的错误:
6862295 JDWP线程ID在调试会话期间发生更改(导致忽略的断点)