在调试Java程序时,如何在Eclipse中执行某个函数?

73

就像firebug能够调试JavaScript一样,

在Eclipse中是否有类似的功能呢?还是需要安装插件实现?

10个回答

62

使用“Display视图”,或更快的方法:将要运行的代码部分高亮,然后右键/执行或按Ctrl+U。


11
可以使用“显示”(Ctrl+Shift+D)或“检查”(Ctrl+Shift+I)代替“执行”,以查看结果。 - zvikico
8
在Eclipse Photon和2019-03版本中,这个视图已经更名为“Debug Shell”。 - KJP

32
您可以使用“显示”视图在调试期间执行命令。您可以在“窗口”->“显示视图”->“显示”中找到它。

1
我运行了这个程序,但在显示选项卡中没有响应: System.out.println(path.length); - omg
似乎需要切换到控制台视图才能看到结果,这很不方便! - omg
1
选择表达式,右键单击 > 显示。这将在同一窗口中显示结果。 - vikramvi
3
注意:在“显示视图”中仍需突出显示命令,然后按下 Ctrl+Shift+D 执行它。(我输入了“命令;<回车>”,但想知道为什么没有发生任何事情)。 - wisbucky

18

选中该行并按下ctrl+shift+Dctrl+shift+I,此操作将在弹出窗口中显示结果。


我们能否不选择代码而执行Debug Shell中的所有代码,比如按下Ctrl + shift + D键?同时,已执行表达式的输出也会显示在Debug Shell中,这会导致开发人员在运行下一个表达式之前手动删除先前执行表达式的输出,非常繁琐。Eclipse应该有类似IntelliJ的“评估表达式”窗口。 - Mahesh Bhuva

12

使用调试Shell!从Node.js转过来后,我习惯于随时使用node --inspect在Chrome中更改环境变量,因此对我来说,找到在Eclipse中不必使用JDB就能获得相同体验的方法非常重要。

要打开调试Shell,请转到“窗口”->“显示视图”->“调试Shell”

编写代码后,只需将其选中,右键单击并执行(⌘U也可以)

使用调试Shell


2
输出会打印在哪里? - vigamage
@vigamage 输出将打印到控制台选项卡。但是,任何异常都将打印到调试 Shell 选项卡。 - Ronak Shah
2
@vigamage - 如果你选择检查或显示而不是执行,你将立即看到结果。 - kc2001
你有没有想过为什么我只有剪切、复制和这些类似的选项? - Gqqnbig
@Gqqnbig 这是一个非常晚的回复,但通常这意味着你的程序没有运行/可能已经崩溃(检查控制台!),或者你没有在正确的选项卡上。除此之外,我不知道。 - Ronak Shah

8

我相信你需要的是“观察表达式”。只需在源代码视图中标记代码片段,右键单击并选择“观察”即可。


3
当你在调试时,你也可以使用“显示”视图来执行任何代码。 - hfernandes
我看到了,但是当我输入 "System.out.println('test');" 后它没有响应。 - omg
如何使其在“显示视图”下方回显一些结果? - omg
4
如果您在“显示视图”中选择并突出显示表达式(该视图还可以使用内容辅助功能),则可以右键单击并选择“检查”(运行表达式并在结果上打开检查器树),“执行”(运行表达式)和“显示”(运行表达式并打印结果)。 - Scott Stanchfield
为什么不能在不突出显示表达式的情况下运行? - omg
2
@ScottStanchfield 我花了大约15-20分钟才理解如何正确显示值。而你是我在Stack Overflow上找到唯一描述Eclipse工作方式的人!谢谢。我习惯于Visual Studio的方式,在Eclipse中遵循相同的方式让我感到疯狂,因为那样没有输出。 - Setafire

5

我目前正在使用Eclipse Photon(v4.8.0)。 Eclipse将“显示”视图名称更改为“调试Shell视图”。 在这里,您可以即时执行命令。


它也在2019年3月更名了。 - KJP

3

您可以使用“显示”视图在Eclipse中评估表达式。

在调试视图列表下查找。它是Java工具的标准部分,因此您不需要插件。


但是当我输入类似于“path.length”的内容时,并没有返回任何内容,其中path是一个String[]。 - omg
据我所记(目前没有使用Eclipse),您单击运行按钮,将显示最后一个表达式的结果。 - Gareth Davis
1
哦,我需要选择一行来启用“运行”按钮..是这样吗? - omg
1
我认为@banjollity实际上有一个打开的Eclipse副本 :-) 我只是在我的记忆中胡言乱语...现在推荐Intellij是否合适? - Gareth Davis

2

补充所有出色的答案,对于Mac用户来说是cmd + D


1

正如其他人所说,您可以使用“Display view”(显示视图)。但是对于某些变体的Eclipse,它可能具有不同的名称。例如,如果您正在使用Spring Tool Suite作为Eclipse,则对应于“Display view”的视图名称为“Debug Shell”。


1

你也可以创建一个剪贴簿页面(.jpage)文件,然后在其中输入代码。然后点击运行。当我尝试时,它看起来稍微更方便一些。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接