ブレークポイントのグループ化によって、ブレークポイントのセットを有効にすることができます。デバッガがコードの特定の場所に達したときに、無効になっているブレークポイントまたはブレークポイントのグループを有効にするように指定できます。
たとえば、アプリケーションでNullPointerException
がスローされていることがわかっている場合、コードがNullPointerExceptionを検出していても、常に正しく動作するとはかぎりません。まず、例外ブレークポイントを設定して、検出されるかどうかに関係なく、NullPointerException
がスローされたときにデバッガを停止するように指定します。デバッグを開始すると、予想以上のNullPointerExceptions
がスローされ、現在対象外のものも含めてNullPointerExceptions
が原因でデバッガが繰り返し停止することがわかります。この状況は、ブレークポイント・グループを作成し、このブレークポイントをグループに追加して、デバッグ中にデバッガがこのブレークポイントで停止しないように、ブレークポイント・グループを無効にすることで解決できます。
次に、問題のあるNullPointerException
がスローされる直前に実行されるコードにソース・ブレークポイントを作成できます。ソース・ブレークポイントに対して、このブレークポイントが発生したときに、例外ブレークポイントを含むブレークポイント・グループを自動的に有効にする処理を設定できます。
ブレークポイントでブレークポイント・グループを有効にするには、次のようにします。
java.lang.NullPointerException
と入力します。NPE
と入力します。NullPointerException
ブレークポイントがこのグループに含まれていることを確認します。NPE
」を選択します。これで、デバッグ時にはNullPointerException
ブレークポイントは無効になっているため、ソース・ブレークポイントが発生する前にスローされるNullPointerExceptions
では、デバッガは停止しません。ソース・ブレークポイントが発生すると、NullPointerException
ブレークポイントが有効となり、次にNullPointerException
がスローされるとプログラムは一時停止します。