gpt4 book ai didi

java - 无法在 Eclipse 中断点代码块的最后一条语句

转载 作者:搜寻专家 更新时间:2023-10-30 21:23:35 25 4
gpt4 key购买 nike

if (true) {
String a = "foo";
String b = "bar";
}

如果我在 String a = "foo"; 处设置断点,eclipse 将停止,我可以跳过并在变量窗口中查看 a 的值。但我无法跨过第二条语句,它只是离开了代码块,而且我从未看到 b 的值。

这迫使我在 String b = "bar"; 之后添加一个 noop 语句,以便我可以看到 b 包含的内容。我也无法在结束 } 上添加断点,我认为这可能是相关问题。

我知道 Visual Studio 允许这样做,那么有没有办法在 Eclipse 中做到这一点?

最佳答案

在任意 block 的末尾设置断点是不可能的(没有字节码破解)。

如果它是一个方法体,那么它可能的:你可以设置一个方法断点。通过双击方法定义行来执行此操作:

sample code with simple method breakpoint

(注意到小箭头了吗?)然后在断点 View 中,选择断点以查看 EntryExit 选项显示属性中的复选框:

modifying the breakpoint

小箭头表示,默认情况下,我们已在方法的入口 处设置断点。

现在选择Exit(并取消选择Entry),您将在断点 View 中看到:

exit breakpoint in breakpoints view

(有一个不同的小箭头,表示退出断点。)

现在在这个小断路器('Debug As a Java Application')上运行调试器,它将停止方法的退出大括号:

debugger stopped

和局部变量(在本例中只有 a)现在在 Variables View 中可见(具有正确的值):

variables just before exit

值得注意的是,这种类型的断点会捕获方法退出,但这种情况会发生——甚至,例如,如果我们通过抛出异常退出。

关于java - 无法在 Eclipse 中断点代码块的最后一条语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7785887/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com