Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/go/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何使用EclipseJuno查看复杂变量中的所有更改_Java_Eclipse_Debugging_Object_Breakpoints - Fatal编程技术网

Java 如何使用EclipseJuno查看复杂变量中的所有更改

Java 如何使用EclipseJuno查看复杂变量中的所有更改,java,eclipse,debugging,object,breakpoints,Java,Eclipse,Debugging,Object,Breakpoints,我有一个复杂的对象,大约有30个字段,这些字段本身包含有很多字段的对象 我真正想做的是这样;在断点处,按ctrl-c键复制整个结构,就像我在变量(或表达式)窗口中看到的那样。然后运行一些代码,然后再次ctrl-c整个结构,然后并排比较它们 但是,Eclipse(Juno)不允许我复制整个结构。而且,即使在遍历代码时展开对象中的所有对象,它也不会突出显示从一行到下一行对每个字段所做的更改 我还可以在修改对象时创建某种断点触发器,但它是一个外部jar文件,因此我不确定这将如何工作,我也不认为Ecli

我有一个复杂的对象,大约有30个字段,这些字段本身包含有很多字段的对象

我真正想做的是这样;在断点处,按ctrl-c键复制整个结构,就像我在变量(或表达式)窗口中看到的那样。然后运行一些代码,然后再次ctrl-c整个结构,然后并排比较它们

但是,Eclipse(Juno)不允许我复制整个结构。而且,即使在遍历代码时展开对象中的所有对象,它也不会突出显示从一行到下一行对每个字段所做的更改

我还可以在修改对象时创建某种断点触发器,但它是一个外部jar文件,因此我不确定这将如何工作,我也不认为Eclipse会费心向我显示更改的数据(如果可能的话)。(如果是的话,那就完全不是直觉了)

任何帮助都将不胜感激


Charles。

您可以使用Eclipse自动生成一个toString()方法,然后以这种方式比较对象。这将允许您在执行过程中的不同时间复制和比较对象


不过,我不知道如何用Eclipse的另一种方法来实现这一点。

为要检查的对象编写一个脚本。您可以想象这是一个类似于“外部化的toString()方法”的东西。它甚至允许您访问被检查对象的私有成员。然后,您可以将此输出输入到首选的diff工具中。

考虑将此作为功能请求提出。此外,调试器知道值何时更改,并在黄色中突出显示它们。对象也是jar的一部分。因此,我可以在eclipse中查看成员,但我无法访问它们以编写自己的toString方法。我发现无法复制和粘贴在变量/表达式窗口中看到的内容令人恼火。这真的很烦人/这真的很巧妙,我不知道细节格式化程序。谢谢