代码之家  ›  专栏  ›  技术社区  ›  anjanb

无法在eclipse中放置断点

  •  7
  • anjanb  · 技术社区  · 14 年前

    通常,我可以很好地设置断点;但是,对于不属于项目一部分的特定类(该类位于.JAR文件中(.JAR文件是项目的一部分)),尽管我已将源目录附加到该.JAR文件中,但我无法在该类中放置断点。

    如果我双击断点窗格(左边框),我会注意到一个类断点被放置了。我想知道是否没有调试信息;但是,发现这个特定的类是使用ant/javac任务使用debug=“true”和debuglevel=“lines,vars,source”编译的。我甚至在这个类上运行jad来确认它确实包含调试信息。

    那么,为什么eclipse阻止我设置断点呢?

    所有人都能理解这是一个webedit。在外部启动tomcat之后,我正在从eclipse远程调试应用程序。应用程序运行正常。我试图理解上面的类的行为,但我无法理解,因为eclipse不允许我设置BP。

    P、 S:我在这里看到几条线在说血压没有被击中,但在我的情况下,我无法放置血压!

    谢谢你的指点。

    8 回复  |  直到 14 年前
        1
  •  4
  •   Claudio    14 年前

    有时它是启用的,你不能在过滤包内停止

        2
  •  2
  •   richj    14 年前

    听起来Eclipse在类路径上找不到jar文件,尽管您确实说过jar文件是项目的一部分。如果正常运行应用程序会发生什么情况?你有没有得到一个ClassDefNotFoundException或类似的东西?

    如果您检查Run/Debug配置上的选项卡,您应该能够看到运行时类路径上有哪些路径和jar文件。您还可以添加不需要构建应用程序但需要运行它的jar文件。

        3
  •  2
  •   user2246494    10 年前

    当尝试为.jsp页面添加断点时,发现该页面不是用jsp编辑器打开的,这阻止了断点的设置。

        4
  •  1
  •   Chris Lercher    14 年前

    虽然我已经将源目录附加到这个.JAR文件,但我无法在这个类中放置断点。

    你说“源目录”。你确定,它是用来编译jar的同一个版本吗?如果附加了不同的源代码版本,行号可能不匹配,并且断点不会命中。

        5
  •  1
  •   Cshah    14 年前
        6
  •  1
  •   Vaishak Suresh    14 年前

        7
  •  0
  •   user104309    8 年前

    只需简单地刷新.jar文件就可以了。

    我能够在同一个包的所有其他类文件中放置断点,除了一个。我观察到的是,当我在editor中打开这个类文件并选择“linkwitheditor”时,eclipse并没有将我带到这个类文件本身,而是只带到这个类文件的包中。

        8
  •  -3
  •   Andrew Barber Eric Lafortune    11 年前

    步骤1:切换/启用断点 在要开始调试代码的代码行或方法入口点处设置断点。右键单击代码行旁边编辑器的左边距,会弹出一个上下文菜单。在上下文菜单中选择“切换断点”

    步骤2:配置断点以停止执行 若要开始调试,执行应在指定的断点处停止。为此,单击断点属性并执行以下操作:

    1. Check Hit count
    2. Specify value as 1
    3. Select “Suspend thread” option
    

    这将在程序到达断点时停止执行。

    步骤3:切换到调试透视图

    步骤4:在调试模式下运行

    现在程序开始在调试模式下运行,您将看到线程的状态为running

    现在代码在断点处停止。可以使用监视变量/表达式监视调试变量的当前值。 假设在名为counter的变量处设置断点,程序在counter变量处停止

    步骤6:使用F6键进入方法

    在当前代码的下一步中,按F6键进入当前代码行。这将把程序控制从当前行传递到下一个可执行代码行。