日期:2014-05-20  浏览次数:20813 次

eclipse的断点问题
1.环境:windows7 + eclipse3.6 + JDK1.6.0_22
2.问题:在某个工程内设置断点之后,调试时断点无效----也就是程序会直接运行到最后。
eclipse的工作空间内有好几个工程,但只有在某个工程断点无效,在其他工程内断点是有效的。
为了测试,我特意新建了一个debugtest.java文件。代码如下:

public class DebugTest {
    public static void main(String[] args) {
        System.out.println("a");
        System.out.println("b");
    }
}

截图如下:

我在两个system.out.println那里设置了两个断点,然后将这个文件分别放到同一个工作空间的不同工程里,其中一个工程可以在断点处自动停下来,另一个就直接运行到结尾了。
3.采取过的措施:
1.将工程(都是maven工程)删掉,再重新import。无效。
2.选择Skip All Breakpoints,无效(网上流传最广的方法)。
3.选择Remove All Breakpoints,再重新设置断点,还是无效。

各位大侠,有没有遇到过类似情况的。

------解决方案--------------------
把运行的程序停止,按那个红色的方块。然后进入debug调试。
------解决方案--------------------
虽然我很少碰到这个问题,但是这个帖子我一定要回复,楼主,你的问题写的太棒了,
很有stackoverflow上的风格,有运行环境、问题描述、代码、截图,还有自己为解决这个问题
采取的措施,CSDN上所有问问题的人都应该参照你这个格式!

言归正传,我以前debug的时候也碰过断点无效的情况,我的解决方法是把断点都remove掉,
然后重启Eclipse,重新设置断点,再次debug的时候就起作用了。

有没有可能这个问题是跟特定的Eclipse版本有关?
------解决方案--------------------
引用:
感谢楼下朋友的捧场。
这个问题找到原因了:是工程编译的时候没有设置line number,导致调试的时候无法定位,关键是:这个line number设置是针对某个工程的,而不是整个平台的环境变量 ,所以才会出现有的工程行,有的工程不行的情况。坑爹的是,这个问题居然没有任何提示,也不知道什么时候勾掉的。
废话不多说了,解决方法如下:
选定工程,点击右键-->Prope……

学习下。
还有中情况,如果LZ好几个工程都有同一个文件名,有断定的时候,也会错乱,呵呵,这个我可是遇到几次了。