Java 对象实例的全局监视

Java 对象实例的全局监视,java,eclipse,Java,Eclipse,我试图观察对象的属性值。有没有可能有一种不依赖可视范围的全球手表 例如,一个方法位于调用堆栈中的某个位置,它接收一个对象并对其执行某些操作,然后控制流进入不可调试的区域,在该区域中我无法单步执行代码,然后在一段时间后,控制流返回到我可以单步执行代码的位置,但我现在不知道提供给someMethod的对象在哪里(但我确信该对象是活动的,并且存储在类实例的一个字段中)是否有类似于地址(比如内存中的地址)的东西,我可以使用它在Eclipse的表达式面板中找到watch对象 调用堆栈: someMetho

我试图观察对象的属性值。有没有可能有一种不依赖可视范围的全球手表

例如,一个方法位于调用堆栈中的某个位置,它接收一个对象并对其执行某些操作,然后控制流进入不可调试的区域,在该区域中我无法单步执行代码,然后在一段时间后,控制流返回到我可以单步执行代码的位置,但我现在不知道提供给someMethod的对象在哪里(但我确信该对象是活动的,并且存储在类实例的一个字段中)是否有类似于地址(比如内存中的地址)的东西,我可以使用它在Eclipse的表达式面板中找到watch对象

调用堆栈:

someMethod(Object o)
<undebuggable zone>
someOtherMethod
somethod(对象o)
其他方法
我想要的是在其他方法中观察对象o,我想你需要“公共静态”实体


您可以使用公共静态字段创建测试公共类。将您的对象设置为其字段之一,您可以在任何地方看到此对象值。

Heh,我有很多这样的对象,所以这很困难,但无论如何,感谢您的想法。为什么会困难?只需再设置一个对象。在每个IDE中,您都可以显式设置类或对象的名称您希望在调试控制台中看到的对象。我必须再添加一个类,这不是问题,但我如何才能轻松地添加和删除必要的对象?例如,我需要通过对svn的更改进行提交,因此首先我以某种方式记住了将赋值添加到全局类字段的所有位置,然后删除它们,提交后我必须还原此帮助程序代码尝试使用IoC容器。例如,您可以再添加一个spring配置文件,在其中设置所有必需的对象。如果需要关闭调试模式,只需将此文件从项目中排除。