デバッガー

JDT にはデバッガーが組み込まれているので、ローカルまたはリモートで実行されているプログラムのエラーを検出し、 診断することができます。

デバッガーでブレークポイントを設定して起動を中断し、コードをステップスルーして変数の内容を 検査することによって、プログラムの実行をコントロールすることができます。

デバッガーには、クライアント / サーバーの設計が盛り込まれているので、使用しているワークステーションで ローカルに実行されているプログラムだけでなく、ネットワーク上の別のシステムでリモートに実行されているプログラムも デバッグすることができます。デバッガー・サーバーは、デバッグするプログラムと同じシステムで稼働します。 デバッグ対象のプログラムは、使用しているワークステーション上 (ローカル側でデバッグ)、または ネットワークを介してアクセス可能なシステム上 (リモート側でデバッグ) のいずれにあってもかまいません。

ブレークポイント (Breakpoints)

ブレークポイントとは、指定された点でプログラムを停止するようにデバッガーに対して指示するための、 プログラム内に設定された一時的なマーカーのことです。ワークベンチは、プログラムの実行中にブレークポイントを検出すると、 実行を中断し、対応するスレッドも中断するので (つまり、一時的に実行が停止するので)、そのスレッドの スタックの内容を確認することができます。

プログラムの実行は、ステートメントを実行する前に、ブレークポイントで中断します。これにより、変数とスタックの 内容を検査することができます。ステートメントをステップオーバーしたり、他のメソッドまたはクラスにステップイントゥ することもできます。あるいは、次のブレークポイントまで、またはプログラムの最後まで実行を続行することもできます。

実行が中断されないようにブレークポイントを使用不可にしておき、後でもう一度使用可能にすることもできます。

リモート側でデバッグ

リモート・デバッグを使用すると、あるシステムで実行しているアプリケーションを別のシステムでデバッグすることが できます。ローカル・システムがデバッガーを実行し、リモート・システムはデバッグ・エンジンとプログラムの両方を 実行します。

接続

リモート・デバッグに対する主要要件は、デバッグ対象のファイルが常駐している リモート・マシンにアクセス可能であるということです。 リモートでプログラムをデバッグする場合は、デバッグ・エンジン・デーモンが接続の listen を 開始します。接続が確立すると、プログラムのデバッグを開始することができます。

リモート・デバッグを使用する理由

リモート・デバッグは、以下のような場合に役立ちます。