C
Java/環境構築/Lesson 02

Java 環境構築 — IntelliJ で Hello World まで

30分·theory

Java 環境構築 — IntelliJ で Hello World まで

🎯 このレッスンを読み終えたら

このレッスンをすべて読み終えると、以下の 3 つを自信を持ってできるようになります。

  • ✅ JDK 17 LTS + IntelliJ Community まで環境構築を最後まで完了できる
  • ✅ Maven vs Gradle の選択基準を一文で答えられる
  • .class / .jar ファイルが何であり、JVM とどう繋がるかを説明できる

学習目標をチェックリストとして意識し、すべて答えられるようになったらレッスンを閉じてください。

JDK のインストール — Java 17 LTS 基準

Java を動かすには3 つが必要です

  • JDK (Java Development Kit) — 開発用フルセット。コンパイラ (javac) + ランタイム (java) + 標準ライブラリ。
  • JRE (Java Runtime Environment) — 実行のみ行う人向け。JDK の中に含まれています。
  • JVM (Java Virtual Machine)実際にコードを実行する仮想マシン。 OS ごとに異なります。

開発者は JDK さえ入れれば OK。JRE・JVM はその中に含まれています。

どのバージョンをダウンロードするか

Java 17 LTS が 2026 年現在、最も安全な選択肢 です。LTS = Long Term Support、8 年間のサポート。実務採用率 No.1。

  • Java 8: 古すぎる。新規プロジェクトには使わないでください。
  • Java 11: 一つ前の LTS。利用は減少傾向。
  • Java 17: 現在の標準。Spring Boot 3.x の最低要件。
  • Java 21: 最新 LTS。新規プロジェクトなら OK、学習用は 17 を推奨。

インストール — Adoptium Temurin

Oracle 公式 JDK は商用ライセンス問題があるため、実務ではほとんど使われません。代わりに OpenJDK の無料ディストリビューション である Adoptium Temurin をダウンロードしてください。

1. https://adoptium.net にアクセス
2. Temurin 17 (LTS) → 自分の OS を選択 (Windows/Mac/Linux)
3. .msi (Windows) または .pkg (Mac) をダウンロード → 実行
4. セットアップウィザードをデフォルトオプションのまま進める (PATH 自動登録のチェックを確認)

インストールの確認

ターミナル/CMD を開いて:

bash
java -version
javac -version

両方とも 17.x.x が表示されれば成功。javac が見つからない場合は JRE のみインストールされています — JDK を再ダウンロードしてください。

IntelliJ IDEA のインストール — 無料の Community 版

なぜ IntelliJ なのか

Java エコシステムの事実上の標準 IDE。実務採用率は圧倒的 No.1。無料の Community 版で十分です (Spring・Web 開発には有料の Ultimate が必要ですが、学生・オープンソースは無料)。

  • Eclipse: かつての標準でしたが、シェアは低下。重くて UX が古い。
  • VS Code + Java 拡張: 軽量ですが、IntelliJ ほどの統合ツールはありません。軽作業向け。
  • NetBeans: ほぼ使われていません。

ダウンロード

1. https://www.jetbrains.com/idea/download/ にアクセス
2. Community EditionDownload をクリック (Ultimate の横に小さく表示されています)
3. セットアップウィザードを進める — Add Open Folder as Project にチェック

最初のプロジェクトを作成する

起動後 New Project → 以下のオプションを選択:

  • Language: Java
  • Build system: IntelliJ (学習用 — Maven/Gradle は次のレッスンで)
  • JDK: 上でインストールした Temurin 17 が自動認識されます
  • Project name: hello-java
  • Add sample code にチェック — Main.java が自動生成されます

Create をクリックするとプロジェクトが開きます。

初めての実行

自動生成された src/Main.java が表示されます:

java
public class Main {
    public static void main(String[] args) {
        System.out.println("Hello and welcome!");
    }
}

エディタ左のガター にある 緑の ▶ 矢印 をクリックするか、Shift + F10 — 下部の Run パネルに Hello and welcome! が出力されます。

おめでとうございます — Java プログラムを初めて実行した瞬間です。

Maven vs Gradle — 一行でまとめると

なぜビルドツールが必要なのか

実際のプロジェクトは数百の外部ライブラリに依存します。手動でダウンロードしてフォルダに入れ、クラスパスに登録するのは現実的ではありません。ビルドツールがこれを自動化します。

ビルドツールは 4 つのことをします:
1. 依存性管理 — ライブラリの自動ダウンロード・バージョン管理
2. コンパイルjavac の呼び出し + オプションの統一
3. テスト実行 — JUnit などを自動実行
4. パッケージング.jar または .war にまとめる

2 つの選択肢

  • Maven — XML (pom.xml) で設定。2004 年登場。伝統的な標準。 大企業・レガシープロジェクトに多い。「設定より規約 (Convention over Configuration)」の考え方。
  • Gradle — Groovy/Kotlin DSL (build.gradle.kts) で設定。Spring Boot 新規プロジェクトのデフォルト。 より速く柔軟。Android の標準。

一行結論: Spring Boot の学習なら Gradle既存の会社コードが Maven なら Maven。両方知っておくと良いですが、新規は Gradle を選択。

Maven pom.xml の例

xml
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
    <version>3.2.0</version>
</dependency>

Gradle build.gradle.kts の例

kotlin
dependencies {
    implementation("org.springframework.boot:spring-boot-starter-web:3.2.0")
}

同じ依存関係を Gradle のほうがはるかに短く 表現できます。そのためプロジェクトが大きくなるほど Gradle の好みが高まります

.class · .jar ファイル — コンパイル成果物の正体

ソース → バイトコード → 実行

Java の2 段階実行モデルを理解しないと、ビルド成果物が何なのかわかりません。

1. .java (ソース) — 私たちが書いたテキストコード
2. .class (バイトコード) — javac がコンパイルした JVM が読める形式
3. JVM が .class を実行 — OS に応じた機械語にその都度変換

code
[人間]     [コンパイラ]  [実行エンジン]
Main.java → Main.class → JVM (java Main)

.class の中身

テキストではなくバイナリ です。人間が直接読むことはできませんが、javap -c Main.class逆アセンブルして確認できます。

ファイル 1 個 = クラス 1 個Main.java の中に class Aclass B があれば → A.classB.class2 つ出力されます。

.jar — Java Archive

数十〜数百の .class ファイルを1 つにまとめた ZIP 形式のファイル。配布・実行の単位です。

bash
java -jar myapp.jar

この一行が数百の .class ファイル + ライブラリをすべてロードしてプログラムを起動します。

まとめ

拡張子正体誰が作るか
.javaソースコード人間 (開発者)
.classバイトコード (JVM 用)javac コンパイラ
.jarクラスのまとめ (配布用)jar ツールまたはビルドツール
.warWeb アプリのまとめ (.jar + Web 設定)ビルドツール

次のチャプターでは変数とデータ型から本格的な学習を始めます。

🤖 AI にこう聞いてみましょう

このレッスンの概念を知っていれば、AI に具体的に指示できます。漠然とした「直して」ではなく、語彙を持ったリクエスト — それがトークン節約の出発点です。

  • 「Java 17 + IntelliJ Community で Hello World プロジェクトを作って」
  • 「このプロジェクトの Maven pom.xml を Gradle build.gradle.kts に変換して」
  • 「JAVA_HOME 環境変数が認識されないので OS ごとの設定方法を教えて」

なぜこれがトークンを減らすのか

概念を知らないと、AI の回答を受け取っても「それって何ですか?」と再度聞かなければなりません。その「再質問」がトークンを消費します。概念を一度理解しておけば、会話が一回で終わります。

先に読むとよい概念: Java
Java 環境構築 — IntelliJ で Hello World まで - Java