在Eclipse中调试时修改静态变量

时间:2010-05-06 09:01:31

标签: eclipse debugging variables static

作为问题“Modify/view static variables while debugging in Eclipse”的扩展,我希望能够在Eclipse中调试时修改静态变量。

例如和局部变量,我可以在Eclipse的“变量”视图中选择变量,并使用上下文菜单“更改值...”来更改值。

这对于任意静态变量是不可能的,因为它们不会出现在“变量”视图中。

我尝试了什么:

  1. 如果从“变量”视图的三角形菜单中选择“Java /显示静态变量”,则可以查看和修改“变量”视图中列出的变量的静态成员变量。但是,我没有找到如何访问其实例未出现在“变量视图”中的类的静态成员。
  2. 您当然可以将静态成员作为表达式输入“表达式视图”(使用完全限定名称)。然后你可以看到值,但是“表达式视图”没有修改值的选项( 允许修改表达式的成员,但不能修改表达式本身,即使表达式是一个领域)。
  3. 所以,如果我有一个像布尔MyClass.disableAllBugs这样的静态变量,有没有办法在调试过程中更改MyClass.disableAllBugs?

    顺便说一句:我意识到即使拥有公共可变静态字段(即可变全局变量)也是非常糟糕的风格。但有些代码库有它,然后在调试时修改它有时很有用。

1 个答案:

答案 0 :(得分:6)

您可以编写临时行SomeClass.myStaticVar = newValue;,选择它,右键单击并“执行”它。