我在Java应用程序中使用了第三方库。该第三方库在每次应用程序启动时都会引发一个自定义的未捕获异常。该异常是无害的,仅用于内部记录到第三方库。由于未捕获到此异常,因此,每当我启动应用程序以通知我该问题时,它将导致我的Eclipse IDE切换到调试透视图并挂起线程执行。我必须手动告诉Eclipse忽略它,而每次都重新开始调试。这很烦人。我不能更改第三方库来解决此问题。
有没有办法告诉Eclipse IDE忽略特定类型的未捕获异常?
我尝试了“步骤过滤”,但是(我认为)由于自定义未捕获的异常不在堆栈跟踪中,因此它没有从调试器中过滤掉。这是我第一次涉足步进过滤,所以我可能使用错了。这是示例堆栈跟踪。
Daemon Thread [Thread-13] (Suspended (exception CustomThirdPartyException))
ThreadPoolExecutor$Worker.run() line: not available [local variables unavailable]
Thread.run() line: not available
编辑:
jluzwick在禁用Eclipse中所有未捕获的异常之后使用我们自己的记录器监视未捕获的异常的方法在技术上可以正常工作,但这并不理想,如果记录器损坏,我们可能会错过一些事情。
mazaneicha的解决方案似乎在正确的轨道上,但是我无法使其按自己想要的方式正常工作。这可能是由于我的用户错误。
jluzwick和mazaneicha都可以解决此问题,但Konstantin Komissarchik的回答“正确”,应将此问题退回给图书馆的创建者进行修复。有时,一种技术解决方案不是正确的解决方案。
一个旧线程,但想想我要添加一点。
至少在Eclipse Indigo中:在Debug Perspective-> Breakpoints视图中:
我倾向于使用它,以便可以将NullPointerExceptions指定为常规异常断点,但忽略来自第三方库的包。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句