在eclipse中调试时实时更改变量?

Posted

技术标签:

【中文标题】在eclipse中调试时实时更改变量?【英文标题】:Changing variables in realtime when debugging in eclipse? 【发布时间】:2011-04-16 05:55:15 【问题描述】:

使用 Eclipse,调试时可以在项目运行期间更改变量的值以进行测试。

例如,假设我有一个返回数字 5 的方法,但出于测试目的,我想输出 10。这不是我面临的问题,它有点复杂,只是为了让我的想法得到理解。

【问题讨论】:

【参考方案1】:

您可以通过Variables view 访问变量。在那里您可以右键单击任何变量并选择“Change value ...”。


资源:

standford.edu - eclipse guide help.eclipse.org - change var value

【讨论】:

【参考方案2】:

您应该能够设置断点,进入调试模式,打开变量视图并在此处更改变量的内容。

【讨论】:

对于任何其他新的 Eclipse 用户:使用 Window -> Show View -> Variables 获取变量视图 它说在尝试设置布尔值时类型不匹配。尝试了 true 和 new Boolean(true) 和 Boolean.TRUE 都说类型不匹配 @Jackie,我可以扩展我的布尔变量并在下拉菜单中将value 字段从true 更改为false。我也可以右键单击该变量并为其输入一个全新的表达式,然后输入Boolean.FALSE 对我来说很好。发布一个新问题,包括一个小程序和 Eclipse 版本以及您的情况的屏幕截图,我可以进一步提供帮助。【参考方案3】:

...您可以做很多很多事情:-) 只是为了给您和想法。 您可以在调试期间更改热交换代码,并在给定的调试会话中有效地更改(重新编译)。 您可以在不重新运行调试的情况下多次运行给定的方法运行(例如,在捕获断点之后) -> 在方法堆栈上使用 drop to frame 功能。

【讨论】:

这听起来很有趣..你能解释一下什么是丢帧吗? 它在堆栈上重新运行给定的方法。所以它在第一次被调用时使用相同的参数。看这里vasanth.in/2004/06/08/eclipse-tip-rewind-during-debugging【参考方案4】:

更改代码后,您必须保存它(cntrl-S)以使其生效。 您将看到您正在运行的应用程序在 cntrl-S 之后响应代码更改

我希望这对你有用。我花了一些时间才弄清楚这一点。

【讨论】:

【参考方案5】:

在调试模式下运行您的应用程序,然后转到变量窗口。选择参数,然后根据您的要求更改值。然后保存(ctrl+s)。继续你的改变。希望这会有所帮助。

如果变量窗口丢失。然后转到eclipse窗口->显示视图->变量

【讨论】:

以上是关于在eclipse中调试时实时更改变量?的主要内容,如果未能解决你的问题,请参考以下文章

Eclipes更改主题及字体

如何检测变量何时更改值

eclipse中debug的详细步骤

在 Eclipse 中查看变量时 Gdb 停止

在 Eclipse 中使用 svn 回滚错误的更改

Eclipse IDE 调试 - 代码未反映新更改