起初我以为这是一个经常被问到的问题,但是尝试(但失败)查找有关此问题的信息证明我错了。
Eclipse平台中有没有集中处理异常的机制?
例如... 您有一个插件项目,它连接到数据库并发出查询,其结果用于填充一些例如意见。这就像有史以来最常见的例子。 :) 几乎任何用户操作都会从插件提供的每个 UI 控件执行查询。最有可能的是,DB Query API 会有一些特定于 DB SomeDBGeneralException 的声明,并声明为由它抛出。没关系,您可以根据您的软件设计来处理这些问题。但是如何处理可能发生的未经检查的异常,例如,当与数据库的通信由于某些网络相关原因突然中断时? 如果在这种情况下,如果希望在一个中心位置捕获这些异常,例如向用户提供用户友好的消息(而不是低级通信协议(protocol) API 消息),甚至用户可以执行一些可能的操作来处理,该怎么办?具体问题是什么?
在 Eclipse 平台上下文中思考,问题可能会被改写为“是否有像“org.eclipse.ExceptionHandler”这样的扩展点,它允许为特定(某种过滤支持)异常声明异常处理程序,从而提供很大的灵 active 与实际处理?”
最佳答案
您可以覆盖 WorkbenchAdvisor 中的 public void eventLoopException(Throwable exception)
引用自其 javadoc:
This method is called when the code handling a UI event throws an exception. In a perfectly functioning application, this method would never be called. In practice, it comes into play when there are bugs in the code that trigger unchecked runtime exceptions.
关于eclipse - Eclipse 插件的集中异常处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1796560/