Ubuntu22.04にAptを使用してJavaをインストールする方法
序章
Tomcat 、 Jetty 、 Glassfish 、 Cassandra 、 ジェンキンス。
このガイドでは、を使用してさまざまなバージョンのJava Runtime Environment(JRE)およびJava Developer Kit(JDK)をインストールします。 apt
. OpenJDKとOracleの公式JDKをインストールします。 次に、プロジェクトに使用するバージョンを選択します。 終了すると、JDKを使用してソフトウェアを開発したり、Javaランタイムを使用してソフトウェアを実行したりできるようになります。
前提条件
このチュートリアルに従うには、次のものが必要です。
- Ubuntu 22.04初期サーバーセットアップガイドチュートリアルに従ってセットアップされた1つのUbuntu22.04サーバー。これには、sudo非rootユーザーとファイアウォールが含まれます。
手順1—Javaのインストール
Javaのインストールには、2つの主要なコンポーネントが付属しています。 JDKは、コンパイラやデバッガなど、Javaで開発するために不可欠なソフトウェアツールを提供します。 JREは、Javaプログラムを実際に実行するために使用されます。 さらに、Javaには2つの主要なインストールオプションから選択できます。 OpenJDKはJavaのオープンソース実装であり、Ubuntuにパッケージ化されています。 Oracle JDKはJavaのオリジナルバージョンであり、Javaの開発者であるOracleによって完全に保守されています。
これらのバージョンは両方とも、Oracleによって公式に認識されています。 どちらもOracleによって開発されていますが、OpenJDKはオープンソースであるため、コミュニティからの貢献が追加されています。 ただし、Java 11以降、Oracle で詳細に説明されているように、2つのオプションは機能的に同じになりました。 インストールするかどうかの選択は、状況に適したライセンスを選択することになります。 さらに、OpenJDKにはJREを個別にインストールするオプションがありますが、OracleJDKにはJREがパッケージ化されています。
オプション1—デフォルトのJRE/JDKのインストール
One option for installing Java is to use the version packaged with Ubuntu. デフォルトでは、Ubuntu22.04にはOpenJDK 11が含まれています。これは、JREおよびJDKのオープンソースバリアントです。
To install the OpenJDK version of Java, first update your apt
package index:
- sudo apt update
次に、Javaがすでにインストールされているかどうかを確認します。
- java -version
If Java is not currently installed, you’ll get the following output:
OutputCommand '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
Execute the following command to install the JRE from OpenJDK 11:
- sudo apt install default-jre
JREを使用すると、ほぼすべてのJavaソフトウェアを実行できます。
次の方法でインストールを確認します。
- java -version
You’ll receive output similar to the following:
Outputopenjdk 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)
You may need the JDK in addition to the JRE in order to compile and run some specific Java-based software. JDKをインストールするには、次のコマンドを実行します。これにより、JREもインストールされます。
- sudo apt install default-jdk
のバージョンを確認して、JDKがインストールされていることを確認します。 javac
、Javaコンパイラ:
- javac -version
次の出力が表示されます。
Outputjavac 11.0.14
Next, you’ll learn how to install Oracle’s official JDK and JRE.
オプション2— OracleJDK11のインストール
OracleのJavaのライセンス契約では、パッケージマネージャを介した自動インストールは許可されていません。 To install the Oracle JDK, which is the official version distributed by Oracle, you must create an Oracle account and manually download the JDK to add a new package repository for the version you’d like to use. その後、あなたは使用することができます apt
to install it with help from a third party installation script. Oracle JDKにはJREが含まれているため、別途インストールする必要はありません。
ダウンロードする必要のあるOracleのJDKのバージョンは、インストーラスクリプトのバージョンと一致している必要があります。 必要なバージョンを見つけるには、oracle-java11-installerページにアクセスしてください。
次の図に示すように、Jammyのパッケージを見つけます。
この画像では、スクリプトのバージョンは次のとおりです。 11.0.13
. この場合、OracleJDK11.0.13が必要になります。 バージョン番号は、ソフトウェアをインストールする時期によって異なる場合があります。
このページから何もダウンロードする必要はありません。 インストールスクリプトをダウンロードします apt
まもなく。
Next, visit the Archive Downloads and locate the version that matches the one you need.
From this list, choose the Linux x64 compressed archive .tar.gz
package:
Oracleライセンス契約に同意するように求める画面が表示されます。 チェックボックスを選択してライセンス契約に同意し、ダウンロードボタンを押します。 ダウンロードが始まります。 ダウンロードを開始する前に、Oracleアカウントにもう一度ログインする必要がある場合があります。
ファイルがダウンロードされたら、サーバーに転送する必要があります。 ローカルマシンで、ファイルをサーバーにアップロードします。 Linux用Windowsサブシステムを使用するmacOS、Linux、またはWindowsでは、 scp
ファイルをあなたのホームディレクトリに転送するコマンド sammy
ユーザー。 次のコマンドは、OracleJDKファイルをローカルマシンに保存したことを前提としています。 Downloads
フォルダ:
- 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
次の出力が表示されます。
Outputgpg: 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
インストーラは、ダウンロードしたOracleJDKを検索します。 /var/cache/oracle-jdk11-installer-local
. このディレクトリを作成し、OracleJDKアーカイブをそこに移動します。
- 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の管理
1台のサーバーに複数のJavaをインストールできます。 次のコマンドを使用して、コマンドラインで使用するデフォルトのバージョンを構成できます。 update-alternatives
指図。
- sudo update-alternatives --config java
このチュートリアルで両方のバージョンのJavaをインストールした場合、出力は次のようになります。
OutputThere 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
):
- sudo update-alternatives --config javac
このコマンドを実行できるその他のコマンドには、次のものがありますが、これらに限定されません。 keytool
, javadoc
, and jarsigner
.
ステップ3—設定 JAVA_HOME
環境変数
Javaを使用して作成された多くのプログラムは、 JAVA_HOME
Javaのインストール場所を決定するための環境変数。
この環境変数を設定するには、最初にJavaがインストールされている場所を特定します。 使用 update-alternatives
指図:
- sudo update-alternatives --config java
このコマンドは、Javaの各インストールとそのインストールパスを表示します。
OutputThere 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:
この場合のインストールパスは次のとおりです。
- OpenJDK11はにあります
/usr/lib/jvm/java-11-openjdk-amd64/bin/java.
- OracleJavaは次の場所にあります。
/usr/lib/jvm/java-11-oracle/jre/bin/java
.
ご希望のインストールからパスをコピーします。 次に開きます /etc/environment
を使用して nano
またはお気に入りのテキストエディタ:
- sudo nano /etc/environment
At the end of this file, add the following line, making sure to replace the highlighted path with your own copied path, and to not include the 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で実行されるソフトウェアをインストールできます。