我正在运行Eclipse for Java。我创建了一个XML文件的DOM版本。现在我想更改文件中元素的属性。我调用了一个方法,在控制DOM的类中调用了一个方法,我在调试时得到了一个对话框,说“JDI线程评估遇到了问题。异常处理异步线程队列”。
我是Java的相对新手,并没有遇到过这样的错误,我不知道是什么导致它。
如果有人对问题的原因和/或解决问题的方法有任何建议......
非常感谢!
答案 0 :(得分:57)
密切关注“观察”表达式 - 如果您不需要它们,请将它们全部删除。有时某些监视表达式会导致我出现此错误消息。
这也可以解释为什么它会间歇地发生在人们身上(有时他们会有导致错误的手表分配,但重新启动或删除正确的手表可以在他们不知情的情况下解决问题。)
答案 1 :(得分:7)
Java调试接口(JDI)是Java Platform Debugger Architecture的一部分。当对象的toString()
方法不小心返回null
时,会发生一种触发此异常的明显方法。有一个有趣的讨论here。您可能想尝试使用不同的调试器,验证XML也不会有什么坏处。
答案 2 :(得分:4)
调试时,此错误会安静几次。 您可以通过删除所有监视语句和所有断点并重新启动Eclipse来清除它。
答案 3 :(得分:1)
如果未正确配置源查找,也会出现此问题。例如,假设有人想要观看表达式foo.bar()
。现在,如果未正确配置源查找,则调试器无法解析表达式foo
的绑定(请参阅this eclipse bug)。然后,.bar()
的调用将失败并出现NullPointerException。
答案 4 :(得分:0)
如果为特定类配置了“详细格式化程序”(在Eclipse中:Java - > Debug - > Detail Formatters),则可能会出现此问题。尝试禁用它们。
答案 5 :(得分:0)
这是在我调试表达式时在 eclipse 中复制的:stat_summary
,这只是一个空表达式。
因此,如果您遇到此问题,一种解决方案可能是检查您的表达式之一是否为空或相似,然后适当地将其删除。