コードのデバッグ
IntelliJ IDEA は、Java コード用のデバッガーを提供します。インストール / 有効化されたプラグインに応じて、他の言語で記述されたコードをデバッグすることもできます。
デバッグセッション中に、デバッガーをアタッチしてプログラムを起動します。デバッガーの目的は、プログラムの実行を妨害し、内部で何が起こっているかに関する情報を提供することです。これにより、プログラムのバグを検出して修正するプロセスが容易になります。
デバッグする前に
でデバッグ情報を生成するオプションがオン(デフォルト設定)になっていることを確認してください。
この設定はデバッグに絶対に必要なわけではありませんが、有効のままにすることをお勧めします。これを無効にすると、一部のデバッガー機能を犠牲にしてディスク領域を節約できます。
で一般的なデバッグプロパティと動作を構成します。
デバッグが初めての場合は、すぐに使用できる構成が機能します。各デバッガー機能に関するトピックは、参照を提供し、該当する場合は関連する設定を説明します。上級ユーザーで、特定のプロパティを探している場合は、デバッガーリファレンスセクションを参照してください。
カスタム実行 / デバッグ構成を使用する場合は、実行 / デバッグ構成を定義します。これは、プログラムに引数を渡す必要がある場合、または起動前に特別なアクティビティを実行する必要がある場合に必要です。実行 / デバッグ構成のセットアップの詳細については、「実行 / デバッグ構成」セクションを参照してください。ほとんどの場合、引数を期待しない、特別な要件がない単純なプログラムをデバッグする場合、これは必要ありません。
一般的なデバッグ手順
アプリケーションをデバッグするための万能の手順はありません。実際の要件に応じて、異なるアクションを異なる順序で使用する必要がある場合があります。このトピックでは、一般的なデバッグ手順を表す一般的なガイドラインを提供します。特定の機能をいつどのように使用するかについての詳細は、それぞれのトピックで説明されています。
プログラムを停止する必要がある場所を定義します。これはブレークポイントを使用して行われます。ブレークポイントは特別なマーカーであり、デバッガーがプログラム状態に介入してフリーズする必要があるときの場所と条件を表します。デバッガーによってフリーズされたプログラムは、「一時停止」と呼ばれます。
ブレークポイントを使用する代わりに、任意の時点でプログラムを手動で一時停止することもできますが、この方法ではデバッガーの機能にいくつかの制限が課せられ、プログラムを一時停止するタイミングに関する精度が高くなりません。
プログラムをデバッグモードで実行します。対応する実行構成がデバッグをサポートしている限り、これは通常のアプリケーション、単体テスト、その他の実行可能コードである可能性があります。
プログラムの定期的な実行と同様に、複数のデバッグセッションを同時に実行できます。
プログラムが中断された後、デバッガーを使用して、プログラムの状態および実行中のプログラムの状態に関する情報を取得します。
デバッガーは、変数値、スレッドの現在の状態、現在ヒープにあるオブジェクトの内訳などに関する情報を提供します。また、例外をスローする(たとえば、処理方法を確認する)か、プログラム実行の途中で任意のコードを実行することにより、さまざまな条件でプログラムをテストできます。
これらのツールを使用すると、特定の時点でのプログラムの状態を調べることができますが、ステップ機能を使用すると、プログラムの段階的な実行を制御できます。ツールを組み合わせることで、バグの原因を推測し、プログラムの堅牢性をテストできます。
修正する必要があるものを決定したら、セッションを終了せずに修正できます。この目的のために、IntelliJ IDEA は、コードの一部をオンザフライで調整および再ロードできる機能を提供します。このアプローチは、修正されたクラスを再ロードするトピックで説明されています。
デバッガーの復習
IntelliJ IDEA デバッガーにすでに精通していて、さまざまな便利な機能とアプローチの概要を知りたい場合は、デバッガーリフレッシャービデオシリーズを参照してください。
Debugger Essentials は、行ブレークポイント、ステップ、デバッグセッションの制御、監視、式の評価、ブレークポイント条件などの基本的なトピックをカバーしています。
Debugger Advanced は、ブレークポイントの型と設定、高度なステップ、リモートデバッグ、レンダラーなどをカバーしています。
Debugger Professional は、HotSwap の使用、ラベルのデバッグ、非同期スタックトレース、逆コンパイルされたコードのデバッグなどの高度なトピックをカバーしています。
関連ページ:
プラグインのインストール
プラグインは IntelliJ IDEA のコア機能を拡張します。例: プラグインをインストールして、次の機能を取得します。バージョン管理システム、課題追跡システム、ビルド管理サーバー、その他のツールとの統合。さまざまな言語とフレームワークのコーディング支援サポート。ショートカットのヒント、ライブプレビュー、ファイルウォッチャーなど。新しいプログラミング言語を学ぶのに役立つコーディング演習。プラグイン設定を開くを押して設定を開き、を選択します。マーケットプレースタブを使用して、JetBrains...
デバッガー設定
このページを使用して、デバッガーの動作を構成し、そのビューをカスタマイズします。共通オプション:ブレークポイントでデバッグウィンドウを表示するこのチェックボックスが選択されている場合、IntelliJ IDEA はブレークポイントに到達するとデバッグツールウィンドウをアクティブにします。ブレークポイントでアプリケーションにフォーカスするこのチェックボックスが選択されている場合、ブレークポイントを押すと、IntelliJ IDEA はエディターにこのブレークポイントの位置を表示し、そのフレームを...
実行 / デバッグ構成
IntelliJ IDEA は、実行 / デバッグ構成を使用して、コードを実行、デバッグ、テストします。各構成は、何を実行し、どのパラメーターと環境を使用するかを定義する、名前付きのスタートアッププロパティのセットです。実行 / デバッグ構成には 2 つのタイプがあります。一時的 — 永続的な構成を持たないクラスを実行するたびに作成されます。これは、メソッドを持つクラスの実行を可能にする最低限のものを提供します。永続的 — テンプレートから明示的に作成されるか、一時的な構成を保存することによって作成...
ブレークポイント
ブレークポイントは、特定のポイントでプログラムの実行を一時停止する特別なマーカーです。これにより、プログラムの状態と動作を調べることができます。ブレークポイントは、たとえば、特定のコード行に到達したときにプログラムを一時停止するなどの単純なものから、追加の条件をチェックしたり、ログに書き込んだりするなどのより複雑なロジックを含むものまであります。ブレークポイントは、一度設定すると、一時的なブレークポイントを除き、明示的に削除するまでプロジェクト内に残ります。ブレークポイントの種類:Intell
デバッガーセッションを開始する
デバッガーセッションの開始は、プログラムを通常モードで実行するのと非常によく似ています。デバッガーはバックグラウンドで接続されているため、デバッガーセッションを開始するために特別な設定を行う必要はありません。IntelliJ IDEA からプログラムを実行できる場合は、同じ構成を使用してプログラムをデバッグすることもできます。プログラムをデバッグするたびに、デバッガーセッションは実行 / デバッグ構成に基づきます。これにより、アプリケーションを起動するためのパラメーターとアクションを構成できます...
中断されたプログラムを調べる
デバッガーセッションが開始されると、デバッグツールウィンドウが表示され、次のいずれかが発生するまでプログラムが正常に実行されます。ブレークポイントがヒットしました、プログラムを手動で一時停止する、その後、プログラムは中断され、現在の状態を調べたり、実行を制御したり、実行時にさまざまなシナリオをテストしたりできます。フレームを調べる:プログラムの状態はフレームで表されます。プログラムが一時停止すると、現在のフレームスタックがデバッグツールウィンドウのフレームタブに表示されます。フレームはアクティ