Intelijのデバック時にブレークポイントから例外を投げる方法

IT

デバッグ時のブレークポイントで処理が止まっている時、
そこで例外を投げてCatchブロックの動きを見たいケースがあります。

Eclipseでは簡単にできたのですが、Intelijだと意外と苦戦しました。
未来の自分のためにやり方を残しておきます。

Intelijでブレークポイントから例外を投げる方法1

ブレークポイントで処理を止めている時、
デバッガータブの現在行を選択し、右クリックを押下。
出てきたメニューからThrow Excrptionを選択する。

投げる例外を記入してOKボタンを押すと例外を投げることができる。
しかし、僕の環境だとなぜか例外を投げられず、処理が継続してしまうケースがあった。
次に説明する方法2だとうまくいったので参考にしてください。

Intelijでブレークポイントから例外を投げる方法2

上部メニューのRun/DebuggingActions/Throw Exceptionを選択。

画像に alt 属性が指定されていません。ファイル名: image-2.png

方法1と同じように投げる例外を記入できるので前と同じく書く。
OKボタンを押下すると例外が投げられる。
方法1とやっていることは同じだと思われるが、
なぜか方法2をしないとうまく動作しない。
Versionとかのせいなのかもしれない…。

まとめ

Evaluate Expressionを開いて、
画像のようにthrow Exception()すればいけるかな?
と試したのですがダメでした。
意外と直感的に例外が投げられない…。

基本的に方法2を使っていれば、問題なく例外を投げられそうです。

IT

Posted by raishin