2011-05-05 26 views
2

我正在创建一个Java项目,在该项目中,我在一个模块中创建了很多对象,然后将它们全部发送给第二个模块以在那里处理它们。追踪对象的交互历史记录(用于调试目的)?

现在,如果一个对象被发现包含无效的东西,我将需要做侦探工作来找出第一个模块导致错误的部分。这并不是令人难以置信,但如果有一些方法可以简单地跟踪对象的交互以及使用它的方法/称为它的增变器/构造函数,那么看起来会容易得多。

+0

在我看来,这是今天不可用,但正在研究: http://uwspace.uwaterloo.ca/handle/10012/5144 – worldsayshi 2011-05-05 10:37:41

回答

2

你正在讨论的是历史/可逆调试器提供的主要好处之一。在Java空间中有刚刚发布的测试版Chronon debugger,它应该允许您在应用程序运行期间跟踪对象instnace。另外,一些IDE具有数据流分析工具,可以让您精确跟踪对象的某个属性发生更改的位置以及值的来源。在.NET空间中有Resharper Value Tracking,但我不确定是否有与Java世界中的相同的东西。