出于某种原因,如果没有Eclipse每隔一步就抛出一次崩溃错误,我几乎无法调试任何东西。我在Eclipse 4.2上调试Android。我得到的错误是:
'JDI Event Dispatch' has encountered a problem.
An internal error occurred during: "JDI Event Dispatch".
An internal error occurred during: "JDI Event Dispatch".
java.lang.UnsupportedOperationException
在错误日志中,我得到:
eclipse.buildId=I20120608-1400
java.version=1.7.0_02
java.vendor=Oracle Corporation
BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_US
Framework arguments: -product org.eclipse.epp.package.java.product
Command-line arguments: -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.java.product
Error
Fri Mar 15 20:53:09 CDT 2013
An internal error occurred during: "JDI Event Dispatch".
java.lang.UnsupportedOperationException
at org.eclipse.jdi.internal.MirrorImpl.defaultReplyErrorHandler(MirrorImpl.java:292)
at org.eclipse.jdi.internal.MethodImpl.bytecodes(MethodImpl.java:345)
at org.eclipse.jdt.internal.debug.core.model.JDIMethod.isGetterMethod(JDIMethod.java:86)
at org.eclipse.jdt.internal.debug.core.model.JDIThread$StepHandler.locationIsFiltered(JDIThread.java:2559)
at org.eclipse.jdt.internal.debug.core.model.JDIThread$StepHandler.locationShouldBeFiltered(JDIThread.java:2525)
at org.eclipse.jdt.internal.debug.core.model.JDIThread$StepHandler.handleEvent(JDIThread.java:2477)
at org.eclipse.jdt.internal.debug.core.EventDispatcher.dispatch(EventDispatcher.java:152)
at org.eclipse.jdt.internal.debug.core.EventDispatcher.access$0(EventDispatcher.java:100)
at org.eclipse.jdt.internal.debug.core.EventDispatcher$1.run(EventDispatcher.java:249)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
同样根据错误日志,错误发生在插件or.eclipse.core.jobs
中。任何帮助将不胜感激,我发现没有调试器很难工作!
答案 0 :(得分:5)
我通过禁用步骤过滤解决了这些错误。好像它是过滤器简单的getter选项。
答案 1 :(得分:2)
它可能与方法的名称有关。例如,这种方法:
getFirstValueInBundles(String key, String defaultValue, Bundle... bundles) {
...
}
在步入或步进中导致完全相同的堆栈跟踪。尝试将方法的名称更改为不使用get ...()的内容:
firstValueInBundles(String key, String defaultValue, Bundle... bundles) {
...
}
然后可以正常调试方法。
如果这可以解决您的问题,我会打开错误报告并在此处发布其ID。
答案 2 :(得分:0)
听起来这可能是Eclipse中的超时问题。这是Similar SO question的链接。通过Eclipse的网站看起来有关于此错误的错误报告,但似乎没有任何答案。我希望这可以帮到你。
由于我提到了“表达式”选项卡,如果您在Eclipse中无法处理某些表达式,则有时会出现JDI错误。虽然与您的具体问题无关,但对于搜索类似内容的人来说可能会有所帮助。 Here is a SO answer of mine regarding it