デバッガにより、コードを調べて問題のある領域を特定し修正するための多くの機能が提供されます。コードの分析には、ローカルとリモートの2種類のデバッグが可能です。
ローカル・デバッグ・セッションを開始するには、ソース・ファイルにブレークポイントを設定し、デバッガを開始します。JDeveloperでサーブレットなどのアプリケーションをデバッグする際は、実行フローを完全に制御して、変数の値を表示および変更できます。また、クラス・インスタンスのカウント数とメモリー使用量を監視することによって、アプリケーションのパフォーマンスを調べることができます。JDeveloperは、アプリケーションから他のソース・ファイルへのコールに従うか、またはソース・ファイルが使用できない場合はスタブ・クラスを生成します。
リモート・デバッグでは、2つのJDeveloperプロセスが必要です。1つはデバッガ・プロセス、もう1つはデバッグ対象プロセスです。デバッグ対象プロセスは異なるプラットフォームに存在している場合があります。デバッグ対象プロセスが開始し、デバッガ・プロセスがそのデバッグ対象プロセスにアタッチされた後は、リモート・デバッグとローカル・デバッグの動作は似ています。
JDeveloperでは、コード内で問題のある領域を効率的に特定できるようにする特殊な目的のデバッグ・ウィンドウが、次のように数多く提供されます。
「ブレークポイント」ウィンドウは、現在のワークスペースおよびプロジェクトのブレークポイントを表示します。詳細
「スマート・データ」ウィンドウは、ステップ実行中のコードで使用されているデータを表示します。詳細
「データ」ウィンドウは、現在のコンテキストの引数とローカル変数を表示します。
注意: 「プロジェクト・プロパティ」ダイアログのコンパイラ・ページで、「完全なデバッグ情報」が選択されている必要があります。詳細
「監視」ウィンドウは、監視されるプログラムの値を表示します。監視によって、現在のコンテキストに応じて式が評価されます。新しいコンテキストに移動すると、式は新しいコンテキストで再評価されます。詳細
「インスペクタ」ウィンドウは、1つのデータ項目を専用のフローティング・ウィンドウに表示します。インスペクタは、現在のコンテキストに応じて式を評価します。詳細
「スタック」ウィンドウは、現在のスレッドのコール・スタックを表示します。詳細
「クラス」ウィンドウは、各クラスの名前およびパッケージなど、アプリケーションが実行される際にロードされたクラスに関する情報を表示します。デバッガによって、各クラスのライブ・インスタンスの数、およびこれらのインスタンスで消費されるメモリーの量も表示できます。詳細
「モニター」ウィンドウは、アプリケーションのアクティブなモニターの情報とともに、これらのモニターにアクセスするスレッドのステータスに関する情報も表示します。このウィンドウは、デッドロックなどのスレッド同期問題を調べるために役立ちます。詳細
「スレッド」ウィンドウは、スレッドおよびスレッド・グループを表示し、現在のスレッドを強調表示します。また、各スレッドの名前、ステータス、優先順位およびグループを表示します。詳細
これらのデバッガ・ウィンドウは、「表示」「デバッガ」メニューから選択して開くことができます。
JDeveloperには、ADFコンポーネントをデバッグするために、次の3つのウィンドウも用意されています。
アプリケーションがブレークポイントで一時停止すると、「ADFデータ」ウィンドウには「ADF構造」ウィンドウでの選択内容に基づいて関連データが表示されます。詳細
デバッグ・セッション中にブレークポイントに達すると、「ELエバリュエータ」ウィンドウではEL式が評価されます。ELエバリュエータを使用できるのは、JSFアプリケーションのみです。詳細
ブレークポイントでアプリケーションが停止すると、「ADF構造」ウィンドウにはADFランタイム・オブジェクトのツリー構造とその関係が表示されます。詳細
各デバッガ・ウィンドウに表示する情報のタイプを制御できます。表示する列など、各ウィンドウで使用できるオプションを確認するには、ウィンドウを右クリックして、ポップアップ・メニューから「プリファレンス」を選択します。またはメイン・メニューから「ツール」「プリファレンス」を選択し、「デバッガ」ノードを展開して、各デバッガ・ウィンドウのプリファレンス・ページを表示することもできます。また、デバッグ情報をテキスト出力ファイルまたはHTML出力ファイルとして保存することもできます。方法
JDeveloperデバッガでは、次の方法でプログラムの実行を制御できます。
Copyright © 1997, 2009, Oracle. All rights reserved.