ウェブサイト検索

AlmaLinux 9にJava OpenJDK/OracleJDKをインストールする方法


AlmaLinux 9にJava OpenJDK/OracleJDKをインストールする方法

このページで

  1. 前提条件
  2. 紹介
  3. Java OpenJDKのインストール

    1. Java OpenJDK 11のインストール
    2. Java OpenJDK 17のインストール
  4. Java Oracle JDKのインストール

    1. Java Oracle JDK 17のインストール
    2. Java Oracle JDK 20のインストール
  5. デフォルトのJavaバージョンの設定
  6. JAVA_HOME環境変数の設定

    1. JAVA_HOMEをシステム全体に設定する
    2. ユーザーごとのJAVA_HOMEを設定する
  7. 結論

Javaは、1995年にサン・マイクロシステムズによって作られたクラスベースのオブジェクト指向プログラミング言語です。Javaは、高レベルのプログラミング言語で、ポータブルであり、どのシステムでも動作するための依存関係が少ないように設計されています。

Javaプログラミング言語の一般的な目的は、開発者がプログラムやアプリケーションを一度だけ作成し、そのアプリケーションを複数のオペレーティングシステムにわたって任意のシステムで実行できるようにすることです。

このガイドでは、AlmaLinux 9サーバーにJava OpenJDKおよび/またはJava Oracle JDKをインストールする方法を説明します。また、JAVA_HOME環境変数の設定とデフォルトのJavaバージョンの設定方法についても説明します。

前提条件

このガイドを進めるには、次のものが必要です:

  • AlmaLinux 9 サーバー - このデモは、ホスト名 almalinux9-server. の AlmaLinux 9 を使用しています。
  • sudo/root管理者権限を持つ非ルートユーザー。

紹介

始める前に、使用したいJavaのバージョンを決める必要があります。知っておくべきJavaのバージョンは2つあります:

  • Java Oracle JDK: 2009年にオラクルに買収されたサン・マイクロシステムズによるJava SE(スタンダード・エディション)の実装であり、オラクルのJavaまたはオラクルJDKとなっています。
  • Java OpenJDK: オラクルJDKのオープンソース版であり、同じコードベースを持っています。OpenJDKの主な貢献者はオラクルとオープンJavaコミュニティです。

以下はOracle JDKとOpenJDKの主な違いです:

  • ライセンス: Oracle JDKはソフトウェアアップデートを受けるために商用ライセンスを持っていますが、OpenJDKは完全にオープンソースで、6ヶ月ごとにアップデートがあります。
  • 特徴: Oracle JDKは、商業ライセンスに使用されるため、より多くの機能を備えています。
  • パフォーマンス: パフォーマンスについての大きな議論があります。Oracle JDKはより良いパフォーマンスを持っていますが、OpenJDKのパフォーマンスは急速に向上しています。

次に、JDKとJREとは何ですか?

  • JRE(Java Runtime Environment)は、コンパイルされたJavaアプリケーションを実行するために必要なすべてを提供しますが、Javaアプリケーションを作成したりコンパイルしたりするためには使用できません。
  • JDK(Java開発キット)は、Javaアプリケーションの実行と作成のための完成したツールを提供します。JDKにはJREパッケージが含まれていますが、javac、jdb、jshellなどの追加ツールも含まれています。

Java OpenJDKのインストール

デフォルトでは、AlmaLinux のリポジトリは、OpenJDK v11 および v17 を含む複数のバージョンの Java OpenJDK を提供します。DNF パッケージマネージャーを使用して、両方の Java OpenJDK バージョンをインストールできます。

Java OpenJDK 11のインストール

Java OpenJDK 11をインストールするには、次のdnfコマンドを実行してください。プロンプトが表示されたら、確認のためにyを入力してENTERキーを押してください。

sudo dnf install java-11-openjdk java-11-openjdk-devel

Javaのインストールが完了したら、次のコマンドを入力してJavaのバージョンを確認します。

java --version

このような出力を期待すべきです。

Java OpenJDK 17のインストール

この記事を書いている時点で、AppStreamリポジトリの最新バージョンのJava OpenJDKはv17です。以下のdnfコマンドを実行してJava OpenJDK 17をインストールしてください。

sudo dnf install java-17-openjdk java-17-openjdk-devel

インストールを確認するには y を入力し、その後 ENTER を押してください。

Javaがインストールされたら、次のコマンドを実行してJavaのバージョンを確認してください。

java --version

以下の出力は、Java OpenJDK 17がインストールされていることを示しています。

Java Oracle JDKのインストール

Java Oracle JDKをインストールして使用することを決定した場合は、以下の手順に従ってください。

まず、curlをシステムにインストールするために次のコマンドを実行します。

sudo dnf install curl -y

現在、Oracleは2つのバージョンのJava Oracle JDKを提供しています。この例では、最新のLTS(長期サポート)リリースであるJava Oracle JDK 17と、Javaの最新バージョンであるJava Oracle JDK 20をインストールする方法を学びます。

Oracle JDKは、tar.gzを介して、またはRedHatベースのディストリビューション用のRPMパッケージ、Debianベースのディストリビューション用のDEBパッケージを使用してインストールできます。

Java Oracle JDK 17のインストール

以下のcurlコマンドを実行して、Java Oracle JDK 17のRPMパッケージをダウンロードしてください。

curl -qO https://download.oracle.com/java/17/latest/jdk-17_linux-x64_bin.rpm

ダウンロードプロセスが終了したら、次のコマンドを使用してJava Oracle JDK 17のRPMファイルをインストールします。

sudo rpm -ivh jdk-17_linux-x64_bin.rpm

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

java --version

あなたのシステムにJava SE Runtime Environment (JRE) 17がインストールされていることに気付くでしょう。

Java Oracle JDK 20のインストール

この記事を書いている時点で、最新のOracle JDKバージョンはv20です。以下のcurlコマンドを使用してRPMファイルをダウンロードしてください。

curl -qO https://download.oracle.com/java/20/latest/jdk-20_linux-x64_bin.rpm

その後、次のrpmコマンドを使用してJava Oracle JDK 20をインストールします。

sudo rpm -ivh jdk-20_linux-x64_bin.rpm

Oracle JDKをインストールした後、次のコマンドを実行してJavaのバージョンを確認します。

java --version

Java SE Runtime Environment (JRE) 20がインストールされているのが見えるでしょう。

デフォルトのJavaバージョンの設定

システムに複数のJavaバージョンがインストールされている場合、アプリケーションを実行するために使用したいデフォルトのJavaバージョンを選択する必要があります。これを行うための推奨される方法は、AlmaLinuxシステムで'alternatives'コマンドを利用することです。

システム上の代替コマンドのリストを取得するには、以下のコマンドを入力してください。

sudo alternatives --list

複数のJavaバージョンがある場合、次のような出力が得られるはずです:

次に、デフォルトのJavaバージョンを設定するために次のコマンドを実行します。好みのJavaバージョンの番号を入力し、ENTERを押して確認してください。

sudo alternatives --config java

以下の例では、Java OpenJDK 17を使用します。これは第1位です。

次に、次のコマンドを実行してJavaのバージョンを確認します。そして成功すれば、デフォルトのJavaバージョンがOpenJDK 17に変更されます。

java --version

デフォルトのjavacツールのバージョンも同様に変更する必要があるかもしれません。alternativesコマンドを使用してデフォルトのjavacバージョンを選択し、javacのバージョンを確認してください。

sudo alternatives --config javac
javac --version

最後に、Java OpenJDKを使用するつもりなら、次のコマンドを使用してデフォルトのJDKとJREを設定することも検討してください。

sudo alternatives --config jre_openjdk
sudo alternatives --config java_sdk_openjdk

デフォルトのJREを変更しているときのスクリーンショットです。

以下はデフォルトJDKを変更する際のスクリーンショットです。

JAVA_HOME環境変数の設定

Apache Tomcat や Gradle などのサードパーティアプリケーションを使用することを期待する場合、AlmaLinux サーバーでデフォルトの JAVA_HOME 環境変数を構成する必要があります。

JAVA_HOME環境変数をシステム全体またはユーザーごとの設定として設定できます。

JAVA_HOMEをシステム全体に設定する

JAVA_HOMEをシステム全体で使用するには、/etc/profile.d/ディレクトリにあるbashプロファイル設定を利用できます。これにより、ログイン時に自動的に読み込まれます。

以下のnanoエディタコマンドを使用して、新しいスクリプト/etc/profile.d/java.shを作成します。

sudo nano /etc/profile.d/java.sh

以下の設定を挿入してください。この例では、JAVA_HOMEをJava OpenJDK 17で設定します。

JAVA_HOME="/usr/lib/jvm/java-17-openjdk"

編集が終わったら、保存してエディタを終了してください。

次に、スクリプト /etc/profile.d/java.sh を実行可能にして、現在のセッションにロードするために、以下のコマンドを実行してください。

sudo chmod +x /etc/profile.d/java.sh
source /etc/profile.d/java.sh

以下のコマンドを使用してJAVA_HOME環境変数を確認してください。操作が成功した場合、JAVA_HOME環境変数があなたのデフォルトのOpenJDKディレクトリを指しているのが表示されるはずです。

echo $JAVA_HOME

ユーザーごとのJAVA_HOMEを設定する

ユーザーごとにJAVA_HOMEを設定したい場合、ログイン時に自動的に読み込まれる~/.bashrcスクリプトを利用できます。

次のコマンドを使用してユーザーにログインしてください。

su - username

~/.bashrcファイルを以下のnanoエディタコマンドを使用して編集してください。

nano ~/.bashrc

次の設定を行の下に追加してください。

JAVA_HOME="/usr/lib/jvm/java-17-openjdk"

変更を保存し、作業が終了したらエディタを終了してください。

変更を適用するために ~/.bashrc を再読み込みし、次のコマンドを使用して JAVA_HOME 環境変数を確認します。

source ~/.bashrc
echo $JAVA_HOME

操作が成功した場合、このような出力が得られるはずです:

結論

準備完了です!あなたはAlmaLinux 9システム上でJava OpenJDKおよび/またはJava Oracle JDKのインストールを完了しました。また、alternativesコマンドを使用してデフォルトのJavaバージョンを設定し、システム全体およびユーザーごとにJAVA_HOME環境変数を設定しました。これでJavaアプリケーションプロジェクトの開発や、システム上でのJavaアプリケーションの展開に使用できます。

関連記事: