在Eclipse中调试时变量未显示


99

我正在为开发人员运行Eclipse Galileo。

当我在调试模式下运行时,当前变量及其值不在“ 变量”窗口中显示。在断点之后单步执行代码时,该窗口保持为空。

昨晚它在工作,所以我很困惑。发生这种情况的任何原因以及故障排除的任何提示?


11
只需关闭该变量窗口即可。并再次打开它。
Gaurav

它发生在我身上,我刚刚重新启动了Eclipse,它又重新工作了。
Michal 2014年

Answers:


124

我最终通过重置Debug透视图尝试了一些简单的事情,该方法似乎可行:

窗口=>透视图=>重置透视图...

感谢您的评论。


1
我一直遇到同样的问题,并且重置透视图对我来说一直很有效。感谢您发布此信息。
stephenbayer

1
实际上,此动作或@tonyeva的附加步骤都做到了,但是它没有立即起作用(即,在当前堆栈中),因此认为问题没有消失。但是,当调试器停在其他位置时,变量开始显示。
haridsv

1
有时您需要再次单击该线程以使“变量”窗格更新。在“调试”窗格中,找到旁边带有“(挂起)”的线程,将其展开,然后单击顶部的堆栈框架。
史蒂芬·基德森

谢谢!它有助于解决我的vars值问题!我使用Eclipse NEON
user1697575'1

1
使用Neon,很好的回答!
兑换了


18

我的问题是我看不到变量名称,而只能看到值。经过一段时间的尝试后,我得到了解决方案:单击向下箭头(在degub变量选项卡中)->布局->显示列

它成功了!


1
thakns,它对蚀月星火星也有帮助。向下箭头位于“变量”选项卡栏的右上角。
tworec

即使重新启动和删除视图完全没有帮助,这也对Eclipse Mars有所帮助。
戴夫

14

重置透视图对我来说还不够,我必须先删除“变量”选项卡,然后重置透视图(它将“变量”选项卡恢复为工作状态)。上面没有提到的另一件事可能对其他人有帮助-当变量选项卡不起作用时,选项卡标题以斜体显示(无论表示什么)。在工作时,它会恢复为正常字体。


5

我重新启动了Eclipse,它再次起作用。


我也是。关闭并重新打开“变量”窗口不起作用,但是退出Eclipse并重新启动却没有。
Mark Madej'3

我必须关闭项目,重新启动eclipse,重新打开项目,然后“变量”窗口再次开始工作。超级奇怪。
最大


3

尝试右键单击该变量,然后选择“检查”,然后它将出现在弹出窗口中


这对我有效(在霓虹灯中),并且比重新设置透视图更容易且破坏性较小
Paul'Sparrow Hawk'Biron


2

对我有用的是:对于顶部堆栈框架,我有一个空白的Variables视图。我选择了一个较低的堆栈框架,然后重新选择了顶部的框架,然后Variables视图以某种方式刷新了自身。注意:我使用的是Eclipse Mars,所以此版本似乎已经返回了该错误(或者它是另一个具有相同症状的错误?)。


1

在我的情况下,该变量未显示,因为在调试器的设置中(在我的情况下为xdebug),我将“最大子代数” /“最大数据量” /“最大数组深度”更改为大值...我重置了配置,并且它可以正常工作


1

如果您能够跳到断点,则可以重置“透视图”。

在Eclipse版本:Luna Service Release 2(4.4.2)Build ID:20150219-0600上,我注意到不仅变量视图为空,而且导航执行的按钮(F5,F6,F8功能按钮)也被禁用。在这种情况下,转到“调试视图”,右键单击带有黄色暂停符号的行,然后选择“恢复”之类的选项。在下一个断点,将自动充满变量视图,并启用执行导航按钮。无法解释原因


1

另外:您的进程需要暂停以让Eclipse显示变量。如果它正在运行,Eclipse将不会显示任何变量。

要挂起线程,请在“调试”视图中选择一个线程,然后单击“挂起”


1

尝试上述答案后未找到解决方案-也许这是我的具体情况-解决方案是确保在Eclipse Run-> Skip All Breakpoints(ctl-alt-B)中未启用选项“跳过所有断点” (切换)


0

我遇到了这个问题,因为eclipse认为正在执行的代码已被注释掉。有一个#ifndef包装器,条件在项目的一部分中评估为false。不幸的是,CDT不够聪明(Helios或Keppler)以意识到它并不总是假的,并且当逐步遍历代码的那一部分时,变量窗口不起作用。我仍然可以检查单个变量值。



0

我在上面使用了Fender的样式,但是选择“监视”变量。进入“表达式”选项卡后,我刚刚移至“变量”选项卡,然后将Voila-变量重新投入业务。


这不能为问题提供答案。要批评或要求作者澄清,请在其帖子下方留下评论-您始终可以对自己的帖子发表评论,一旦您拥有足够的声誉,就可以在任何帖子中发表评论
2014年

最初的问题是:为什么会发生这种情况?其他答案(包括已接受的答案)也未提供该问题的答案,但确实说明了解决方法。我的答案也一样:这是在我的系统上起作用的东西。但是我敢肯定,您只是在尝试帮助我。谢谢!
电容器24年

感谢您的禁令,赖。你是一种优雅的举动。
电容器

0

没有一种解决方案对我有用。解决我问题的方法是在“变量”窗口的下拉箭头下。在“布局”选项上,我必须选择“仅变量视图”,然后才能再次看到变量的值。

这个问题也突然出现。调试工作一会儿,下一刻却没有。


0

我也有这个问题:在调试模式下,EclipseNeon + Tomcat8不会显示所有变量。我已经尝试了以上建议,但没有成功。然后,我使用NetBeans8 + GlassFish4调试了同一个Web项目,并且所有变量都列出了值。然后,我已经使用NetBeans8 + Tomcat8调试了同一个Web项目,但并未列出所有变量。然后,我为EclipseNeon安装了GlassFish4,并且在调试相同的Web项目时,所有变量都列出了值。因此,问题出在Tomcat8中。注意:以管理员身份运行Eclipse来安装GlassFish4;使用NetBeans,更容易安装其他服务器。



0

重置视图并重新打开Eclipse并没有帮助我,但这对我有用:

单击“ 变量”窗口中的向下箭头按钮-> 布局 -> 选择列 ->检查所需的任何列。

即使我已经同时检查了“名称”和“值”,我仍未选择并再次选择它们,然后单击“ 确定 ”,然后出现该列。


0

就我而言,我认为潜在的原因没有Variables View得到适当的初步确认。 变量查看init空白 另一种选择是在正确的代码需要更改变量之前输入另一个断点。输入第二个断点(在menthioned之上)后,eclipse将刷新视图,所有情况都应恢复正常。


0

您的Java编译器可能已配置为不保留变量信息。右键单击Project Explorer中的项目,然后选择Properties> Java Compiler>将变量属性添加到生成的类文件(由调试器使用)。如果未设置此选项,则将仅在“变量”视图中看到字段,而不是局部变量。


0

像使用每个错误的软件一样,也不存在对这种错误行为的处理。对一个人有利的事对其他人不起作用。

我让调试器一次在刹车点上停止,然后第二次,第三次野兽在其中显示了所有数据的“可变视图”。


0

假设您拥有自己喜欢的调试视图,并且不想每次出现此错误时都必须重置它,请尝试执行此操作。假设您的“调试视图”同时打开了“表达式”和“变量”视图。

双击“表达式”选项卡(带有文本的实际选项卡,而不是“窗口栏”)。这将使其最大化。重复将其还原到以前的大小/位置。那应该重置除表达式之外的所有内容。对变量选项卡重复上述操作,它将重置表达式。

这在Windows 10和Eclipse 上对我有用:
版本:2018-09(4.9.0)
Build ID:20180917-1800
Java:jdk1.8.0_171


-1

对我来说,问题的解决方案是正确配置xdebug。我在php.ini中添加了以下代码行:

zend_extension =“ C:\ xampp \ php \ ext \ php_xdebug.dll”

xdebug.remote_enable = 1

xdebug.show_local_vars = 1

我缺少的重要部分:xdebug.remote_enable = 1


与Eclipse和Java无关。您确定要回答想要回答的问题吗?
Vasily Liaskovsky'1

-1

如果将鼠标悬停在上方时正在寻找“正在使用的对象的实时视图”,并且看到的只是名称,请确保在要测试的方法上放置一个断点。否则,当您将鼠标悬停在上方时,您只会得到方法名称。

无论如何,我希望这对某人有帮助。我尝试了上述所有步骤,非常好!但我仍然无法实时查看正在使用的对象。可能只是菜鸟的错误。

祝你好运!

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.