変数に値が割り当てられたときにjdb(Eclipseデバッガーを介して使用している)を壊したい。特定の行にブレークポイントを設定することには興味がありませんが、より一般的には興味があります。
たとえば、x==nullのたびにブレークします。
そのようなことは達成可能ですか?
はい-セットアップする必要があるのは「条件付きブレークポイント」です。これにより、アプリケーションの特定の状態に達したときに、プログラムの実行を停止し、デバッガーをステップスルーすることができます。
したがって、特定の条件が満たされたときに実行の特定のポイントにジャンプしたいとします(添付の画像のように)。これは次のように実行できます。
デバッガーパースペクティブを開き、[ BreakPoints ]タブを選択します
コードファイルに新しいBreakPointを追加します-プログラムの実行を監視したい適切な場所に
次に、 [ブレークポイント]タブに戻り、新しく追加されたエントリを右クリックして、[ブレークポイントのプロパティ]を選択します。
起動する条件を設定します
Field Modification Watchpointsでかなり近づくことができます。それらはオブジェクトのフィールド (ローカル変数、パラメーター、または式ではない) に配置されることに制限されており、フィールドが書き込まれるたびにトリガーされますが、Eclipse が必要なものに最も近いものです。