IntelliJ IDEA 2026.1 Help

チュートリアル: 最初の Java アプリケーションをデバッグする

作成して実行した Java アプリケーションです。 期待した通りに動作しないことに気付きます。 たとえば、誤った値を返す、または例外が発生してクラッシュする場合があります。 コードにエラーがあるようですので、デバッグのタイミングです。

このチュートリアルでは、IntelliJ IDEA デバッガーを使用して、Java アプリケーションのロジックエラーを見つけて修正する方法を学びます。

デバッグの基本的なワークフローを理解できます。ブレークポイントの設定やデバッグセッションの実行から、コードのステップ実行やプログラム状態の解析までを扱います。 この過程で、 デバッグ ツールウィンドウの使い方や、変数インスペクションとインラインデバッグを使用してプログラムロジックを検証する方法も学びます。

このチュートリアルでは、Java の基礎知識だけで十分です。 このチュートリアルは Java 25 の構文を使用しています。

デバッグとは

一般的に、デバッグとは、プログラム内のエラーを検出して修正するプロセスです。

対処しなければならないエラーには、さまざまな種類があります。 構文エラーなど、コンパイラーによって処理されるため、簡単に検出できるものもあります。 また、スタックトレースを確認することでエラーをすぐに特定できる場合もあり、原因を突き止めるのに役立ちます。

しかし、中には発見や修正に時間がかかる手強いエラーも存在します。 例えば、プログラムの初期段階で発生する微妙なロジックエラーは、後になってから表面化することがあり、原因を特定するのが大変です。

ここで デバッガーが役立ちます。 これは、プログラムの内部動作を観察することで、効率的にバグを発見できるツールです。 これは、指定されたポイントで実行を一時停止し、プログラムの状態を分析し、必要に応じて実行をステップごとに進めることで可能になります。 デバッグ中は、すべてを制御できます。 このチュートリアルでは、デバッグの基本的なシナリオについて説明します。

コードを調べる

簡単なデバッグのケースを試してみましょう。

新規プロジェクトを作成します

  1. IntelliJ IDEA を起動してください。

    'ようこそ' 画面が開いたら、「新規プロジェクト 」をクリックします。 それ以外の場合は、メインメニューの ファイル | 新規 | プロジェクト に移動します。

  2. 新規プロジェクト リストで、 Java を選択します。 プロジェクト名を入力します (例: AverageFinder )。

  3. Mavenビルドシステム として選択してください。

  4. JDK リストから、利用可能な最新の Oracle OpenJDK バージョンを選択します。

    JDK がコンピューターにインストールされているが、IDE で定義されていない場合は、 JDK を追加 を選択し、JDK ホームディレクトリへのパスを指定します。

    必要な JDK がコンピューターにインストールされていない場合は、 JDK のダウンロード を選択してください。

  5. サンプルコードの追加 オプションを選択してください。 作成 をクリックします。

    新しいプロジェクトを作成する

その後、IDE が新しいプロジェクトを作成してロードします。

コードを書く

  1. プロジェクトが作成されたら、 プロジェクト ツールウィンドウ (Alt+1) で src | main | java | org.example | Main.java ファイルを見つけてエディターで開きます。

  2. 既存のコードを次のコードサンプルに置き換えます。

    void main(String[] args) { IO.println("Average finder v0.1"); double avg = findAverage(args); IO.println("The average is " + avg); } private static double findAverage(String[] input) { double result = 0; for (String s : input) { result += Integer.parseInt(s); } return result; }
  3. アプリケーションを実行します (Shift+F10)。

このプログラムは、コマンドライン引数として渡されたすべての値の平均を計算するものです。

プログラムは問題なくコンパイルおよび実行されますが、結果が期待通りではありません。 例えば、 入力として 1 2 3 を渡すと、結果は 2.0 ではなく 6.0 になります。

まず、エラーがどこから発生しているかを考える必要があります。 問題は print ステートメントにはないと考えられます。 おそらく、予期しない結果は findAverage メソッドから生じています。 原因を見つけるために、実行時のその動作を調べてみましょう。

ブレークポイントの設定

バグを調査するには、誤った結果を生み出すコードに到達したときに、プログラムを一時停止する必要があります。 これは ブレークポイントを設定することで行います。 ブレークポイントは、状態を調べるためにプログラムが一時停止されるコード行を示します。

  • findAverage メソッドが呼び出される行のガターをクリックします。

    ブレークポイント

コードの行の隣の ガターに赤い点が表示されるのがわかります。 これがブレークポイントです。 プログラムがこの行に到達すると、IntelliJ IDEA デバッガーが実行を一時停止し、現在の状態を確認してプログラムが正しく動作しているかをチェックできます。

デバッグモードでプログラムを実行する

それでは、デバッグモードでプログラムを起動してみましょう。

プログラムの実行やデバッグ時に引数を渡す必要があるため、 実行 / デバッグ構成にこれらを追加しましょう。

  1. ガターの 実行 アイコンをクリックし、 実行構成の変更 を選択します。

    ガターの実行ボタン
  2. プログラム引数 フィールドに 1 2 3 と入力します。 変更を適用してダイアログを閉じます。

    引数は、プログラム引数フィールドに入力されます
  3. main メソッドの近くにある 実行 ボタンをクリックします。 メニューから デバッグ を選択します。

    ガターの実行ボタンをクリックすると、実行 / デバッグオプションのメニューが表示されます。

デバッガーセッションが開始され、指定した引数でプログラムが実行されます。

プログラムの状態を分析する

デバッガーセッションが開始されると、ブレークポイントに到達するまでプログラムは正常に実行されます。 このとき、IntelliJ IDEA はプログラムを一時停止し、停止した行をハイライトして、 デバッグ ツールウィンドウを表示します。

デバッグツールウィンドウが表示されます。 ブレークポイントの行がハイライト表示されます。

ハイライトされた行はまだ実行されていません。 これで、プログラムはあなたからのさらなる指示を待ちます。 中断状態では、プログラムの状態を保持する変数を調べることができます。

findAverage メソッドはまだ呼び出されていないため、 結果}]} as it appears in the context filed.}]} as it appears in the context filed.}]} as it appears in the context filed. などのすべてのローカル変数はまだスコープ内にありませんが、 引数 配列の内容を調べることができます (引数main メソッドのスコープ内にあります)。 変数の内容は、 引数 が使用されている場所にインラインで表示されます。

インラインデバッグでは、それぞれの変数が使用されている行に変数値が表示されます

デバッグ ツールウィンドウの スレッドと変数 タブで、現在スコープ内にあるすべての変数に関する情報を取得することもできます。

変数値は変数パネルに表示されます

プログラムのステップスルー

デバッグ ツールウィンドウに慣れたら、 findAverage メソッドにステップインして、中で何が起こっているのか調べましょう。

  1. メソッドにステップインするには、 デバッグ ツールウィンドウのツールバーで ステップイン ボタンをクリックするか、 F7 を押します。

    デバッグツールウィンドウの上部にあるボタンにステップインする

    実行ポイントを 1 ステップ進めたため、エディターでのハイライトが別の行に移動します。

  2. ステップを続けて、ローカル変数 結果}]} as it appears in the context filed.}]} as it appears in the context filed.}]} as it appears in the context filed. がどのように宣言され、ループの各反復でどのように変更されるかを見てみましょう。 変数 s"3" の値になるまで、 ステップイン をクリックし続けます。

    インラインデバッグは、変数値に関する情報を取得できます

    現在、変数 s には値 "3" が含まれています。 これは 整数に変換され、現在 3.0 の値を持つ 結果}]} as it appears in the context filed.}]} as it appears in the context filed.}]} as it appears in the context filed. に追加されます。 これまでのところエラーはありません。 合計は正しく計算されます。

  3. あと 2 ステップで 返却 ステートメントに到達し、省略されていた箇所が判明します。 入力数で割らずに、 6.0 の値を持つ 結果}]} as it appears in the context filed.}]} as it appears in the context filed.}]} as it appears in the context filed. を返しています。 これが、誤ったプログラム出力の原因でした。

    結果の値は引数の数で割らずにそのまま返されます
  4. エラーを修正しましょう。 return result; 行を、正しい計算式を含むコードに置き換えてください。

    return result / input.length;

デバッガーセッションを停止し、プログラムを再実行する

プログラムが正常に動作することを確認するには、デバッガーセッションを停止してプログラムを再実行します。

  1. デバッグ ツールウィンドウのツールバーで、 停止 をクリックするか、 Ctrl+F2 を押します。

    デバッガーセッションは、デバッグツールウィンドウの左側にある停止ボタンを使用して停止する
  2. main メソッドの近くにある 実行 ボタンをクリックします。 メニューから 実行 を選択します。

    ガターの実行ボタンをクリックすると、実行 / デバッグオプションのメニューが表示されます。
  3. ここでプログラムが正しく機能することを確認します。

    プログラムは現在 2.0 を出力する

要約

このチュートリアルでは、次の内容を学習しました。

  • コードの確認にはブレークポイントを設定しましょう

  • デバッグモードでプログラムを実行する

  • デバッガーを使ってプログラムの状態を解析します

  • エラーの原因を見つけるために、コードをステップ実行しましょう

次のステップ

IntelliJ IDEA で他のタスクを行う方法は、次のチュートリアルをご覧ください。

利用可能なチュートリアルの一覧は、 IntelliJ IDEA チュートリアル を参照してください。

2026 年 3 月 30 日