デバッグツールウィンドウ
デバッガーセッションを開始すると、デバッグツールウィンドウが表示されます。このウィンドウを使用して、デバッガーセッションを制御し、プログラムデータ(フレーム、スレッド、変数など)を表示して分析し、さまざまなデバッガーアクションを実行します。
これは、デバッグツールウィンドウの概要です。ツールウィンドウの使用に関する一般的な手順については、ツールウィンドウを参照してください。
![デバッグツールウィンドウの概要 Debug tool window overview](https://resources.jetbrains.com/help/img/idea/2022.2/debug_overview.png)
セッション
使用可能なデバッグセッションは、デバッグツールウィンドウの上部でタブに分割されています。
![セッションタブ Session tabs](https://resources.jetbrains.com/help/img/idea/2022.2/debug_session_tabs.png)
特定の実行 / デバッグ構成に対してサービスウィンドウを有効にすると、これらの構成のいずれかをデバッグするときに、デバッグウィンドウのビュー全体がサービスウィンドウ内に表示されます。
インライン変数値や実行ポイントなどのすべての情報が、選択したセッションタブに表示されます。これは、同じクラスを使用する複数のデバッグセッションを並行して実行する場合に重要です。
![現在のセッションのインライン変数ビューと実行ポイント Inline variables view and execution point for the current session](https://resources.jetbrains.com/help/img/idea/2022.2/debug_session_tabs_example.png)
タブ
デバッグツールウィンドウには、セッションごとに次のタブが表示されます。
フレーム : スレッドの呼び出しスタックを移動できます。
変数 : 現在のコンテキストで使用可能な変数を一覧表示し、プログラムの状態を分析および変更できます。
監視式 : 監視を管理できます。デフォルトでは、画面スペースをより効率的に使用するために、監視は変数タブに表示されます。監視がたくさんある場合は、別のタブで表示することを検討してください。
コンソール: プログラム出力を表示します。
ローカルセッションの場合、タブは、デバッガーを接続せずにプログラムを実行したときと同じように機能します。唯一の違いは、デバッガー出力(たとえば、ブレークポイントからのログメッセージ)がコンソールに追加されることです。
プロセスにアタッチすると、プログラム出力はリダイレクトされず、デバッガー出力のみがデバッガーコンソールに表示されます。
スレッド : ライブスレッドのリストを表示し、切り替えることができます。このタブから、スレッド情報をテキスト形式でエクスポートできます。
メモリ : ヒープ上で現在使用可能なオブジェクトに関する情報を提供し、それらのライフタイムを監視および分析できます。
オーバーヘッド : 特定のデバッガー機能によって消費されるリソースを監視し、デバッガーのパフォーマンスを最適化できます。
タブを表示 / 隠す
をクリックして、表示するタブを選択します。
デフォルトレイアウトを復元する
デバッグツールウィンドウのレイアウトを変更し、新しい配置が気に入らない場合は、デフォルトの状態に戻すことができます。
デバッグツールウィンドウの右上隅にある
をクリックしてから、デフォルトレイアウトの復元をクリックします。
タブを移動する
好みに合わせてタブを配置できます。タブを別の場所に移動したり、タブを別のタブとグループ化して、画面上の同じスペースを共有できます。
タブヘッダーを目的の場所にドラッグします。青いフレームは宛先を示します。
関連ページ:
![](https://resources.jetbrains.com/help/img/idea/2022.2/debug_run_menu.png)
デバッガーセッションを開始する
デバッガーセッションの開始は、プログラムを通常モードで実行するのと非常によく似ています。デバッガーはバックグラウンドで接続されているため、デバッガーセッションを開始するために特別な設定を行う必要はありません。IntelliJ IDEA からプログラムを実行できる場合は、同じ構成を使用してプログラムをデバッグすることもできます。プログラムをデバッグするたびに、デバッガーセッションは実行 / デバッグ構成に基づいています。IntelliJ IDEA を構成して、プログラムを起動する前に任意のパラメー...
![](https://resources.jetbrains.com/help/img/idea/2022.2/toolwindow.png)
ツールウィンドウ
ツールウィンドウは、プロジェクト構造の表示、アプリケーションの実行とデバッグ、バージョン管理システムやその他の外部ツールとの統合、コード分析、検索、ナビゲーションなどの開発タスクへのアクセスを提供します。デフォルトでは、ツールウィンドウはメインウィンドウの下部と側面に接続されています。ただし、別のモニターなどで別のウィンドウとして使用するために、再配置したり、切り離したりすることもできます。次のスクリーンショットは、エディターの周囲のスペースを占めるいくつかの一般的なツールウィンドウを示していま...
![](https://pleiades.io/icons/idea.png)
サービスツールウィンドウ
サービスツールウィンドウで複数の実行 / デバッグ構成を管理できます。例: 複数のアプリケーションを開始、一時停止、停止し、それらのステータスを追跡し、アプリケーション固有の詳細を調べることができます。サービスウィンドウに実行 / デバッグ構成を追加するメインメニューからを選択するか、を押します。サービスツールウィンドウで、サービスの追加をクリックし、実行構成タイプを選択します。リストから実行 / デバッグ構成タイプを選択して、このタイプのすべての構成をウィンドウに追加します。ツールウィンドウ...
![](https://resources.jetbrains.com/help/img/idea/2022.2/debug_examining_frames_tab.png)
中断されたプログラムを調べる
デバッガーセッションの開始後、デバッグツールウィンドウが表示され、次のいずれかが発生するまでプログラムが正常に実行されます。ブレークポイントがヒットしました、プログラムを手動で一時停止する、その後、プログラムは中断され、現在の状態を調べたり、実行を制御したり、実行時にさまざまなシナリオをテストしたりできます。フレームを調べる:プログラムの状態はフレームで表されます。プログラムが一時停止すると、現在のフレームスタックがデバッグツールウィンドウのフレームタブに表示されます。フレームはアクティブなメ
![](https://resources.jetbrains.com/help/img/idea/2022.2/debug_memory_view.png)
JVM ヒープ内のオブジェクトを分析する
デバッグ時には、メモリタブを使用して、ヒープ内のすべてのオブジェクトの詳細を表示できます。IntelliJ IDEA を使用すると、インスタンスを追跡し、オブジェクトを生成または保持する条件を分析できます。この情報は、メモリリークとその原因を検出できます。一部のエラーは見落としやすいため、コード検査だけでは手がかりが得られない場合があります。例: 内部クラスは、外部クラスがガベージコレクションに適格になるのを妨げる可能性があり、最終的にになる可能性があります。このような場合、メモリタブと参照オブ...