PR

Javaの開発環境構築の3ステップ解説(JDK/JRE/JVMの仕組みを1から解説)

Java

このページではJava開発・Javaの学習を始めようとしている方に、Javaの開発環境構築(Javaのプログラミングを実行できる環境の構築)の手順を1からわかりやすく解説します。

ただ単に構築するだけではなく、その途中途中でJava開発において最低限知っておかなくてはならない基本用語(JDK、JRE、コンパイル、etc)についても合わせてご説明しますので、是非最後までご覧ください。

Java開発環境構築ステップ
  1. Java Development Kit (JDK) のインストール
  2. インストールの確認テスト
  3. 開発環境の設定

このページで紹介する内容はざっくり↑の3ステップ。早速解説を始めます!

スポンサーリンク

ステップ1:Java Development Kit (JDK) のインストール

最初のステップはJDKのインストール作業です。JDKが無いとあなたのPCでJavaを書いてそれを実行することはできません。ここでは「そもそもJDKって何?」について解説しつつ。あなたのPCにJDKをインストールする方法をご説明します。

ポイント JDKのインストール手順

  • Windowsの場合:
    1. Oracleの公式サイトからJDKをダウンロード。
    2. ダウンロードしたファイルを開いて、画面の指示に従ってインストール。
    3. インストール後環境変数の設定を実施。システムの「環境変数」設定→「新規作成」でJAVA_HOMEを追加し、JDKがインストールされたフォルダを指定。また、「Path」変数に%JAVA_HOME%\binを追加。
  • Macの場合:
    1. Oracleの公式サイトからMac用のインストーラをダウンロードして実行。
    2. Macの場合インストールが完了した後は、通常は特別な設定をする必要はなし。

JDKとは?

JDKとは「Java Development Kit」の略で、その名の通り「Javaを開発するためのツール」のこと。主に以下の3つの機能が含まれるツールで、これをPCにインストールすることでJavaの開発~実行までを行うことができるようになるという仕組みです。

  1. Javaコンパイラ (javac)
  2. Java仮想マシン (JVM)
  3. Javaランタイム環境 (JRE)

せっかくなので、上記3つのツールの役割について深堀して解説しておきます。

1.Javaコンパイラ (javac)

JavaコンパイラはJavaのプログラミング言語で書かれたコード(ソースコード)を、コンピュータが理解できる形式(バイトコード)に変換する役割を担っています。

Javac,Javaコンパイラ
図1:Java/コンパイル

要は、人間が理解しやすい形で書かれた内容(ソースコード)を、コンピューターが理解できる形(バイトコード)に変換するということ。

Javaコンパイラはバイトコードを生成する際、単にソースコードを機械が理解できる形に変換するだけではなく、様々な最適化(プログラムの実行速度が向上させる / メモリ使用量を減少させる)を行います。またコンパイル中に発生するエラー内容(型の不一致、未使用の変数、非推奨のメソッドの使用など)の詳細を表示するなど、プログラムの品質を向上させるような役割も担います。

要するにJavaコンパイラは、単なるコンパイル(ソースコード→バイトコード変換)だけではなく、諸々の最適化も行っている!というのがJavaコンパイラの特徴です。

参考 コンパイラとインタプリタの違い

2.Java仮想マシン (JVM)

JVMは「Java Virtual Machine」の略で、直訳して「Javaの仮想マシン」となります。Javaコンパイラ(javac)によって生成されたバイトコードは、実は完全な機械語ではなくJVMが理解できる中間言語という位置づけ。JVMはこのバイトコードを読み込み、それを実際のマシンコードに変換して、コンピュータ上で実行します。

JVMとは,Java Virtual Machine
図2:JVMとは

JVMが存在するおかげで、Javaプログラムは「一度書けば、どこでも動く」という特性を持っています。どういうことかというと、つまり異なるOS(Windows、macOS、Linuxなど)でも、JVMがあるおかげで同じJavaプログラムが問題なく動作するということです。

他のプログラミング言語、特にネイティブコードにコンパイルされる言語(CやC++など)では、異なるOSごとに異なるバイナリを作成する必要があります。これは、各OSが異なるAPIやシステムコールを持っているため、例えばWindows用にコンパイルしたコードをLinux上でそのまま動かすことはできません。が、JavaはこのJVMのおかげでどこでも動かすことが可能になるという仕組み。

この仕組みが存在がJavaが様々な現場で活用されることになる1つの要因だと考えられます。

JVMの動作原理はざっくり以下の通り。「なんとなくの理解」でいいので頭に入れておくとGood!

ポイント JVMの動作

  1. ロード
    • 必要なJavaクラス(バイトコード)をメモリに読み込む。
  2. 検証
    • 読み込まれたバイトコードが適切で安全であることを確認。
  3. 実行
    • 読み込まれたバイトコードを実行。もしくは、より高速な実行のためにネイティブマシンコードにさらにコンパイルする。

3.Javaランタイム環境 (JRE)

JREは「Java Runtime Environment」の略。直訳すると「Java実行環境」となります。

このJava実行環境は、開発されたJavaプログラムを実際にPC上で実行するために必要な全ての機能(以下ポイント「JREの構成」を参照)を提供します。要するに、JREはエンドユーザー(プログラムを使用する人)やシステムにとって必須のもので、Javaで開発されたアプリケーションやWebアプリケーションを動かすために使われるもの!と覚えておきましょう。

ポイント JREの構成

  • Java Virtual Machine(JVM)
    • Javaプログラムを実行するための仮想マシン
  • Javaプラットフォームライブラリ
  • ユーザーインターフェースツールキット
    • GUIアプリケーションを開発するためのツールキット(SwingやJavaFXなど)
  • JavaプラグインとWeb Start
    • ブラウザ内でJavaアプリケーションを実行するためのコンポーネント

Javaプログラムを「実行」するだけならJREがあればOK。「開発」するためにはJDKも必要になる、と覚えておきましょう。

JREはJavaアプリケーションを実行するための環境で、Javaが「どこでも実行できる」言語として機能するための核となる部分。JREがインストールされている限り、Javaで書かれたアプリケーションはプラットフォームに依存せずに実行できるため、ソフトウェア開発者は異なるプラットフォームに対して個別にアプリケーションを開発する必要がありません。

まとめ ステップ1のまとめ

コンポーネント説明主要な機能
Javaコンパイラ (javac)Javaソースコードをバイトコードに変換するツール- ソースコードの文法チェック
- バイトコードへの変換
- エラー報告
JVM (Java仮想マシン)Javaバイトコードを実行するための仮想マシン- バイトコードの実行
- メモリ管理
- システムリソースとのインタフェース提供
JRE (Javaランタイム環境)Javaアプリケーションを実行するために必要なソフトウェア環境- Javaプログラムの実行支援
- 標準クラスライブラリの提供
- JVMの実装

ステップ2:インストールの確認テスト

ステップ1が完了したらJDKのインストールが正常に完了したかを確認します。コマンドプロンプト(Windows)またはターミナル(Mac)を開いて、以下のコマンドを入力します。

java -version

このコマンドを実行したときに、以下のようなインストールしたJavaのバージョン情報が表示されれば環境構築は成功です。

java version "1.8.0_271"
Java(TM) SE Runtime Environment (build 1.8.0_271-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.271-b09, mixed mode)

上記の確認ができない場合、システムの環境変数にJAVA_HOMEが設定されているか、またPath環境変数にJavaのbinディレクトリ(例:C:\Program Files\Java\jdk-11.0.1\bin)が含まれているかを再度確認してみましょう。

それでも、正しく動作しない場合は一度Javaをアンインストールし、最新のインストーラを公式サイトからダウンロードして、再度インストールを試みてください。

ステップ3:コーディング環境の設定

最後のステップはJavaでテストプログラムを書き、実行するために必要なツールやソフトウェアをコンピュータにセットアップしていく手順になります。Javaのコーディングを始めるためには、テキストエディタか統合開発環境(IDE)が必要となるので以下のようなIDEをインストールしましょう。

参考 統合開発環境(IDE)とは?

インストールが完了したら、早速簡単なJavaプログラムを作成してみたいと思います。以下のサンプルコードをコピーして、ファイルに.java拡張子を付けて保存します(例えば、HelloWorld.javaのようなファイル名)。

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

保存したJavaファイルはIDE上から直接実行することができます。もしくは、コマンドプロンプト / ターミナルを開いてjavac HelloWorld.javaと入力しコンパイル→java HelloWorldと入力して実行することもできます。

この結果、画面上に「"Hello, World!」が表示されればこれでJavaで開発→Javaの実行をする準備が完了です。

それでは、続けてJavaの基本的な構文ルール(プログラムの書き方)を勉強していきましょう!

このWebサイトは現役のエンジニアが以下3点を目的として運営しています。

  1. 勉強:一度理解した内容を忘れないように。
    → アウトプットは「最強のインプット」である! 
  2. 備忘:忘れたとしても後から見返せるように。
    → 未来の自分への「お手紙」を書いています。 
  3. 共有:〇〇ってこうだったんだ!の感動をシェアできるように。
    → あなたの知識は誰かにとっての「価値ある情報」です。 

副業ブログの始め方はこちらから

スポンサーリンク
Java
シェアする
ビズドットオンラインをフォローする
タイトルとURLをコピーしました