3

我在 Eclipse 中调试其他人的 Java 代码时遇到问题,我已将问题缩小到 java.util.Map 中的某个条目。在某个阶段,某个键被放入映射中,这导致了问题。我已经检查了对这个地图对象的所有“put()”和“putAll()”调用,但还没有找到创建错误条目的位置。

所以,问题是:如何监控这个 Map 对象是否插入了某个键?基本上,我希望在此地图上插入或更新键 x 时停止代码执行。这可能吗?

干杯,

马丁

4

3 回答 3

4

在 Eclipse 中,您可以创建条件断点。此断点只会在您指定的条件发生时触发。这将允许您监控put地图上的方法。

步骤1:右键单击断点后选择断点属性:

在此处输入图像描述

第 2 步:选中条件复选框并输入您的条件:

在此处输入图像描述

第 3 步:在调试模式下运行您的应用程序。

于 2013-09-13T09:44:14.167 回答
1

谁实例化地图?如果您可以设置它,则提供您的自定义实现,如果搜索的值通过则抛出异常。然后您将在堆栈跟踪中看到插入此值的人员和时间。

于 2013-09-13T09:47:42.020 回答
0

在与我们的一位资深人士交谈后,事实证明问题不在于地图,而在于用于填充地图的底层 XML 结构。看来我在追赶红鲱鱼。尽管如此,还是非常感谢所有回复的人!

于 2013-09-13T14:12:17.053 回答