私たちはEclipseに基づいた製品を開発しています(これはEclipseプラグインであり、約60以上のプラグインプロジェクトがあります)。ログフレームワークとしてlog4jを使用し、それを使用してビジネスロジック側でエラーをログに記録しています。しかし、UI にバグがある場合に Eclipse がスローする UI エラーを処理する方法が見つかりません。例:
Caused by: org.eclipse.swt.SWTException: Widget is disposed
私はこれらのタイプのエラーについて話しています。では、この例外をどのように処理すればログ ファイルにログインでき、バグを特定できるのでしょうか。
このスタックオーバーフローの質問を試しましたが、基本的にはクラスpublic void eventLoopException(Throwable exception)
からのオーバーライドと書かれています。WorkbenchAdvisor
このようなUIプラグインプロジェクトの1つで、次のように試しました。
public class CustomWorkbenchAdvisor extends WorkbenchAdvisor {
@Override
public void eventLoopException(Throwable exception) {
System.out.println("Error occured");
super.eventLoopException(exception);
}
}
そして、意図的にUIエラーを作成しましたが、コンソールを見ると、「エラーが発生しました」が表示されず、代わりに次のように表示されます。
!MESSAGE Unhandled event loop exception
スタックトレースあり。この種のエラーを処理する方法を教えてもらえますか?