第01章 開発環境構築

01_environment

第01章 Java開発環境を準備しよう

独学用の演習・段階別ヒント・自己確認: こちらから開く。各節を学んだあとに利用してください。

この章の読み方: 本文の基本説明、直後の発展解説、例題、演習の順に読んでください。専門用語は初めて出てきた箇所で意味を確認し、コードの予想結果を考えてから実行します。

章末の演習は、それまでの本文の内容を使って解けるように設計しています。

全章共通の用語・説明方針: 用語と文章表現の基準 を参照できます。分からない単語はこの章の説明と照らし合わせてください。

Java実務研修教材/初心者向け・Windows 11版
学習時間の目安:4〜7時間(ダウンロード時間やPCの状態によって変わります)
最終更新:2026年10月14日

この章について

この章では、Javaの勉強を始める前に必要なソフトウェアを自分のパソコンへ導入します。初めてプログラミングに触れる人を対象に、何をインストールするのか、なぜ必要なのか、どこを操作すればよいのかを順番に説明します。

パソコンの操作に慣れていない場合でも、焦って先へ進む必要はありません。各節の最後にある「確認」を終えてから次へ進んでください。 うまくいかないときは第13節のトラブルシューティングを参照してください。

この研修では無料で利用できるソフトウェアを中心に使用します。GitHubなどのクラウドサービスへの登録は必須ではありません。**ただし、最初のダウンロードとMavenの初回実行にはインターネット接続が必要です。

** ダウンロード後は、基本的な学習をローカルPCで進められます。

この章の到達目標

章を終えた時点で、次の作業を自分で実施できるようになることを目指します。

  1. JDK(Javaの開発に必要な道具)をインストールし、コマンドで動作を確かめる。
  2. Eclipse(プログラムを書くための統合開発環境)を起動し、Javaのプログラムを作成する。
  3. Javaプログラムを実行し、画面にメッセージを表示する。
  4. Mavenでプロジェクトをビルドし、テストを実行する。
  5. Gitで変更を記録し、コマンドで履歴と差分を確認する。
  6. 発生したエラーの場所を調べ、基本的な問題を切り分ける。

読み方の注意: 第01章は開発に必要な道具の名前が多く登場します。最初から暗記する必要はありません。

JDK はJavaのソースコードをコンパイルするための道具、JVM はコンパイルされたJavaプログラムを実行する仕組み、Eclipse は編集や実行を助ける画面付きの開発ツール、Maven はビルドや依存ライブラリ管理を一定の手順で行う道具、Git は変更履歴を管理する道具です。

役割を一つずつ確認してから操作へ進みましょう。

01. 最初に知っておきたい言葉

1-1. プログラムとは何か

プログラムは、コンピューターに実行してほしい処理を、一定のルールに従って書いた指示の集まりです。たとえば「画面に文字を表示する」「二つの数値を足す」「データベースから情報を取り出す」といった処理を記述します。

Javaは、その指示を書くためのプログラミング言語の一つです。人が書いたJavaのコードを「ソースコード」と呼びます。ソースコードはそのままでは実行できないため、実行できる形式へ変換する処理が必要です。

1-2. コンパイルと実行

Javaでは一般的に、ソースコード(.javaファイル)をコンパイルして、バイトコード(.classファイル)を作ります。バイトコードは、Java仮想マシン(JVM)が実行する形式です。

HelloJava.java(人が書いたソースコード)
       │
       ▼ javac(コンパイラ:変換するプログラム)
HelloJava.class(バイトコード)
       │
       ▼ java(JVMを起動して実行)
コンソールに「こんにちは、Java!」と表示

コンソールとは、プログラムが出力した文字などを確認する画面のことです。今後、Eclipse内の「コンソール」ビューでも確認します。

1-3. JDK・JRE・JVMの違い

  • JVM(Java Virtual Machine):Javaのバイトコードを実行する仕組みです。
  • JRE(Java Runtime Environment):Javaのプログラムを動かすための実行環境を指す言葉です。
  • JDK(Java Development Kit):JVMやコンパイラなど、Javaのプログラムを開発するための道具をまとめたものです。

本研修ではプログラムを作成するので、JDKをインストールします。別途JREをインストールする必要はありません。

1-4. IDE(統合開発環境)とは

ソースコードはメモ帳でも入力できます。ただし、実務では複数のファイルを扱い、入力ミスの発見やプログラムの実行・調査が必要です。

このため、コード編集・実行・調査を一つの画面にまとめた**IDE(Integrated Development Environment:統合開発環境)**を使用します。

本教材では Eclipse IDE を使います。Eclipseには文字の色分けや入力補助、エラー表示、デバッグ(問題を調べる機能)などがあります。

1-5. MavenとGitは何のために使うのか

**Maven(メイブン)**は、Javaプロジェクトの「ビルド」を支援する道具です。ビルドとは、ソースコードをコンパイルしたり、テストを実行したり、成果物をまとめたりする一連の処理を指します。

また、必要な外部ライブラリ(他の人が作った再利用可能なプログラム)を管理できます。

**Git(ギット)**は、ソースコードの変更履歴を保存するための仕組みです。いつ、どのファイルを、どのように変更したかを記録できます。

GitはWindows上でコマンドから操作できます。GitHubのアカウントがなくてもローカルで履歴を管理できます。


理解を深める:道具の役割を一枚の図で理解する

あなた(ソースコードを書く)
  │
  ├─ メモ帳 ────────────── HelloJava.java
  │                             │
  │                       JDK の javac
  │                             ▼
  │                        HelloJava.class
  │                             │
  │                       JDK の java / JVM
  │                             ▼
  │                         実行結果
  │
  └─ Eclipse(編集・保存・ビルド・実行・デバッグを画面から支援)
          │
          ├─ JDK(コンパイル・実行)
          ├─ Maven(依存ライブラリ取得・テスト・ビルド)
          └─ Git(変更履歴の保存・コマンドで確認)

EclipseはJavaを動かす機能を提供しますが、コンパイラや実行環境として利用するJDKの設定が必要です。MavenはJava言語そのものではなく、複数ファイルのコンパイル・外部ライブラリ・テストをまとめて扱う道具です。

GitはコンパイルやJavaの実行には関わらず、ファイルの変更履歴を記録します。

この節の理解度チェック(01-01)

問題: Hello.javaを書いて実行する場合、JDK・javac・JVMの役割をそれぞれ説明してください。

本文をいったん閉じ、自分の言葉で解答を書いてからヒント・解答を開いてください。

ヒント1:考える方向

まず .java と .class のどちらが人間の書いたソースなのか確認します。

ヒント2:注目する部分

javac Hello.java の入力と生成物を矢印で結んでください。

ヒント3:解法の手掛かり

「開発に必要な道具一式」「変換する道具」「変換後を実行する仕組み」をJDK・javac・JVMに対応させます。

模範解答と理由

JDKはJavaプログラムを開発するための道具一式です。javacはJDKに含まれるコンパイラで、Hello.javaをコンパイルしてHello.class(バイトコード)を生成します。JVMはそのバイトコードを実行する仮想マシンです。

この節の自己採点基準(3点満点)

採点条件(各1点)

  1. 1点: JDKをJavaの開発ツール一式と説明する。
  2. 1点: javacがJavaソースをバイトコード(.class)にコンパイルすると説明する。
  3. 1点: JVMがバイトコードを実行すると説明する。

正答例: JDKはJavaプログラムを開発するための道具一式です。javacはJDKに含まれるコンパイラで、Hello.javaをコンパイルしてHello.class(バイトコード)を生成します。JVMはそのバイトコードを実行する仮想マシンです。

部分点の例: 上記の独立した条件のうち満たした項目だけに1点ずつ加算し、満たさない項目は0点です。

誤答として扱う具体例: JDKをJVMそのものと説明し、javacがJavaソースを実行すると答える。

合格条件:3/3点。 独立した条件が満たされているかだけを採点してください。

復習方法: 不足した採点条件の用語・具体例をこの節の本文で確認してから再回答してください。

次へ進む条件: 正解とその理由を説明できること。説明できない場合はこの節の例題へ戻ってください。

図解:Javaのコンパイルと実行

Javaのコンパイルと実行

図の読み方:JDKにはjavacなどの開発用ツールが含まれ、JVMが.classを実行します。

02. 作業前にパソコンを確認する

本書の操作説明は Windows 11の64ビットPC を想定しています。会社管理のPCではソフトウェアをインストールする権限がない場合があります。その場合は管理者や講師へ確認してください。

2-1. Windowsの種類を調べる

  1. キーボードの Windowsキー を押します。
  2. 検索欄に「設定」と入力して「設定」を開きます。
  3. 左側の「システム」を選び、下へスクロールして「バージョン情報」を開きます。
  4. 「システムの種類」を確認します。「64ビット オペレーティング システム」と表示されていれば、通常のx64版を選べます。
  5. CPUがARM系である場合は、ダウンロード時の種類が変わることがあります。判断できなければ講師に確認してください。

2-2. 作業用フォルダーを作成する

教材や練習プログラムを保存する場所を決めます。以後の説明では、Windowsにログインしている利用者のフォルダー配下に java-training を作ります。

  1. エクスプローラー(黄色いフォルダーのアイコン)を開きます。
  2. アドレスバーに %USERPROFILE% と入力して Enter キーを押します。
  3. 空いている場所で右クリックして「新規作成」→「フォルダー」を選びます。
  4. フォルダー名を java-training にします。
  5. その中に workspace と work の二つのフォルダーを作ります。
%USERPROFILE%\java-training\
├── workspace\   ← Eclipseがプロジェクトを管理する作業場所
└── work\        ← コマンド練習や配布ファイルを置く場所

ここで %USERPROFILE% は、現在Windowsにログインしている利用者のホームフォルダーを表す値です。実際の場所は C:\Users\(Windowsの利用者名) のようになります。

以降、文字列をそのまま入力する箇所と、自分の環境に合わせて変更する箇所を区別して説明します。

確認: エクスプローラーで二つのフォルダーが表示されることを確かめてください。


この節の理解度チェック(01-02)

問題: Windowsでjava -versionは表示できるのにjavac -versionが認識されない場合、最初に何を調べますか。

本文をいったん閉じ、自分の言葉で解答を書いてからヒント・解答を開いてください。

ヒント1:考える方向

エラーはJavaプログラムの実行時ではなく、コマンド名の検索時に出ています。

ヒント2:注目する部分

java と javac の実体が別々の場所にないか調べます。

ヒント3:解法の手掛かり

JDKがあるか確認し、where java と where javac の結果およびJDKのbinへのPATHを調べます。

模範解答と理由

JDKの導入有無と、PATHにJDKのbinが含まれるかを確認します。Windowsではwhere javaとwhere javacで実際の参照先を確認できます。

この節の自己採点基準(3点満点)

採点条件(各1点)

  1. 1点: JDKがインストールされているか確認する。
  2. 1点: PATHにJDKのbinが設定されているか確認する。
  3. 1点: where java / where javac 等で参照先を調べる。

正答例: JDKの導入有無と、PATHにJDKのbinが含まれるかを確認します。Windowsではwhere javaとwhere javacで実際の参照先を確認できます。

部分点の例: 上記の独立した条件のうち満たした項目だけに1点ずつ加算し、満たさない項目は0点です。

誤答として扱う具体例: Javaの文法の書き間違いだけを疑い、JDKやPATHを確認しない。

合格条件:3/3点。 独立した条件が満たされているかだけを採点してください。

復習方法: 不足した採点条件の用語・具体例をこの節の本文で確認してから再回答してください。

次へ進む条件: 正解とその理由を説明できること。説明できない場合はこの節の例題へ戻ってください。

03. JDKをインストールする

3-1. 使用するJavaの種類

JavaのJDKには複数の配布元があります。本研修では、無料で利用できる Eclipse Temurin JDK 21(LTS) を使用します。LTSは長期サポート版を表す呼び方です。

新しい版が表示されても、研修では受講者同士の環境を揃えるため、21を選びます。

公式サイト:https://adoptium.net/temurin/releases/?version=21

3-2. ダウンロードする

  1. ブラウザーで上の公式サイトを開きます。
  2. Version:21 を選びます。
  3. Operating System:Windows を選びます。
  4. Architecture:x64 を選びます(ARM版PCの場合は該当する種類を選択)。
  5. Package Type:JDK を選びます。JREだけを選ばないように注意してください。
  6. Windows向けの .msi インストーラーをダウンロードします。

画面の表記やボタン配置は更新されることがあります。迷ったときは「Windows」「x64」「JDK」「21」という4点を基準に確認してください。

3-3. インストールする

  1. ダウンロードした .msi ファイルをダブルクリックします。
  2. インストール画面が表示されたら「Next」を押して進めます。
  3. ライセンスへの同意を求められたら、内容を確認して進めます。
  4. インストールする機能の選択画面で、PATH環境変数への追加 と JAVA_HOMEの設定 の項目を確認します。設定できる場合は有効にします。
  5. 「Install」でインストールを実行します。Windowsから確認画面が表示された場合は内容を確認してください。
  6. 完了したら「Finish」を押します。

PATH(パス)環境変数は、コマンドの名前を入力したときにWindowsが実行ファイルを探すフォルダー一覧です。

JAVA_HOMEは、JDKがどこにインストールされているかを他の開発ツールに伝えるための環境変数です。

3-4. コマンドプロンプトを開く

  1. Windowsキーを押します。
  2. 「cmd」と入力します。
  3. 表示された「コマンド プロンプト」を選択します。
  4. 黒い画面が表示されます。この画面では、キーボードから命令(コマンド)を入力できます。

インストール前からコマンドプロンプトを開いていた場合は、一度閉じて新しく開き直してください。環境変数の変更が古い画面に反映されないことがあるためです。

3-5. Javaの動作を確認する

次のコマンドを1行ずつ入力し、各行の末尾でEnterを押してください。

java -version
javac -version

表示例(細かい更新番号は異なります):

openjdk version "21.0.x" ...
javac 21.0.x

java はプログラムを実行する命令、javac はJavaのソースコードをコンパイルする命令です。どちらも21系のバージョンが表示されれば成功です。

次に次のコマンドを入力します。

echo %JAVA_HOME%
where java
where javac

echo は指定された値を表示する命令です。where はコマンドがどの場所の実行ファイルを参照するかを調べる命令です。

JAVA_HOME が空だったり、想定外のJDKが使われていたりする場合は第13節を参照してください。

確認: java -version と javac -version の両方が実行できることを記録してください。


独学ステップ:JDKから画面表示までの流れを予測する

ここまでに覚えた道具は、すべて同じ仕事をするものではありません。

書く          変換する                 実行する                 確かめる
Hello.java ──> javac Hello.java ──> java Hello ──> コンソールの表示
                  │                    │
               Hello.class            JVM

ソースコードは人間が書いた指示です。javac はその指示をバイトコードへ変換します。java コマンドはJVMを起動し、バイトコードを実行します。

考えてから確認しましょう。 javac の実行だけで文字列が画面に表示されるでしょうか。通常は表示されません。コンパイルはプログラムを実行する操作ではないからです。

小さな練習: Hello.java に System.out.println("A"); を含めて実行し、次に文字列を B に変更してください。保存しただけで実行結果は変わるでしょうか。再度コンパイルしてから実行し、結果を比べます。

  • ヒント1:java コマンドが実行するのは、どの拡張子のファイルでしょうか。
  • ヒント2:.java を変更しても、既存の .class は自動では更新されません。
  • 確認基準:再コンパイル前の出力と再コンパイル後の出力の違いを、自分の言葉で説明できれば達成です。

この節の理解度チェック(01-03)

問題: JDKを導入した後に、コンパイラまで使えることを確認するコマンドを2つ答えてください。

本文をいったん閉じ、自分の言葉で解答を書いてからヒント・解答を開いてください。

ヒント1:考える方向

実行環境だけでなく、ソースを変換できることも確認します。

ヒント2:注目する部分

Javaの実行コマンドとコンパイラのコマンドは異なります。

ヒント3:解法の手掛かり

バージョンを表示する java と javac の2コマンドを挙げます。

模範解答と理由

java -versionとjavac -versionです。両方が使え、意図したJDKを参照しているか確かめます。

この節の自己採点基準(2点満点)

採点条件(各1点)

  1. 1点: java -version を挙げる。
  2. 1点: javac -version を挙げる。

正答例: java -versionとjavac -versionです。両方が使え、意図したJDKを参照しているか確かめます。

部分点の例: 上記の独立した条件のうち満たした項目だけに1点ずつ加算し、満たさない項目は0点です。

誤答として扱う具体例: java -version を2回実行すればコンパイラも確認できると答える。

合格条件:2/2点。 独立した条件が満たされているかだけを採点してください。

復習方法: 不足した採点条件の用語・具体例をこの節の本文で確認してから再回答してください。

次へ進む条件: 正解とその理由を説明できること。説明できない場合はこの節の例題へ戻ってください。

04. Javaをコマンドだけで動かしてみる

Eclipseを使う前に、Javaプログラムが動くまでの流れを確かめます。少し手間に感じるかもしれませんが、「エディターで書いたコードがどのように実行されるか」を理解するための大切な作業です。

4-1. テキストファイルを作る

  1. メモ帳を開きます。
  2. 次のコードをそのまま入力します。
public class HelloJava {
    public static void main(String[] args) {
        System.out.println("こんにちは、Java!");
    }
}
  1. メモ帳の「ファイル」→「名前を付けて保存」を選びます。
  2. 保存場所を %USERPROFILE%\java-training\work にします。
  3. ファイル名を HelloJava.java とします。
  4. 「ファイルの種類」を「すべてのファイル」に変更し、文字コードを選択できる場合は「UTF-8」を選びます。
  5. 保存後、エクスプローラーで HelloJava.java というファイルがあることを確認します。HelloJava.java.txt になっていないか注意してください。

4-2. コードの読み方

今はコードのすべてを暗記する必要はありません。まず、次のように理解してください。

  • public class HelloJava {:HelloJava という名前のクラスを定義し始めています。クラスとは、Javaのプログラムを構成する基本的なまとまりです。詳しくは第03章で学びます。
  • public static void main(String[] args) {:このプログラムを起動したとき、最初に実行する処理の入口を定義しています。細かな意味は後の章で説明します。
  • System.out.println("こんにちは、Java!");:かっこ内の文字をコンソールに表示し、最後に改行します。
  • { と }:処理や定義のまとまりの開始と終了を表します。
  • ;(セミコロン):Javaでは多くの文の終わりに記述する記号です。

HelloJava というクラス名と、ファイル名 HelloJava.java が一致していることに注目してください。今回のように public なクラスを定義する場合、この名前を一致させる必要があります。

4-3. コンパイルする

コマンドプロンプトを開き、次の2行を順番に入力してください。

cd /d "%USERPROFILE%\java-training\work"
javac -encoding UTF-8 HelloJava.java

cd は作業中のフォルダーを変更する命令です。/d はドライブが異なる場合にも移動するための指定です。

javac はソースコードをコンパイルし、-encoding UTF-8 はソースコードの文字コードを明示します。

成功すると、通常はエラーメッセージを表示せずに終了します。同じフォルダーに HelloJava.class が作られていることを確認してください。

4-4. 実行する

java HelloJava

実行結果:

こんにちは、Java!

java HelloJava.java ではなく、ここでは java HelloJava と入力します。コンパイルしてできたクラスを実行するため、クラス名に .class を付けません。

確認: HelloJava.java と HelloJava.class の二つのファイルがあり、コンソールに日本語のメッセージが表示されれば成功です。


この節の理解度チェック(01-04)

問題: Hello.javaをjavac Hello.javaでコンパイルした後、実行するコマンドはjava Hello.javaとjava Helloのどちらを基本として学習しますか。また何が生成されますか。

本文をいったん閉じ、自分の言葉で解答を書いてからヒント・解答を開いてください。

ヒント1:考える方向

今回は先にjavacでコンパイルする手順です。

ヒント2:注目する部分

javac Hello.java の後に作られるファイル名を思い出します。

ヒント3:解法の手掛かり

.class を作った後は拡張子を書かずにクラス名を java に指定します。

模範解答と理由

この教材での基本手順はjava Helloです。javacがHello.classを生成し、クラス名Helloを指定して実行します(Javaにはソースファイルを直接起動する別の方法もあります)。

この節の自己採点基準(2点満点)

採点条件(各1点)

  1. 1点: 生成物が Hello.class であると答える。
  2. 1点: 基本実行コマンドが java Hello だと答える。

正答例: この教材での基本手順はjava Helloです。javacがHello.classを生成し、クラス名Helloを指定して実行します(Javaにはソースファイルを直接起動する別の方法もあります)。

部分点の例: 上記の独立した条件のうち満たした項目だけに1点ずつ加算し、満たさない項目は0点です。

誤答として扱う具体例: javac Hello.java で Hello.exe ができ、java Hello.class で実行すると答える。

合格条件:2/2点。 独立した条件が満たされているかだけを採点してください。

復習方法: 不足した採点条件の用語・具体例をこの節の本文で確認してから再回答してください。

次へ進む条件: 正解とその理由を説明できること。説明できない場合はこの節の例題へ戻ってください。

05. Eclipseをインストールする

5-1. Eclipseを利用する理由

コマンドだけでもJavaプログラムを作成できますが、ファイルが増えると管理が難しくなります。Eclipseを使うと、プログラムの入力・ファイル管理・実行・エラー確認を同じ画面から行えます。

公式サイト:https://www.eclipse.org/downloads/packages/

5-2. ダウンロードとインストール

  1. 公式サイトにアクセスします。
  2. 配布パッケージの中から Eclipse IDE for Enterprise Java and Web Developers を選びます。
  3. 自分のWindowsに適した64ビット版を選択してダウンロードします。
  4. Eclipse Installer形式を選んだ場合はインストーラーを起動し、Eclipse IDE for Enterprise Java and Web Developers を選択します。ZIP形式を選んだ場合はファイルを展開し、展開先にある eclipse.exe を起動します。
  5. JDKの選択を求められた場合は、第03節で導入した Java 21のJDK を選びます。
  6. Eclipseを起動します。Windowsのセキュリティ確認画面が表示された場合は、ダウンロード元を確認してから操作します。

Eclipseには複数の配布方法があり、画面や手順が異なる場合があります。重要なのは**「Eclipse IDE for Enterprise Java and Web Developers」のパッケージを導入すること**です。このパッケージにはJava開発に加えてWeb・エンタープライズ開発向けの機能が含まれます。

5-3. ワークスペースを設定する

初回起動時には「Workspace(ワークスペース)」の場所を求められます。ワークスペースとは、Eclipseが開発プロジェクトや設定を管理する作業用フォルダーです。

  1. 「Select a directory as workspace」のような画面で、フォルダーの参照ボタンを押します。
  2. 第02節で作成した %USERPROFILE%\java-training\workspace を選びます。
  3. 「Launch」を押します。
  4. Eclipseのメイン画面が表示されたら成功です。

※ Windowsの環境変数表記 %USERPROFILE% がEclipseの入力欄では展開されない場合、エクスプローラーでそのフォルダーを開き、アドレスバーの実際のパス(例:C:\Users\taro\java-training\workspace)をコピーして指定してください。

5-4. 画面の主な部分

  • Package Explorer(パッケージ・エクスプローラー):Javaのプロジェクトやファイルの一覧を見る場所です。
  • Editor(エディター):ソースコードを入力する場所です。
  • Console(コンソール):プログラムの実行結果を見る場所です。
  • Problems(問題):コンパイルなどで見つかった問題を確認する場所です。
  • Outline(アウトライン):クラス内の要素の一覧を確認する場所です。

画面配置はバージョンや設定で変わります。メニューに「Window」→「Show View」がある場合、そこから必要なビューを表示できます。

5-5. Java 21が選択されているか確認する

  1. Eclipseのメニューから Window → Preferences を開きます。
  2. 左側の Java → Installed JREs を開きます。
  3. Java 21のJDKが一覧にあり、使用するものにチェックが付いているか確認します。
  4. 見つからない場合は「Add」から「Standard VM」を選び、JDKのインストール先フォルダーを指定します(ボタンや画面名は版によって異なります)。
  5. 設定を確定します。

ここで表示される項目名が「Installed JREs」でも、開発にはJDKを登録してください。

確認: Eclipseが起動し、Package Explorerが見え、Java 21を指定できれば成功です。


理解を深める:Eclipse操作の再現用ナビゲーション

使用するEclipseのリリースによってアイコン位置や訳語が異なります。画面画像を現行バージョンで検証していないため、ここでは機能名・確認対象・代替手順を示します。実際に存在しないボタン名を推測して押さないでください。

手順A:Javaパースペクティブを開く

  1. Eclipseを起動します。Workspaceを選ぶ画面で、%USERPROFILE%\java-training\workspace を指定します。
  2. Welcome(ようこそ)が表示された場合は、そのタブを閉じます。
  3. 画面右上にJavaの表示がなければ、メニューの Window → Perspective → Open Perspective → Other… → Java を選びます。
  4. 左側に Package Explorer(パッケージ・エクスプローラー)が見えることを確かめます。見えなければ Window → Show View → Package Explorer を使います。
  5. 下部に Console が見えなければ Window → Show View → Console を選びます。

手順B:Javaプロジェクトを作る

  1. File → New → Java Project を選択します。選択肢がなければ File → New → Other… → Java → Java Project を選びます。
  2. Project nameに EnvironmentPractice と入力します。
  3. 実行環境欄のJRE/JDKがJava 21を指していることを確認します。21 がなければ先に Window → Preferences → Java → Installed JREs → Add… からインストール済みのJDKを指定します。
  4. プロジェクトを作成して、Package Explorerに EnvironmentPractice と src が現れたら成功です。
  5. src を右クリックし New → Class を選び、Nameへ HelloJava と入力します。public static void main(String[] args) の生成オプションがあれば選んでも構いません。ない場合は第04節のコードを手入力します。
  6. Ctrl+Sで保存し、コード内を右クリックして Run As → Java Application を選びます。Consoleに こんにちは、Java! が表示されたら成功です。

手順C:エラーの場所を発見する

  1. System.out.println の末尾のセミコロンだけを削除して保存します。
  2. 赤い×、Problemsビュー、またはエディタの波線を確認します。Eclipseのバージョンで表示は違います。
  3. セミコロンを戻して保存し、問題表示が消えたことを確かめます。
  4. なぜ赤い表示になったかを自分の言葉で記録します。「Javaの文を終了する記号がなく、文法規則に反したため」という説明ができれば十分です。

この節の理解度チェック(01-05)

問題: EclipseでJavaプロジェクトを作るのと、Javaファイルを作るのは同じ作業ですか。

本文をいったん閉じ、自分の言葉で解答を書いてからヒント・解答を開いてください。

ヒント1:考える方向

「プロジェクト」は設定とファイルの入れ物です。

ヒント2:注目する部分

Javaプロジェクトに複数のクラスファイルを配置できるか考えます。

ヒント3:解法の手掛かり

プロジェクト作成と、プロジェクト内の .java 作成を2工程に分けます。

模範解答と理由

同じではありません。Javaプロジェクトは設定やソースをまとめる単位で、.javaファイルはその中に作るソースコードです。

この節の自己採点基準(2点満点)

採点条件(各1点)

  1. 1点: プロジェクトとJavaファイルの作成は同じではないと答える。
  2. 1点: プロジェクトは設定・ソースをまとめ、.javaはその中のソースファイルだと説明する。

正答例: 同じではありません。Javaプロジェクトは設定やソースをまとめる単位で、.javaファイルはその中に作るソースコードです。

部分点の例: 上記の独立した条件のうち満たした項目だけに1点ずつ加算し、満たさない項目は0点です。

誤答として扱う具体例: Javaプロジェクトを作成した瞬間に、すべてのJavaクラスが自動作成されると答える。

合格条件:2/2点。 独立した条件が満たされているかだけを採点してください。

復習方法: 不足した採点条件の用語・具体例をこの節の本文で確認してから再回答してください。

次へ進む条件: 正解とその理由を説明できること。説明できない場合はこの節の例題へ戻ってください。

06. Eclipseで最初のプログラムを作る

6-1. Javaプロジェクトを作る

プロジェクトとは、一つのプログラムやシステムに必要なソースコード・設定・関連ファイルをまとめた単位です。

  1. Eclipseのメニューから File → New → Java Project を選びます。見つからない場合は File → New → Other → Java → Java Project と進みます。
  2. Project name に HelloEclipse と入力します。
  3. JREやExecution environmentの設定が表示された場合は JavaSE-21 または導入したJDK 21を選びます。
  4. 今回はJavaの基本動作だけを確認するため、モジュール記述子 module-info.java の作成を求められたら作成しない設定にします(表示されない場合はそのままで構いません)。
  5. 「Finish」を押します。

Package Explorerに HelloEclipse が表示されれば、プロジェクトの作成は成功です。

6-2. クラスを作る

  1. HelloEclipse の中にある src(ソースコードの保存場所)を右クリックします。
  2. New → Class を選択します。
  3. Name に HelloEclipse と入力します。
  4. 「public static void main(String[] args)」を作るチェック欄があれば選択します。ない場合は次のコードを自分で入力すればよいので問題ありません。
  5. 「Finish」を押します。
  6. 開いたエディターで、内容を次のコードに合わせます。
public class HelloEclipse {
    public static void main(String[] args) {
        System.out.println("Eclipseから実行できました!");
    }
}

もし先頭に package ...; という行が自動作成されている場合は、その行を消さずに残して、その下のクラス定義を上記のようにしてください。package はクラスを分類する名前で、後の章で説明します。

6-3. 保存して実行する

  1. Ctrl + S を押してファイルを保存します。
  2. エディター内を右クリックし、Run As → Java Application を選びます。上部の緑の再生ボタンから実行できることもあります。
  3. Consoleに次の文字が表示されることを確認します。
Eclipseから実行できました!

「エラー」とは、プログラムの書き方や設定などに問題がある状態です。Eclipseがコードに赤い下線や×印を付けたときは、まずその場所へマウスを合わせて表示される説明を読んでください。

6-4. わざとエラーを出してみる

次のように、println の末尾のセミコロンを一度だけ削除して保存します。

System.out.println("Eclipseから実行できました!")

Eclipseがエラーを指摘することを確認します。続いてセミコロンを元へ戻し、Ctrl + Sで保存して再実行してください。エラーは失敗の証明ではなく、原因を特定するための情報です。

確認: Eclipseから実行でき、意図的に起こしたエラーを修正できれば成功です。


この節の理解度チェック(01-06)

問題: EclipseでSystem.out.println("OK");を実行してコンソールにOKが出た場合、何が確認できますか。

本文をいったん閉じ、自分の言葉で解答を書いてからヒント・解答を開いてください。

ヒント1:考える方向

表示されたメッセージは、どの実行操作から出ましたか。

ヒント2:注目する部分

コンソール表示に成功した事実と、まだ触っていないツールを分けます。

ヒント3:解法の手掛かり

プログラムの実行と標準出力は確認できますが、Maven・DB・Gitの動作確認とは別です。

模範解答と理由

少なくとも選択したプログラムの実行とコンソール出力が成功したと分かります。MavenやMySQL、Gitまで正常とは言えません。

この節の自己採点基準(3点満点)

採点条件(各1点)

  1. 1点: 指定したプログラムが実行されたと答える。
  2. 1点: コンソールに OK が出力されたことを確認できたと答える。
  3. 1点: Maven・MySQL・Gitの正常動作まで確認したわけではないと区別する。

正答例: 少なくとも選択したプログラムの実行とコンソール出力が成功したと分かります。MavenやMySQL、Gitまで正常とは言えません。

部分点の例: 上記の独立した条件のうち満たした項目だけに1点ずつ加算し、満たさない項目は0点です。

誤答として扱う具体例: OK が出たのでMySQLへの接続とGitコミットも確認できたと答える。

合格条件:3/3点。 独立した条件が満たされているかだけを採点してください。

復習方法: 不足した採点条件の用語・具体例をこの節の本文で確認してから再回答してください。

次へ進む条件: 正解とその理由を説明できること。説明できない場合はこの節の例題へ戻ってください。

07. Mavenを使う準備

7-1. なぜMavenが必要なのか

Javaの実務システムは一つのファイルだけではできていません。複数のクラスやテストコードがあり、外部ライブラリを使うこともあります。Mavenを使うと、プロジェクトごとに決められた方法でコンパイル・テスト・パッケージ化できます。

Mavenの設定ファイルは一般に pom.xml という名前です。POMはProject Object Modelの略で、「このプロジェクトで使用するJavaのバージョンや外部ライブラリなど」を定義します。

XMLは設定情報を一定の構造で書くための形式です。

7-2. Maven本体をインストールする

EclipseにはMavenとの連携機能が含まれることがありますが、研修ではコマンドからも使えるようにApache Maven本体を導入します。

公式サイト:https://maven.apache.org/download.cgi

  1. 公式サイトから Apache Maven 3.x系のBinary zip archive を取得します。公式サイトに表示される安定版の3.x系を利用してください。受講者間で環境を揃えたい場合は、講師が具体的なバージョンを指定します。
  2. ダウンロードしたZIPファイルを展開します。
  3. 展開してできた apache-maven-3.x.x フォルダーを、例として C:\tools\apache-maven-3.x.x に配置します(x は実際の更新番号です)。
  4. C:\tools を作成できない場合は、自分が書き込み可能な別の場所を使ってください。置き場所を変えた場合、以降のパスも読み替えます。

7-3. MavenのPATHを登録する

  1. Windowsキーを押し、「環境変数」と検索します。
  2. 「システム環境変数の編集」を選びます。
  3. 「環境変数」を押します。
  4. 「ユーザー環境変数」の Path を選んで「編集」を押します。管理者権限がない場合はユーザー環境変数で構いません。
  5. 「新規」を押して、Mavenの bin フォルダーの実際の場所(例:C:\tools\apache-maven-3.x.x\bin)を追加します。
  6. 開いている画面を「OK」で閉じます。
  7. コマンドプロンプトを新しく開き直します。

bin は、実行するコマンドが置かれることの多いフォルダー名です。Mavenを展開したフォルダー自体ではなく、末尾の bin まで登録する点に注意してください。

7-4. Mavenの動作確認

mvn -version

表示内容に Apache Maven 3.x.x と Java version: 21... のような情報が含まれていることを確認します。もしコマンドが見つからない場合は、第13節を参照してください。

補足: Mavenは初回ビルド時に必要なプラグインやライブラリをダウンロードしてローカルへ保存します。

そのため初回はインターネット接続が必要であり、初回に取得していないライブラリを使う作業は完全なオフラインでは実施できません。


理解を深める:環境変数が働く仕組み

コマンドを入力すると、WindowsはPATHに登録されたフォルダーを順に探します。

JAVA_HOME はJDKの場所を示す目印であり、JAVA_HOMEを設定しただけでは java コマンドの場所がPATHへ自動追加されるとは限りません。両方を確認します。

コマンドプロンプト(cmd.exe)での確認:

java -version
javac -version
echo %JAVA_HOME%
where java
where javac

PowerShellでの確認:

java -version
javac -version
$env:JAVA_HOME
Get-Command java
Get-Command javac

%JAVA_HOME% はコマンドプロンプトの書き方です。PowerShellでは $env:JAVA_HOME を使います。両者を混同しないことが重要です。

where はPowerShellで別の意味に解釈される場合があるため、PowerShellでは Get-Command を使用します。

復旧ケース1:java は21、javac が見つからない

JREだけをインストールした場合やPATHに古い実行環境が残っている場合が考えられます。JAVA_HOME がJDKのルートフォルダーを指しているか確認します。

例えば C:\Program Files\Eclipse Adoptium\jdk-21... のようなパスです(実際のフォルダー名はPCによって異なります)。

その中の bin\javac.exe があるかエクスプローラーで確認してください。存在しない場合はJDKを再インストールします。

復旧ケース2:java -version が別のバージョン

where java で複数のパスが出る場合は、先に表示された実行ファイルが使われる可能性があります。環境変数の編集画面でJDK 21の bin へのパスを確認します。

ほかのプログラムで必要な設定を不用意に削除しないでください。変更後はコマンド画面を閉じて開き直して確認します。

復旧ケース3:EclipseとコマンドでJavaバージョンが違う

Eclipseの Window → Preferences → Java → Installed JREs で選ばれている環境と、コマンドプロンプトの java -version は別々に設定されることがあります。

それぞれJava 21か確認します。既存プロジェクトのJava設定もプロジェクトの Properties → Java Build Path または Java Compiler で確認します。

復旧ケース4:Mavenだけが見つからない

新しいコマンド画面で mvn -version を入力します。見つからない場合はMavenを展開したフォルダーの bin がPATHに含まれるか確かめます。

mvn が動いても Java version: が21でなければ JAVA_HOME を再点検します。

依存関係の取得失敗はPATHの問題ではなく、インターネット接続・プロキシ・リポジトリへの到達性の問題である可能性があります。

この節の理解度チェック(01-07)

問題: Mavenは何のために使うツールですか。JDKやEclipseと役割を区別してください。

本文をいったん閉じ、自分の言葉で解答を書いてからヒント・解答を開いてください。

ヒント1:考える方向

3つの道具を「言語処理」「編集支援」「ビルド管理」に分けます。

ヒント2:注目する部分

依存ライブラリとビルド手順を管理する設定ファイル名に注目します。

ヒント3:解法の手掛かり

JDK=開発・実行、Eclipse=IDE、Maven=pom.xmlを使う依存・ビルド・テスト管理です。

模範解答と理由

JDKはJava開発・実行の道具、Eclipseはコード編集を支援するIDE、Mavenはpom.xmlを使い依存関係・ビルド・テスト実行などを管理するツールです。

この節の自己採点基準(3点満点)

採点条件(各1点)

  1. 1点: JDKはJava開発・実行の基盤であると説明する。
  2. 1点: Eclipseはコード作成等を支援するIDEであると説明する。
  3. 1点: Mavenはpom.xmlで依存・ビルド・テストを管理すると説明する。

正答例: JDKはJava開発・実行の道具、Eclipseはコード編集を支援するIDE、Mavenはpom.xmlを使い依存関係・ビルド・テスト実行などを管理するツールです。

部分点の例: この節は正答要素が1つなので部分点はありません。

誤答として扱う具体例: MavenはJavaソースを書くエディタで、EclipseがJVMの代わりにバイトコードを実行すると答える。

合格条件:3/3点。 独立した条件が満たされているかだけを採点してください。

復習方法: 不足した採点条件の用語・具体例をこの節の本文で確認してから再回答してください。

次へ進む条件: 正解とその理由を説明できること。説明できない場合はこの節の例題へ戻ってください。

図解:JAVA_HOMEとPATH

JAVA_HOMEとPATH

図の読み方:JAVA_HOMEはJDKの配置先、PATHはコマンドを探すフォルダーの一覧です。

08. Mavenプロジェクトを作成してビルドする

この節では、配布教材に付属する examples/01_environment/maven-hello を利用します。Mavenの規則に沿った最小限のフォルダー構成と設定ファイルを用意してあります。

8-1. フォルダーの構成

maven-hello/
├── pom.xml
└── src/
    ├── main/
    │   └── java/
    │       └── training/
    │           └── HelloMaven.java
    └── test/
        └── java/
            └── training/
                └── HelloMavenTest.java

src/main/java はアプリケーション本体のソースコードを置く場所です。src/test/java は動作が正しいかを確認するテストコードを置く場所です。

8-2. 配布フォルダーをコピーする

  1. 配布された教材の examples/01_environment/maven-hello を開きます。
  2. フォルダー全体を %USERPROFILE%\java-training\work の下へコピーします。
  3. コピーした場所の中に pom.xml があることを確かめます。
  4. コマンドプロンプトを開きます。
  5. 次のコマンドを入力します。
cd /d "%USERPROFILE%\java-training\work\maven-hello"
dir

dir はフォルダーの中にあるファイルやフォルダーを表示する命令です。結果に pom.xml が含まれていることを確認してください。

8-3. コンパイルとテストを実行する

mvn clean test

clean は前回のビルドで作られた成果物(通常は target フォルダー)を削除する処理です。test はソースコードをコンパイルし、テストを実行する処理です。

初回はダウンロードに時間がかかることがあります。最後に次のメッセージが出れば成功です。

BUILD SUCCESS

Tests run: 1, Failures: 0, Errors: 0 のように表示されたら、付属テストが一つ成功したことも確認できます。出力の細かな表現や順序は環境で変わります。

8-4. 実行する

java -cp target\classes training.HelloMaven

想定結果:

Mavenプロジェクトから実行できました!

-cp はクラスを探す場所(クラスパス)を指定します。今回、target\classes にコンパイル後のファイルがあるため、このフォルダーを指定しています。

training.HelloMaven の training はパッケージ名です。

8-5. EclipseからMavenプロジェクトを開く

  1. Eclipseで File → Import を選びます。
  2. Maven → Existing Maven Projects を選択し、「Next」を押します。
  3. Root Directoryに %USERPROFILE%\java-training\work\maven-hello の実際のパスを指定します。
  4. pom.xml のプロジェクトが検出されたことを確認して「Finish」を押します。
  5. Package Explorerにプロジェクトが表示されることを確認します。

確認: mvn clean test が成功し、EclipseにMavenプロジェクトを取り込めれば成功です。


この節の理解度チェック(01-08)

問題: Mavenプロジェクトのpom.xmlは何を記述するファイルですか。

本文をいったん閉じ、自分の言葉で解答を書いてからヒント・解答を開いてください。

ヒント1:考える方向

Mavenがプロジェクトごとに知る必要がある情報を想像します。

ヒント2:注目する部分

外部ライブラリやビルド設定をどこに記述するか考えます。

ヒント3:解法の手掛かり

pom.xmlにはプロジェクト識別情報・依存関係・ビルドやテストの設定を記載します。

模範解答と理由

pom.xmlはプロジェクトの識別情報、依存ライブラリ、ビルド・テスト設定などを定義するMavenの設定ファイルです。

この節の自己採点基準(2点満点)

採点条件(各1点)

  1. 1点: pom.xmlをMavenのプロジェクト設定ファイルと答える。
  2. 1点: 依存ライブラリとビルド・テスト等の設定を記載すると答える。

正答例: pom.xmlはプロジェクトの識別情報、依存ライブラリ、ビルド・テスト設定などを定義するMavenの設定ファイルです。

部分点の例: この節は正答要素が1つなので部分点はありません。

誤答として扱う具体例: pom.xmlはJavaの実行結果を保存するログファイルだと答える。

合格条件:2/2点。 独立した条件が満たされているかだけを採点してください。

復習方法: 不足した採点条件の用語・具体例をこの節の本文で確認してから再回答してください。

次へ進む条件: 正解とその理由を説明できること。説明できない場合はこの節の例題へ戻ってください。

09. Gitをインストールする

9-1. なぜ変更履歴を残すのか

開発中にプログラムを書き換えると、「昨日は動いていたのに、どこを変えたら動かなくなったのか分からない」といった問題が発生します。Gitでは、作業の区切りごとに変更をコミットとして保存できます。

コミットとは、その時点の変更を履歴として記録する操作です。

今回はパソコン内だけでGitを使います。GitHubやBitbucketへ公開する必要はありません。

公式サイト:https://git-scm.com/downloads/win

9-2. Git for Windowsをインストールする

  1. 上のサイトからWindows向けGitインストーラーをダウンロードします。
  2. インストーラーを起動します。
  3. 特別な指定がない限り、研修では標準設定を基本にして進めます。インストール中にエディターの選択画面が出たら、表示内容を確認して選択します。
  4. 完了後、コマンドプロンプトを新しく開きます。
  5. 次のコマンドを実行します。
git --version

git version ... のように表示されれば成功です。

9-3. 自分の名前を登録する

Gitは、変更を記録した人の名前とメールアドレスを履歴に残します。研修用として次を自分の名前・メールアドレスに置き換えて実行してください。第三者の情報は入力しないでください。

git config --global user.name "Taro Yamada"
git config --global user.email "taro@example.com"

--global は、このWindowsユーザーで利用するGit全体の設定を表します。example.com は説明用のドメインです。実際に使用する場合は、講師の指示に沿った自分のメールアドレスなどに変更します。

git config --global user.name
git config --global user.email

上の2行で、登録した内容を確認してください。


この節の理解度チェック(01-09)

問題: git --versionが成功した場合、Gitのコミットまで成功したといえますか。

本文をいったん閉じ、自分の言葉で解答を書いてからヒント・解答を開いてください。

ヒント1:考える方向

バージョン表示は何を実行した事実ですか。

ヒント2:注目する部分

コミットするには、リポジトリと履歴を作る操作が別に必要です。

ヒント3:解法の手掛かり

git --versionが示すのはGitコマンドの利用可能性だけです。

模範解答と理由

いいえ。Gitコマンドを実行できることを確かめたのみです。リポジトリ作成やコミットの成功は別に確認します。

この節の自己採点基準(2点満点)

採点条件(各1点)

  1. 1点: コミット成功とは言えないと答える。
  2. 1点: git --versionはGitのコマンド実行可能性を確認しただけだと説明する。

正答例: いいえ。Gitコマンドを実行できることを確かめたのみです。リポジトリ作成やコミットの成功は別に確認します。

部分点の例: 上記の独立した条件のうち満たした項目だけに1点ずつ加算し、満たさない項目は0点です。

誤答として扱う具体例: バージョン番号が出ればリポジトリの初回コミットが完了したと答える。

合格条件:2/2点。 独立した条件が満たされているかだけを採点してください。

復習方法: 不足した採点条件の用語・具体例をこの節の本文で確認してから再回答してください。

次へ進む条件: 正解とその理由を説明できること。説明できない場合はこの節の例題へ戻ってください。

10. Gitで最初の履歴を記録する

10-1. 練習用フォルダーへ移動する

cd /d "%USERPROFILE%\java-training\work\maven-hello"

以降のコマンドは、pom.xml があるフォルダーで実行してください。場所が違うと、意図しないファイルをGitの管理対象にしてしまうことがあります。

10-2. Gitの管理を開始する

git init

これでフォルダー内に .git というGit管理用の隠しフォルダーが作られます。通常、.git の中身を直接編集する必要はありません。

10-3. 管理しないファイルを指定する

Mavenの target フォルダーには、ソースコードから再生成できるコンパイル結果が入ります。通常はGitへ登録しません。配布サンプルには .gitignore が用意されているので、内容を確認してください。

/target/
/.settings/
/.classpath
/.project

.gitignore は、Gitの管理対象に含めたくないファイルやフォルダーを指定するための設定ファイルです。ただし、すでにGitに登録したファイルには、後から無視設定を追加しても自動では適用されません。

10-4. 状態を調べ、コミットする

git status
git add .
git commit -m "Initial Java training project"
git log --oneline
  • git status:変更されたファイルや登録待ちのファイルを確認します。
  • git add .:現在のフォルダー以下の変更を、次のコミットの候補として登録します。実務では必要なファイルを選んで登録することもあります。
  • git commit -m "...":候補として登録した変更を履歴へ保存します。-m の後ろは変更内容を示す短いメッセージです。
  • git log --oneline:保存した履歴を1行ずつ表示します。

git log --oneline の結果に Initial Java training project があれば成功です。

10-5. 一度変更して二回目のコミットを作る

  1. src/main/java/training/HelloMaven.java を開きます。
  2. "Mavenプロジェクトから実行できました!" を "Gitの変更履歴を学習しています!" に変更します。
  3. ファイルを保存します。
  4. 次のコマンドを実行します。
git diff
git add src/main/java/training/HelloMaven.java
git commit -m "Change greeting message"
git log --oneline

git diff は変更前と変更後の違いを表示します。履歴にコミットが二つあることを確かめてください。

確認: Gitの履歴を二つ表示できれば成功です。


この節の理解度チェック(01-10)

問題: git initの直後にgit statusを実行する理由を説明してください。

本文をいったん閉じ、自分の言葉で解答を書いてからヒント・解答を開いてください。

ヒント1:考える方向

初期化直後の作業ツリーの状態を知りたい場面です。

ヒント2:注目する部分

git initの後にまだ何を保存していないか考えます。

ヒント3:解法の手掛かり

git statusでブランチ・追跡状況を確認し、git initだけではコミット履歴はできないと整理します。

模範解答と理由

初期化したリポジトリ内で、ブランチや未追跡・変更中のファイルがどの状態か確認するためです。git initだけではファイルの履歴は作成されません。

この節の自己採点基準(2点満点)

採点条件(各1点)

  1. 1点: git statusでブランチや未追跡・変更ファイルの状態を確認すると説明する。
  2. 1点: git initだけではコミット履歴が作成されないと区別する。

正答例: 初期化したリポジトリ内で、ブランチや未追跡・変更中のファイルがどの状態か確認するためです。git initだけではファイルの履歴は作成されません。

部分点の例: 上記の独立した条件のうち満たした項目だけに1点ずつ加算し、満たさない項目は0点です。

誤答として扱う具体例: git initはすべてのファイルを自動的にコミットするのでstatusは不要と答える。

合格条件:2/2点。 独立した条件が満たされているかだけを採点してください。

復習方法: 不足した採点条件の用語・具体例をこの節の本文で確認してから再回答してください。

次へ進む条件: 正解とその理由を説明できること。説明できない場合はこの節の例題へ戻ってください。

11. Gitコマンドで履歴と差分を確認する

Gitの変更履歴はGit for Windowsのコマンドだけで確認できます。追加のGUIアプリやクラウドアカウントは不要です。

11-1. 対象リポジトリを確認する

PowerShellで、前の節で作成したプロジェクトのフォルダーへ移動します。以下のフォルダー名は自分の作業環境に合わせて読み替えてください。

cd "$HOME\java-training\work\maven-hello"
git status
git rev-parse --show-toplevel

git rev-parse --show-toplevel に現在のリポジトリのルートが表示されることを確認します。リポジトリの外ではエラーになります。

11-2. 履歴と差分を確認する

git log --oneline -5
git show --stat HEAD
git show HEAD

git log は履歴、git show --stat HEAD は直近コミットの変更ファイルと行数、git show HEAD は変更内容を表示します。先ほど作成した2件のコミットが履歴にあることを確認してください。

11-3. 次のコミットを安全に作る

git status
git diff
git add README.md
git diff --cached
git commit -m "docs: 説明を追記"
git log -1 --oneline

README.md は実際に変更したファイルです。変更前に1行追記しておきます。git diff --cached で意図した行だけがコミット対象になっていることを確認します。未設定のGitユーザー名・メールアドレスが原因でコミットできない場合は、第08章の設定方法を参照してください。


この節の理解度チェック(01-11)

問題: git commit の前に、コミット対象ファイルと行単位の変更内容を確認するためのコマンドをそれぞれ答えてください。

ヒント1

まず作業ツリーの状態と変更ファイルの一覧を調べます。

ヒント2

git add の前後で、確認する差分が変わります。

ヒント3

ステージ後の変更内容は git diff にオプションを加えて確認します。

模範解答・自己採点

git status で対象ファイルを確認し、git diff --cached でステージ済みの行単位の変更を確認します。git add 前の差分は git diff で確認します。

自己採点(2点満点)

  1. git status でコミット対象の状態を確認すると答えたら1点。
  2. git diff --cached(または git diff --staged)でステージ済みの行単位の差分を確認すると答えたら1点。

部分正答例: git status だけなら1点。誤答例: git log で未コミットの変更差分を確認できると答えるのは誤り。

合格: 2/2点。誤答した場合は「11-3. 次のコミットを安全に作る」を再実行します。

12. 開発現場での基本的な作業習慣

12-1. 作業前に対象フォルダーを確認する

コマンドは「どこのフォルダーで実行しているか」によって結果が変わります。コマンドプロンプトの左側に表示される現在地を確認し、不安な場合は cd(現在地を表示)や dir(中身を表示)を使いましょう。

12-2. エラーをすべて消してから先へ進む

プログラムが動かない場合は、エラーの最初の原因を確認します。一つの入力ミスから多数のエラーが発生することもあります。メッセージを消してしまう前に、画面の内容を記録してください。

12-3. 変更を小さく区切る

プログラムを大量に書き換えてから動かすと、どの変更に問題があったか分かりにくくなります。小さく変更し、保存し、実行してから次へ進みます。Gitのコミットも作業の区切りごとに作るのが基本です。

12-4. パスワードや秘密情報を記録しない

実務ではパスワード、認証トークン、顧客情報などを扱う可能性があります。そのような情報をソースコードやGitのコミットへ書き込んではいけません。 この教材では、実際の秘密情報を使用しません。


独学ステップ:困ったときの原因の切り分け

「動きません」だけでは原因を調べられません。まず、どの操作で・何という表示が出たかを分けて記録します。

観察した現象 最初に確認すること 次に見ること
java が認識されない java -version が成功するか PATHにJDKのbinが含まれているか
javac だけ使えない javac -version JDKではなく実行環境だけを参照していないか
cannot find symbol エラーが示す行と名前 変数・クラス名の綴り、大文字小文字
Could not find or load main class 実行しているフォルダー クラス名、package の有無
Eclipseに赤い印が出る Problemsビューの最初のエラー JRE System Libraryとソースの位置

練習: 存在しない変数 message2 を使うコードを書き、エラー全文と行番号を記録します。変数名を修正し、エラーが消えることを確認してください。

失敗は学習の一部です。ただし、エラーが解消されないまま別の操作に進むと、原因が増えて調査が難しくなります。

この節の理解度チェック(01-12)

問題: 演習でソースを変更する前にGitコミットを作る利点を一つ説明してください。

本文をいったん閉じ、自分の言葉で解答を書いてからヒント・解答を開いてください。

ヒント1:考える方向

変更前後の差分が分かるようにするには何を残すべきでしょうか。

ヒント2:注目する部分

Git履歴から戻せるのはどの状態か考えます。

ヒント3:解法の手掛かり

変更前をコミットすると比較や復元が可能になりますが、未コミット変更は別途注意します。

模範解答と理由

変更前の状態を履歴として残せば、変更差分の確認や元の状態への復元がしやすくなります。ただし未コミット作業や未追跡ファイルの扱いには注意が必要です。

この節の自己採点基準(1点満点)

採点条件(各1点)

  1. 1点: 変更前を履歴に残して差分確認や復元が容易になる利点を挙げる。

正答例: 変更前の状態を履歴として残せば、変更差分の確認や元の状態への復元がしやすくなります。ただし未コミット作業や未追跡ファイルの扱いには注意が必要です。

部分点の例: 上記の独立した条件のうち満たした項目だけに1点ずつ加算し、満たさない項目は0点です。

誤答として扱う具体例: Gitはコミットしなくても、すべての未保存ファイルを永久保存すると答える。

合格条件:1/1点。 独立した条件が満たされているかだけを採点してください。

復習方法: 不足した採点条件の用語・具体例をこの節の本文で確認してから再回答してください。

次へ進む条件: 正解とその理由を説明できること。説明できない場合はこの節の例題へ戻ってください。

13. よくある問題と対処方法

Q1. java は実行できるのに javac が実行できません

原因の例: JDKではなくJREだけを導入している、またはPATHが別のJavaを指しています。

確認方法: where java と where javac を実行し、参照先を調べます。Java 21のJDKがインストールされているかを確認します。必要に応じてJDKの bin をPATHへ設定します。

Q2. java -version で21以外が表示されます

原因の例: PCに複数のJavaがあり、古いJavaが優先されています。

確認方法: where java で先に見つかる場所を調べます。JAVA_HOME と Path の設定を確認します。

既存の開発環境に影響する可能性があるため、仕事で使用中のJavaをむやみにアンインストールしないでください。

Q3. JAVA_HOME が設定されていません

Windowsの環境変数設定画面で、JDKをインストールした実際のフォルダーを JAVA_HOME として登録します。

例:C:\Program Files\Eclipse Adoptium\jdk-21...(フォルダー名は環境によって異なります)。

JAVA_HOME には bin を付けず、Pathへ %JAVA_HOME%\bin を追加します。変更後はコマンドプロンプトを開き直します。

Q4. javac の実行後に .class がありません

まずエラーメッセージが出ていないか確認してください。また、現在のフォルダーが HelloJava.java のある場所か、dir で確認します。

ファイル名が HelloJava.java.txt になっていないかも確認します。

Q5. Could not find or load main class と表示されます

クラス名の入力や実行場所が正しくないことが考えられます。第04節では HelloJava.class がある場所で java HelloJava を実行します。大文字と小文字、ピリオド、余計な空白を確認してください。

Q6. Eclipseでプロジェクトの作成時にJava 21が見つかりません

Eclipseの Window → Preferences → Java → Installed JREs を開き、JDK 21を登録・選択してください。

Eclipse自体を動かすJavaと、作成するプロジェクトで使用するJavaは、設定上異なる場合があります。

Q7. Mavenで mvn が見つかりません

Mavenを解凍したフォルダーに bin\mvn.cmd があるか確認してください。Pathには、mvn.cmd が入っているbinフォルダーを登録します。環境変数を変更したあとはコマンドプロンプトを開き直します。

Q8. Mavenのダウンロードで失敗します

ネットワーク接続、プロキシ(組織のネットワークを中継する仕組み)、セキュリティソフトなどが原因の可能性があります。エラー末尾のメッセージを記録し、講師やPC管理者に相談してください。

インターネット接続なしの環境では、初回の依存ファイル取得に失敗することがあります。

Q9. Gitのコミットで Author identity unknown と表示されます

コミット作者の名前・メールアドレスが未設定です。第09節の git config --global user.name と git config --global user.email を確認し、設定してください。

Q10. 画面の文字が日本語で文字化けします

文字化けとは、文字コードなどの不一致により、本来の日本語が正しく表示されない現象です。まずソースコードをUTF-8で保存し、第04節と同じ javac -encoding UTF-8 を使ってください。

Javaプログラム内の日本語が正しく処理されても、Windowsの端末の表示設定によっては文字化けが起こることがあります。必要に応じて講師へ画面と実行コマンドを共有してください。


この節の理解度チェック(01-13)

問題: 'javac' は内部コマンドまたは外部コマンドとして認識されていませんと表示されたら、Javaの構文ミスを最初に疑いますか。

本文をいったん閉じ、自分の言葉で解答を書いてからヒント・解答を開いてください。

ヒント1:考える方向

Javaのコード解析まで処理が進んでいるか判断します。

ヒント2:注目する部分

このエラーはOSがjavacコマンドを見つけられないときのものです。

ヒント3:解法の手掛かり

構文修正より先にJDKの導入とPATHを確認し、必要なら端末を開き直します。

模範解答と理由

いいえ。コンパイラコマンドを起動できない段階です。JDKの有無とPATH・ターミナルの再起動を確認します。

この節の自己採点基準(2点満点)

採点条件(各1点)

  1. 1点: Java構文ミスを最初の原因とはしないと答える。
  2. 1点: JDKのインストールとPATHなどを確認すると答える。

正答例: いいえ。コンパイラコマンドを起動できない段階です。JDKの有無とPATH・ターミナルの再起動を確認します。

部分点の例: 上記の独立した条件のうち満たした項目だけに1点ずつ加算し、満たさない項目は0点です。

誤答として扱う具体例: Javaコード末尾のセミコロンを直せばjavacコマンドが認識されると答える。

合格条件:2/2点。 独立した条件が満たされているかだけを採点してください。

復習方法: 不足した採点条件の用語・具体例をこの節の本文で確認してから再回答してください。

次へ進む条件: 正解とその理由を説明できること。説明できない場合はこの節の例題へ戻ってください。

14. 演習課題

付属の exercises/01_environment/assignment.md に記入しながら進めてください。最初は指示どおりの操作で構いません。最後に、指示を見ずに説明できるか確認します。

演習A(必須):JDKの確認
コマンドプロンプトで java -version、javac -version、echo %JAVA_HOME% を実行し、結果を記録してください。

演習B(必須):最初のプログラム
第04節の HelloJava を実行したあと、表示する文章を自分の好きな挨拶に書き換えて再実行してください。ソースコードを変更した場合、再コンパイルしなければ古い結果が実行されることも確かめましょう。

演習C(必須):Eclipse
Eclipseで HelloEclipse を実行し、表示文を別の文章に変更して再実行してください。

演習D(必須):Maven
付属のMavenプロジェクトで mvn clean test を実行し、成功を確認してください。

演習E(必須):Git
Gitで初回コミットと変更後のコミットを作り、git log --oneline の結果を記録してください。

演習F:Gitで変更差分の確認
git show --stat HEAD と git show HEAD を実行し、最後のコミットに含まれるファイル名と変更内容を記録してください。


この節の理解度チェック(01-14)

問題: 提出前にjava -version、javac -version、Helloの出力、Git履歴のどれを証拠として残すべきですか。

本文をいったん閉じ、自分の言葉で解答を書いてからヒント・解答を開いてください。

ヒント1:考える方向

証拠は確認したい到達目標に対応させます。

ヒント2:注目する部分

バージョン・実行・Git履歴はそれぞれ別の事実を示します。

ヒント3:解法の手掛かり

java/javacバージョン、Helloの出力、git logなどを課題の要求に応じて保存します。

模範解答と理由

課題で求める項目に対応する各結果を残します。JDK/Javacは環境、Hello出力は実行、Gitログは履歴を示します。

この節の自己採点基準(3点満点)

採点条件(各1点)

  1. 1点: Java/Javacのバージョンを環境確認の証拠とする。
  2. 1点: Helloの出力をJavaプログラム実行の証拠とする。
  3. 1点: Git履歴をコミット履歴の証拠とする。

正答例: 課題で求める項目に対応する各結果を残します。JDK/Javacは環境、Hello出力は実行、Gitログは履歴を示します。

部分点の例: 上記の独立した条件のうち満たした項目だけに1点ずつ加算し、満たさない項目は0点です。

誤答として扱う具体例: Helloの画面だけを撮ればJavaとGitの全条件を証明できると答える。

合格条件:3/3点。 独立した条件が満たされているかだけを採点してください。

復習方法: 不足した採点条件の用語・具体例をこの節の本文で確認してから再回答してください。

次へ進む条件: 正解とその理由を説明できること。説明できない場合はこの節の例題へ戻ってください。

15. 理解度チェック(自分の言葉で答える)

  1. JDKをインストールする理由を説明してください。
  2. java と javac は何が違いますか。
  3. .java ファイルと .class ファイルは何が違いますか。
  4. IDEを使用すると、メモ帳だけで開発する場合に比べて何が便利ですか。
  5. ワークスペースとプロジェクトの違いを説明してください。
  6. Mavenの pom.xml は何のためのファイルですか。
  7. mvn clean test はどのような処理を行いますか。
  8. Gitの「コミット」は何のために行いますか。
  9. GitとGitHubは同じものですか。違いを説明してください。
  10. エラーが表示されたとき、最初に何を確認しますか。

合格の目安: 必須演習A〜Eを完了し、理解度チェックで少なくとも8問について趣旨を説明できること。説明しにくい用語があれば、その節を読み直してください。


理解を深める:提出できる確認記録

次の表を自分で埋めます。認証情報、個人用フォルダーのユーザー名などをそのまま公開しないようにします。

確認対象 操作 合格条件 自分の結果
JDK java -version 21系を表示 記入
コンパイラ javac -version 21系を表示 記入
Eclipse HelloJavaを実行 Consoleに指定文字列 記入
Maven mvn -version MavenとJava 21の情報を表示 記入
Git git --version バージョン表示 記入
変更履歴 git log --oneline -2 コミット履歴が表示 記入

自己採点: 上記をすべて確認でき、1つエラーが出たときに「どの道具の問題か」を説明できれば本補足の合格です。Gitコマンドによる履歴と差分の実習は第08章で詳しく扱います。

この節の理解度チェック(01-15)

問題: 「Javaをコンパイルできる」と「Javaのプログラムを実行できる」は同じ意味ですか。

本文をいったん閉じ、自分の言葉で解答を書いてからヒント・解答を開いてください。

ヒント1:考える方向

「ソースを変換すること」と「処理を動かすこと」は別工程です。

ヒント2:注目する部分

.java から .class を作る操作を何と呼ぶか考えます。

ヒント3:解法の手掛かり

コンパイルとJVMによる実行を区別し、どちらかだけ成功しても両方成功とは言えません。

模範解答と理由

同じではありません。コンパイルはソースをバイトコードに変換すること、実行は生成したコードをJVM上で動かすことです。

この節の自己採点基準(3点満点)

採点条件(各1点)

  1. 1点: コンパイルと実行は異なると答える。
  2. 1点: コンパイルはJavaソースをバイトコードに変換することだと説明する。
  3. 1点: 実行は生成されたバイトコードを動かすことだと説明する。

正答例: 同じではありません。コンパイルはソースをバイトコードに変換すること、実行は生成したコードをJVM上で動かすことです。

部分点の例: 上記の独立した条件のうち満たした項目だけに1点ずつ加算し、満たさない項目は0点です。

誤答として扱う具体例: javacでコンパイルに成功すればmainの処理も実行済みだと答える。

合格条件:3/3点。 独立した条件が満たされているかだけを採点してください。

復習方法: 不足した採点条件の用語・具体例をこの節の本文で確認してから再回答してください。

次へ進む条件: 正解とその理由を説明できること。説明できない場合はこの節の例題へ戻ってください。

16. この章のまとめと次章へのつながり

この章では、JDKのインストールから始め、Javaのソースコードをコンパイルして実行する流れを体験しました。Eclipseを使った操作に加え、Mavenによるビルドとテスト、Gitによる変更履歴の記録も行いました。

現時点では、Javaの細かな文法をすべて理解できていなくても構いません。「どのファイルに書き、どの道具で実行し、結果をどこで確認するか」 が分かっていれば、第01章の大切な目的は達成できています。

次の 第02章「Java基礎」 では、変数、データ型、演算子、条件分岐、繰り返し、配列を一つずつ学びます。Javaのコードを「写す」だけでなく、自分で考えて少しずつ書けるようになりましょう。


参考:公式サイト

注:ソフトウェアの配布画面やメニューは更新される場合があります。研修で指定したJavaのメジャーバージョン(21)や操作目的を優先して確認してください。

学習内容の確認ポイント

環境構築の初回はJDKとEclipseでHelloJavaを動かせれば第一段階の達成です。MavenとGitの詳しい理解はMaven演習と第08章で復習します。

操作が成功したら java -version と実行結果を記録してください。

学習内容を振り返るための操作確認

この節は、本文の例題や演習が実行できないときに戻るための案内です。最初にファイルの場所と作業中のツールを確認し、コマンドを貼り付ける前に現在のフォルダーを確認してください。

実行する場所と順序

コマンドプロンプトで cd /d "%USERPROFILE%\java-training\work" を実行します。

PowerShellで同じ場所へ移動する場合は Set-Location "$HOME\java-training\work" を使用します。cd /d はPowerShellでは使いません。

成功・失敗の判断

java -version と javac -version の両方に21が表示されることを確かめます。

途中で止まったとき

javac が見つからない場合はJDKの導入を確認します。java だけ成功していても本章は合格ではありません。

作業記録の書き方

  1. 利用環境(OS、Java、必要なツールのバージョン)を記録します。
  2. 実際に操作したフォルダー、実行コマンド、入力内容を記録します。
  3. 期待した結果と実際の結果を別々に書きます。失敗時にはエラーメッセージの全文を保管します。
  4. 修正を加えた場合は変更箇所を記録し、同じ手順で再確認します。
  5. 成功を確認できていなければ「未確認」と記載し、成功と推測して次へ進まないでください。

実際の入力、実行結果、原因の説明、演習の提出物がそろって初めて章の学習を完了とします。

この節の理解度チェック(01-16)

問題: 第02章に進む前に、自分で実施できるべき最小の一連の作業を挙げてください。

本文をいったん閉じ、自分の言葉で解答を書いてからヒント・解答を開いてください。

ヒント1:考える方向

作成したHelloプログラムを自力で動かす流れを思い出します。

ヒント2:注目する部分

ファイル作成から結果確認までの順序を並べます。

ヒント3:解法の手掛かり

Hello.javaを保存し、コンパイル・実行し、期待出力を自分で確認します。

模範解答と理由

Hello.javaを作成し、保存・コンパイル・実行して期待する出力を確認できることです。IDEからでもコマンドラインでも学習上の目的は同じです。

この節の自己採点基準(3点満点)

採点条件(各1点)

  1. 1点: Javaソースの作成・保存を挙げる。
  2. 1点: コンパイル・実行(またはIDEの相当操作)を挙げる。
  3. 1点: 出力結果を確認することを挙げる。

正答例: Hello.javaを作成し、保存・コンパイル・実行して期待する出力を確認できることです。IDEからでもコマンドラインでも学習上の目的は同じです。

部分点の例: 上記の独立した条件のうち満たした項目だけに1点ずつ加算し、満たさない項目は0点です。

誤答として扱う具体例: ファイルを作って保存しただけで、実行確認は不要と答える。

合格条件:3/3点。 独立した条件が満たされているかだけを採点してください。

復習方法: 不足した採点条件の用語・具体例をこの節の本文で確認してから再回答してください。

次へ進む条件: 正解とその理由を説明できること。説明できない場合はこの節の例題へ戻ってください。