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
編集:
Eclipse でキャッチされていない例外をすべて無効にした後、独自のロガーを使用してキャッチされていない例外を監視する jluzwick の回避策は技術的には機能しますが、理想的ではなく、ロガーが壊れていると見逃す可能性があります。
mazaneicha のソリューションは正しい方向に進んでいるように見えましたが、思い通りに動作させることができませんでした。これは、私の側のユーザー エラーが原因である可能性があります。
jluzwick と mazaneicha の両方がこの問題を回避できる可能性がありましたが、Konstantin Komissarchik は、ライブラリの作成者に修正をプッシュする必要があるという「正しい」答えを持っていました。技術的な解決策が適切でない場合もあります。