在Eclipse中调试时未显示的变量

时间:2011-03-30 18:25:31

标签: eclipse debugging

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

当我在调试模式下运行时,当前变量及其值不会出现在 Variables 窗口中。当我在断点之后单步执行代码时,窗口仍为空。

昨晚它正在运转,所以我很困惑。任何可能发生这种情况的原因以及有关故障排除的任何提示?

29 个答案:

答案 0 :(得分:112)

我最后通过重置Debug透视图来尝试一些简单的事情,这似乎有效:

Window => Perspective =>重置视角......

感谢您的评论。

答案 1 :(得分:21)

窗口 - >显示视图 - >变量

答案 2 :(得分:16)

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

它成功了!

答案 3 :(得分:14)

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

答案 4 :(得分:4)

我重新启动了Eclipse并再次运行。

答案 5 :(得分:3)

尝试右键单击变量并选择inspect,然后它应出现在弹出窗口中

答案 6 :(得分:2)

  

Windows - > showView - >变量

或 您可以重置视角

  

windows - >偏好 - >观点 - >恢复默认值

答案 7 :(得分:2)

对我有用的是:我有一个顶部堆栈框架的空白变量视图。我选择了一个较低的堆栈帧,然后重新选择了顶层帧,并且Variables视图以某种方式刷新了自己。注意:我使用的是Eclipse Mars,所以这个bug似乎已经在这个版本中返回了(或者它可能是一个不同的版本,具有相同的症状?)。

答案 8 :(得分:2)

我发现如果我想查看变量,我需要删除静态声明,但这样做效果更好......

Modify/view static variables while debugging in Eclipse

答案 9 :(得分:1)

在我的情况下,变量没有显示,因为在debuger的设置中(在我的情况下是xdebug)我将Max children / max data / max数组深度更改为大值...我重置了配置它工作了

答案 10 :(得分:1)

如果你能够跳过断点,可以重置视角。

关于Eclipse版本:Luna Service Release 2(4.4.2) 构建ID:20150219-0600我注意到不仅变量视图为空,而且还禁用了导航执行按钮(F5,F6,F8功能按钮)。在这种情况下,转到Debug View,右键单击带有黄色暂停符号的行,然后选择" Resume"等选项。在下一个断点处,将自动填充变量视图并启用执行导航按钮。无法解释原因

答案 11 :(得分:1)

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

要挂起线程,请在" debug"中选择一个线程。查看并点击"暂停"

答案 12 :(得分:1)

尝试上述答案后未找到解决方案 - 也许这对我的情况非常具体 - 解决方案是确保选项 "跳过所有断点"在Eclipse中未启用 运行 - >跳过所有断点(ctl-alt-B)(切换)

答案 13 :(得分:0)

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

点击变量窗口中的向下箭头按钮 - > 布局 - > 选择列 - >检查您想要的任何列。

即使我已经选中了“名称”和“值”,我也会取消选中并再次选中它们,点击“确定”并显示该列。

答案 14 :(得分:0)

以上没有对我有用。这是什么工作(从菜单):

窗口 -> 透视图 -> 关闭透视图

然后

窗口 -> 透视图 -> 打开透视图 -> 调试

答案 15 :(得分:0)

转到Eclipse菜单->窗口==>显示视图==>变量

这应该使您的变量窗口重新出现在日食中

答案 16 :(得分:0)

通常,您会导入多个Eclipse项目,并且已在 Git Branch 之间切换。然后,您将构建并导入不希望调试器不正确的项目!

如果重置月食透视不起作用。然后执行以下操作:

  1. 从磁盘上删除Eclipse项目。

  2. 清理并构建Eclipse项目(在我的情况下,我使用ANT工具)。
    注意::验证您是否正在构建调试器将要进入的项目。将鼠标悬停在设置了调试点的文件上,即可找到要构建的正确项目名称。

  3. 再次导入该蚀项目。

  4. 还,请验证是否在 首选项 -> 已安装的JRE

答案 17 :(得分:0)

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

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

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

答案 18 :(得分:0)

像每个错误的软件一样,不存在这种错误行为的治疗方法。 对一个人有利的事对其他人不起作用。

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

答案 19 :(得分:0)

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

答案 20 :(得分:0)

在我的情况下,我认为潜在原因是Variables View没有正确初始化。  Variables View init blank 替代方案是在正确的代码需要更改变量之前输入另一个断点。在输入第二个断点(在menthioned之上)之后,eclipse将刷新视图并且所有事情都应该恢复正常。

答案 21 :(得分:0)

我上面使用了Fender的风格,但选择了“观察”一个变量。进入“表达式”选项卡后,我刚刚转到“变量”选项卡和Voila - 变量业务。

答案 22 :(得分:0)

我的预测是我使用 OpenMP ,我禁用 OpenMP然后出现了局部变量。

答案 23 :(得分:0)

我也有这个问题:在调试模式下,EclipseNeon + Tomcat8没有显示所有变量。我试过上面的建议没有成功。然后,我使用NetBeans8 + GlassFish4调试了相同的Web项目,并且所有变量都列出了值。然后我使用NetBeans8 + Tomcat8调试了相同的Web项目,并未列出所有变量。然后我为EclipseNeon安装了GlassFish4,并且在调试相同的Web项目时,所有变量都列出了值。所以,问题在于Tomcat8。注意:以管理员身份运行Eclipse以安装GlassFish4;使用NetBeans可以更轻松地安装其他服务器。

答案 24 :(得分:0)

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

答案 25 :(得分:0)

我遇到了同样的问题,安装MinGW后我可以看到变量。

答案 26 :(得分:0)

这些解决方案都不适合我。什么解决了我的问题是在变量窗口的下拉箭头下。在布局选项中,我必须选择" Variables View Only"然后我可以再次看到变量的值。

这个问题也突然出现了。有一刻Debug正在工作,而下一次它不是。

答案 27 :(得分:-1)

如果您在悬停时查找“正在使用的对象的实时视图”,您看到的就是名称,请确保在要测试的方法上设置断点。否则,当您将鼠标悬停在上方时,只会获取方法名称。

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

祝你好运!

答案 28 :(得分:-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