在Eclipse中调试(Java);在破坏查看值时不能将鼠标悬停在变量上

时间:2010-01-08 17:51:11

标签: java eclipse

我使用Eclipse编写Java代码(适用于Android),我试图像往常一样调试代码(我通常会使用C#)。

据我所知,Eclipse中的调试确实非常糟糕。我不知道我做错了什么,但似乎很糟糕。

这是正在运行的代码,我得到了某种异常,我希望通过打破“catch”-clause并查看变量“e”来查看异常是什么:

try
{
    ConnectivityManager connectivityManager = (ConnectivityManager) this.getSystemService( Context.CONNECTIVITY_SERVICE );
    NetworkInfo activeNetInfo = connectivityManager.getActiveNetworkInfo();
    NetworkInfo mobNetInfo = connectivityManager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);
    NetworkInfo.State state = mobNetInfo.getState();
}
catch(Exception e)
{
    Log.v("MyAp", e.toString()); // I break on this line, and want to see what e is
}

问题是我不能通过将鼠标放在它上面看到“e”(就像我在我心爱的Visual Studio中一样)。

现在,我知道我可以调出“Variables”选项卡,其中列出了可以从我打破时可以访问的所有变量,但这有点太糟糕了。

我知道 - Eclipse没有办法“悬停”你感兴趣的变量,就像在Visual Studio中一样?


编辑1: 谢谢你的回答。但是,仍然有同样的问题=(

9 个答案:

答案 0 :(得分:8)

转到首选项 - > Java的>编辑器 - >悬停并勾选“变量值”框。如果您希望Hover自动发生,请将Key Modifier部分留空。

答案 1 :(得分:4)

Eclipse中似乎存在与此相关的错误:

所以,是的假定可以工作,但并非总是如此。我在某些课上遇到了这个问题。它似乎是一致的哪些类工作,哪些没有,可能与类来自哪些jar等有关,但我没有真正的线索,是什么原因导致它。很想看到一些复制场景。

答案 2 :(得分:1)

您还可以突出显示变量,右键单击,然后选择观看它。然后它会显示在手表标签上。您还可以设置触发异常抛出的自动断点,而不是特定的代码行。在最近的Eclipse版本中,有 not 'hover'选项可以在Visual Studio中查看变量。

答案 3 :(得分:1)

这看起来有点奇怪,但你知道代码窗口有焦点吗?我观察到有时工具提示的外观取决于视图是否具有焦点(我猜这是一个SWT错误)。

答案 4 :(得分:1)

我还发现在“调试”视图(带有绿色小虫作为图标的选项卡)中显示所有线程,如果当前的断点线程不是,Eclipse有时不会显示变量的值地选择。

如果有其他人遇到此问题,那么您可能遇到了断点,但当前运行的线程不是“调试”窗口中突出显示的线程。

答案 5 :(得分:0)

据我所知,您必须处于Debug视图中才能将鼠标悬停在对象上并查看其属性。至少这就是我的Eclipse 3.4副本的工作方式。

当然,您还需要在Debug视图中进行Step Into,Step Over,Continues等按钮......

答案 6 :(得分:0)

转到Preferences - > Java - > Editor - > Hovers,然后点击Restore Defaults

答案 7 :(得分:0)

找到它,转到:偏好> Java>编辑>悬停 - Javadoc(点击它并从那里删除ctrl + shift键),然后它应该正常工作。

答案 8 :(得分:0)

我认为正确的答案是@RogerThomas。

转到“窗口”->“首选项”->“ Java”->“编辑器”->“悬停” 然后选中“变量值”。

如果“变量值”选项与“组合悬停”相冲突,请取消选中最后一个或为其配置新键。