Ubuntu 22.04にAptを使ってJavaをインストールする方法

0 株式
0
0
0
0

導入

このガイドでは、aptを使用してJava Runtime Environment(JRE)とJava Developer Kit(JDK)の様々なバージョンをインストールします。OpenJDKと公式のOracle JDKをインストールします。その後、プロジェクトで使用するバージョンを選択します。完了すると、JDKを使用してソフトウェアを開発したり、Java Runtimeを使用してソフトウェアを実行したりできます。.

前提条件
  • Ubuntu 22.04 サーバーは、非ルート sudo ユーザーとファイアウォールを含む、Ubuntu 22.04 初期サーバー セットアップ ガイド チュートリアルに従ってセットアップされました。.

ステップ1 – Javaをインストールする

Javaのインストールには、主に2つのコンポーネントがあります。JDKは、コンパイラやデバッガなど、Java開発に不可欠なソフトウェアツールを提供します。JREは、Javaプログラムを実際に実行するために使用されます。さらに、Javaのインストールには主に2つのオプションがあります。OpenJDKはオープンソースのJava実装であり、Ubuntuにパッケージ化されています。Oracle JDKはJavaのメインバージョンであり、Javaの開発元であるOracleによって完全にメンテナンスされています。.

どちらのバージョンもOracleによって公式に承認されています。どちらもOracleによって開発されていますが、OpenJDKはオープンソースであるため、コミュニティからの貢献度が高いです。しかし、Java 11以降、これらの2つのオプションは機能的に同一になり、Oracleが提供する詳細情報も反映されています。どちらをインストールするかは、状況に適したライセンスを選択する必要があります。また、OpenJDKではJREを個別にインストールするオプションがありますが、OracleJDKには独自のJREがパッケージ化されています。.

オプション1 – デフォルトのJRE/JDKをインストールする

Javaをインストールする一つの選択肢は、Ubuntuにパッケージされているバージョンを使用することです。Ubuntu 22.04には、デフォルトでJREとJDKのオープンソース版であるOpen JDK 11が含まれています。.

OpenJDK Java バージョンをインストールするには、まず apt パッケージ リストを更新します。

sudo apt update

次に、Java がすでにインストールされているかどうかを確認します。

java -version

現在 Java がインストールされていない場合は、次の出力が表示されます。

Output
Command 'java' not found, but can be installed with:
sudo apt install default-jre # version 2:1.11-72build1, or
sudo apt install openjdk-11-jre-headless # version 11.0.14+9-0ubuntu2
sudo apt install openjdk-17-jre-headless # version 17.0.2+8-1
sudo apt install openjdk-18-jre-headless # version 18~36ea-1
sudo apt install openjdk-8-jre-headless # version 8u312-b07-0ubuntu1

OpenJDK 11 から JRE をインストールするには、次のコマンドを実行します。

sudo apt install default-jre

JRE を使用すると、ほぼすべての Java ソフトウェアを実行できます。.

インストールを確認します:

java -version

次のような出力が得られます。

Output
openjdk version "11.0.14" 2022-01-18
OpenJDK Runtime Environment (build 11.0.14+9-Ubuntu-0ubuntu2)
OpenJDK 64-Bit Server VM (build 11.0.14+9-Ubuntu-0ubuntu2, mixed mode, sharing)

特定のJavaベースのソフトウェアをコンパイルして実行するには、JREに加えてJDKが必要になる場合があります。JDKをインストールするには、以下のコマンドを実行し、JREもインストールしてください。

sudo apt install default-jdk

Java コンパイラ javac のバージョンをチェックして、JDK がインストールされていることを確認します。

javac -version

次の出力が表示されます。

Output
javac 11.0.14

次に、公式の Oracle JDK と JRE をインストールする方法を学習します。.

オプション2 – Oracle JDK 11をインストールする

OracleのJavaライセンス契約では、パッケージマネージャーによる自動インストールは許可されていません。Oracleが配布する公式バージョンであるOracle JDKをインストールするには、Oracleアカウントを作成し、手動でJDKをダウンロードして、使用するバージョンの新しいパッケージリポジトリを追加する必要があります。その後、サードパーティのインストールスクリプトを使用してaptコマンドでインストールできます。Oracle JDKにはJREが付属しているため、別途インストールする必要はありません。.

ダウンロードするOracle JDKのバージョンは、インストーラスクリプトのバージョンと一致している必要があります。必要なバージョンを確認するには、oracle-java11-installerページをご覧ください。.

下の図に示すように、Jammy パッケージを見つけます。

この画像では、スクリプトのバージョンは11.0.13です。この場合、Oracle JDK 11.0.13が必要です。ソフトウェアをインストールした時期によってバージョン番号が異なる場合があります。.

このページから何かをダウンロードする必要はありません。インストールスクリプトはapt経由ですぐにダウンロードされます。.

次に、ダウンロード アーカイブにアクセスし、必要なバージョンに一致するバージョンを見つけます。.

このリストから、Linux x64 圧縮アーカイブ tar.gz パッケージを選択します。

Oracleライセンス契約への同意を求めるページが表示されます。ライセンス契約に同意するチェックボックスを選択し、「ダウンロード」ボタンを押してください。ダウンロードが開始されます。ダウンロードを開始する前に、Oracleアカウントへの再ログインが必要になる場合があります。.

ファイルをダウンロードしたら、サーバーに転送する必要があります。ローカルマシンでファイルをサーバーにアップロードします。macOS、Linux、またはWindows Subsystem for Linuxを使用しているWindowsでは、scpコマンドを使用してファイルをsammyユーザーのホームディレクトリに転送します。以下のコマンドは、Oracle JDKファイルをローカルマシンの「ダウンロード」フォルダに保存していることを前提としています。

scp Downloads/jdk-11.0.13_linux-x64_bin.tar.gz sammy@your_server_ip:~

ファイルのアップロードが完了したら、サーバーに戻り、Oracle Java のインストールに役立つサードパーティのリポジトリを追加します。.

まず、インストールするソフトウェアを検証するために使用する署名キーを入力します。

sudo gpg --homedir /tmp --no-default-keyring --keyring /usr/share/keyrings/oracle-jdk11-installer.gpg --keyserver keyserver.ubuntu.com --recv-keys EA8CACC073C3DB2A

次の出力が表示されます:

Output
gpg: keybox '/usr/share/keyrings/oracle-jdk11-installer.gpg' created
gpg: /tmp/trustdb.gpg: trustdb created
gpg: key EA8CACC073C3DB2A: public key "Launchpad PPA for Linux Uprising" imported
gpg: Total number processed: 1
gpg: imported: 1

次に、リポジトリをパッケージ ソース リストに追加します。

echo "deb [arch=amd64 signed-by=/usr/share/keyrings/oracle-jdk11-installer.gpg] https://ppa.launchpadcontent.net/linuxuprising/java/ubuntu jammy main" | sudo tee /etc/apt/sources.list.d/oracle-jdk11-installer.list > /dev/null

新しいソフトウェアをインストールできるようにパッケージ リストを更新します。

sudo apt update

インストーラは/var/cache/oracle-jdk11-installer-localでOracle JDKを検索します。このディレクトリを作成し、そこにOracle JDKアーカイブを移動します。

sudo mkdir -p /var/cache/oracle-jdk11-installer-local/
sudo cp jdk-11.0.13_linux-x64_bin.tar.gz /var/cache/oracle-jdk11-installer-local/

最後にパッケージをインストールします。

sudo apt install oracle-java11-installer-local

インストーラはまずOracleライセンス契約への同意を求めます。同意すると、インストーラはJavaパッケージを抽出してインストールします。.

ここで、使用する Java のバージョンを選択する方法について説明します。.

ステップ2 – Java管理

サーバー上に複数のJavaをインストールできます。コマンドラインでupdate-alternativesコマンドを使用して、デフォルトとして使用するバージョンを設定できます。.

sudo update-alternatives --config java

このチュートリアルで両方のバージョンの Java をインストールした場合、出力は次のようになります。

Output
There are 2 choices for the alternative java (providing /usr/bin/java).
Selection Path Priority Status
------------------------------------------------------------
0 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1111 auto mode
1 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1111 manual mode
* 2 /usr/lib/jvm/java-11-oracle/bin/java 1091 manual mode
Press <enter> to keep the current choice[*], or type selection number:

デフォルトとして使用する Java バージョン番号を選択するか、ENTER キーを押して現在の設定をそのままにします。.

コンパイラ (javac) などの他の Java コマンドでもこれを行うことができます。

sudo update-alternatives --config javac

このコマンドを実行できる他のコマンドには、keytool、javadoc、jarsigner などがあります。.

ステップ3 – JAVA_HOME環境変数を設定する

Java を使用して作成された多くのプログラムでは、JAVA_HOME 環境変数を使用して Java インストールの場所を指定します。.

この環境変数を設定するには、まずJavaのインストール場所を指定します。update-alternativesコマンドを使用します。

sudo update-alternatives --config java

このコマンドは、各 Java インストールとそのインストール パスを表示します。

Output
There are 2 choices for the alternative java (providing /usr/bin/java).
Selection Path Priority Status
------------------------------------------------------------
0 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1111 auto mode
1 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1111 manual mode
* 2 /usr/lib/jvm/java-11-oracle/bin/java 1091 manual mode
Press <enter> to keep the current choice[*], or type selection number:

この場合、インストール パスは次のようになります。

  1. OpenJDK 11 は /usr/lib/jvm/java-11-openjdk-amd64/bin/java にあります。.
  2. Oracle Java は /usr/lib/jvm/java-11-oracle/jre/bin/java にあります。.

ご希望のインストールディレクトリからパスをコピーします。次に、nano またはお好みのテキストエディタを使って /etc/environment を開きます。

sudo nano /etc/environment

このファイルの最後に次の行を追加します。強調表示されたパスをコピーしたパスに置き換え、パスの /bin 部分を含めないようにしてください。

JAVA_HOME="/usr/lib/jvm/java-11-openjdk-amd64"

このファイルを変更すると、システム上のすべてのユーザーに対して JAVA_HOME パスが設定されます。.

ファイルを保存してエディターを終了します。.

このファイルを再ロードして、現在のセッションに変更を適用します。

source /etc/environment

環境変数が設定されていることを確認します。

echo $JAVA_HOME

設定したパスが表示されます。

Output
/usr/lib/jvm/java-11-openjdk-amd64

他のユーザーは、これらの設定を適用するために、source /etc/environment コマンドを実行するか、ログアウトしてから再度ログインする必要があります。.

結果

このチュートリアルでは、複数のバージョンのJavaをインストールし、それらを管理する方法を学習しました。これで、Tomcat、Jetty、Glassfish、Cassandra、JenkinsなどのJavaで動作するソフトウェアをインストールできるようになりました。.

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

あなたも気に入るかもしれない