在Eclipse中调试时更改已编译的代码

时间:2014-08-08 09:56:24

标签: java eclipse

这可能听起来很愚蠢但是:是否有可能告诉Eclipse在调试时更改一些已编译的代码(在.class文件中)?

我想检查几个值的一些东西。我知道,如果它被编译,我无法改变它,所以尝试这个是没有意义的。那么,在这个具体案例中它确实有意义。

我也知道Eclipse的热代码替换功能,但它对我不起作用,因为它适用于源文件。

编辑:在我的情况下,我不想改变变量的值。我想在.class文件中的这个调用中放一个1而不是0

getTabFolder().setSelection(0);

3 个答案:

答案 0 :(得分:1)

如果它只是一个你想要改变的变量值,你可以这样做。

在eclipse的调试视图中调试时,有一个变量窗口。如果您右键单击要更改的变量,请按“更改值”'将弹出一个窗口,您可以在那里更改该变量的值。

答案 1 :(得分:0)

我认为您可以更改现有方法的主体,但不能添加新方法。

您还可以更改变量值。

答案 2 :(得分:0)

这取决于,如果您在本地运行代码,Eclipse支持热交换。

您可以找到一些信息here

如果更改代码在调试时,eclipse会自动将其传输到目标VM