9
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

はじめに

私はITスクールのRareTECHで学習しています。学習を開始して今日で4ヶ月がたちました、RareTECHではITの基礎となる学習ももちろんですが、講師から最新の情報を教えてもらえる場所でもあります。受講生同士でチームを組むハッカソンが年に4回あり、受講生同士で切磋琢磨し合える場所でもあります。

そんな中、私は自身の学習のためにJavaの学習を行っています。どの言語でも環境の構築が初学者にとって情報が多すぎて、非常に難しいことであると私自身の経験で思いました。

ここでは、Javaのローカル環境の構築 について確認していきます。

そもそもJavaってどんな言語?

Javaの特徴

  1. プラットフォームに依存しない
    Java で作成したプログラムはどの OS(Operating System)上でも動作する。
    そのため、プラットフォームごとの開発が不要になり、開発コストを削減できる。
  2. オブジェクト指向の言語である
    Java はオブジェクト指向の言語である。オブジェクト指向のプログラムは、
    既存モジュールの再利用や拡張が容易なため、プログラムの生産性と保守性が向上する。
  3. ネットワーク機能が充実している
    Web サーバ上で実行する形式のプログラム(サーブレット)などを開発できる。

Javaでどうやって動くの?

Java のプログラムを動作させるには、JDK(Java Development Kit)、JRE(Java Runtime Environment)、JVM(Java Virtual Machine) の3つの要素が関わります。それぞれの役割を理解することで、Java の実行の仕組みを把握できます。

JVM(Java Virtual Machine)

JVM は Java のプログラムを実行するための仮想マシンです。
Java のソースコード(.java)は、コンパイルされて バイトコード(.class) という中間コードに変換されます。
JVM はこのバイトコードを解釈し、OS に適した機械語に変換して実行します。
この仕組みにより、Java は 「一度書けばどこでも動く」 という特長を持ちます。

JRE(Java Runtime Environment)

JRE は Java プログラムを 実行するための環境 です。
JVM に加えて、標準ライブラリ(Java の基本機能を提供するクラス群)や各種ツールが含まれています。
つまり、JRE がインストールされていれば Java アプリケーションを実行 できますが、開発はできません。

JDK(Java Development Kit)

JDK は Java で開発を行うための環境です。
JRE に加えて、Java のコンパイラ(javac) や、デバッガ、開発ツールが含まれています。
Java のプログラムを作成・コンパイル・実行するには JDK をインストール する必要があります。

Javaのプログラムの流れについて

プログラムの処理内容を、人間が理解しやすい形式で記述された文字列情報を、ソースコードと呼びます。ソースコードは、何らかのプログラミング言語によって記述され、テキストファイル(ソースファイル)として保存されます。プログラムを実行するためには、ソースコードを機械語(実行環境のOSやCPUが理解できる言語)に翻訳する必要があります。このように、ソースコードを機械語に翻訳するプロセスのことをコンパイルと呼びます。プログラムは、コンパイルされた機械語を実行することによって動作します。

実際のプログラムの流れ

1、ソースコードの作成(.java)

public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello, World!");
    }
}

2、コンパイル(.class の生成)

javac HelloWorld.java

→ HelloWorld.class(バイトコード)が生成される

3、JVM による実行

java HelloWorld

→ Hello, World! が出力される

開発環境の選択肢

JDK の選択肢
現在、Java の JDK にはいくつかの選択肢があります。代表的なものを紹介します。

JDK の種類 特徴
Oracle JDK Oracle が提供。商用利用はライセンス制限あり。
OpenJDK オープンソース版。ほぼ Oracle JDK と同じ。
Eclipse Temurin OpenJDK ベースで、安定性とセキュリティが強化。
Amazon Corretto AWS 向けに最適化された OpenJDK。
AdoptOpenJDK(旧) Eclipse Temurin に引き継がれた。

なぜ Eclipse Temurin を選ぶのか?

Eclipse Temurin は、かつての AdoptOpenJDK を引き継ぎ、信頼性と安定性のある OpenJDK のディストリビューション です

  • 無料で使える(Oracle JDK のような商用ライセンス制限なし)
  • セキュリティパッチやバグ修正が迅速
  • Windows / macOS / Linux など様々な OS で動作
  • 公式の OpenJDK をベースにしているため、互換性が高い
    そのため、多くの開発者や企業で 標準的な JDK として採用されています。
    また、Homebrew を使った簡単なインストール も可能なため、初心者にもおすすめです。

Eclipse Temurin & Homebrew による環境構築手順

1. Homebrew をインストール(macOS のみ)

Homebrew は macOS でソフトウェアを簡単にインストールできるパッケージマネージャです。
もし Homebrew がインストールされていない場合、以下のコマンドをターミナルで実行してください。homebrew

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

インストール後、以下のコマンドで Homebrew の動作を確認できます。

brew --version

2. Eclipse Temurin のインストール

Eclipse Temurin は OpenJDK ベースの安定した Java 実行環境です。
Homebrew を使って簡単にインストールできます。

brew install --cask temurin

インストール完了後、以下のコマンドで Java のバージョンを確認してください。

java -version

出力例:

openjdk version "23.0.1" 2024-10-15
OpenJDK Runtime Environment Homebrew (build 23.0.1)
OpenJDK 64-Bit Server VM Homebrew (build 23.0.1, mixed mode, sharing)

このように Temurin の名前が表示されれば、正常にインストールされています。

3. 環境変数の設定(必要に応じて)

✅JAVA_HOME の設定が必要になるケース

Maven や Gradle などのツールが JAVA_HOME を参照する場合
複数の Java バージョンを切り替える必要がある場合
java や javac がターミナルで動作しない場合
通常、brew install --cask temurin でインストールすると JAVA_HOME の設定は不要ですが、
上記のようなケースでは手動で環境変数を設定する必要があります!

以下のコマンドを実行し、JAVA_HOME のパスを確認してください。

/usr/libexec/java_home

設定が必要な場合は、以下のコマンドを .zshrc や .bash_profile に追加します。

echo 'export JAVA_HOME=$(/usr/libexec/java_home)' >> ~/.zshrc
source ~/.zshrc  # または source ~/.bash_profile

設定後、echo $JAVA_HOME で正しくパスが表示されるか確認してください。

4. Java の動作確認

Java の動作確認のため、以下のシンプルなプログラムを作成し、実行してみましょう。

HelloWorld.java

public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello, World!");
    }
}

コンパイル

javac HelloWorld.java

実行

java HelloWorld

出力:

Hello, World!

このメッセージが表示されれば、環境構築は完了です。

まとめ

初心者の方には非常に工程が多く感じる内容です。
難しい言葉もたくさんあると思います。
少しずつでいいので、慣れていきましょう。
最初は理解できなくて当たり前ですし、知らなくて当然です。
私は今でも分からないことが多く、日々学習しています。

最後に誤字脱字、解釈間違いなどございましたら、コメントなどで教えていただけましたら幸いです。

9
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?