如何在Eclipse中的默认Java构造函数上设置断点?

2022-09-01 18:53:08

在 Eclipse 中,我想在 Java 默认构造函数上设置一个断点。我不能简单地双击任何一行代码的左侧,因为默认构造函数没有源代码 - 它们是由Java编译器隐式生成的。

我希望能够在不修改现有代码的情况下设置这样的断点。


答案 1

如果要在其中设置断点的代码位于生成路径上,而不是在项目本身中,则打开“大纲”视图时,将看到默认构造函数位于该位置,可以右键单击它并选择“切换方法断点”。

请注意,有时默认构造函数会从“大纲”视图中筛选出来。在这种情况下,可以通过更改过滤器设置来包含它。这是通过转到“大纲视图”菜单→筛选器...→并取消选中“合成”成员来完成的。

这是在Eclipse Indigo中,我不知道这个功能已经存在了多长时间。


答案 2

如果确实需要它,请在类的其他方法之一中设置方法断点,选择断点(断点视图)并将其导出。编辑此文件,使断点指向标准构造函数。至少必须更改以下属性(伽利略):

  • org.eclipse.jdt.debug.ui.JAVA_ELEMENT_HANDLE_ID
  • org.eclipse.jdt.debug.core.methodName -value="<init>"
  • org.eclipse.jdt.debug.core.methodSignature -value="()V"
  • 消息 - 不知道是否真的需要

从其他类导出构造函数断点以查看正确的值可能更容易。现在导入更改的文件,您应该有构造函数断点。

这是一个黑客,但对我有用...


推荐