著者は、 Open Internet / Free Speech Fund を選択して、 Write forDOnationsプログラムの一環として100ドルの寄付を受け取りました。

序章

Tomcat Jetty Glassfish Cassandra ジェンキンス

このガイドでは、aptを使用して、さまざまなバージョンのJava Runtime Environment(JRE)およびJava Developer Kit(JDK)をインストールします。 OpenJDKとOracleの公式JDKをインストールします。 次に、プロジェクトに使用するバージョンを選択します。 終了すると、JDKを使用してソフトウェアを開発したり、Javaランタイムを使用してソフトウェアを実行したりできるようになります。

前提条件

このチュートリアルに従うには、次のものが必要です。

デフォルトのJRE/JDKのインストール

Javaをインストールするための最も簡単なオプションは、Ubuntuにパッケージされているバージョンを使用することです。 デフォルトでは、Ubuntu18.04にはJREおよびJDKのオープンソースバリアントであるOpenJDK11が含まれています。

このバージョンをインストールするには、最初にパッケージインデックスを更新します。

  1. sudo apt update

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

  1. java -version

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

Output
Command 'java' not found, but can be installed with: sudo apt install default-jre sudo apt install openjdk-11-jre-headless sudo apt install openjdk-8-jre-headless

次のコマンドを実行して、デフォルトのJavaランタイム環境(JRE)をインストールします。これにより、OpenJDK11からJREがインストールされます。

  1. sudo apt install default-jre

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

次の方法でインストールを確認します。

  1. java -version

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

Output
openjdk version "11.0.11" 2021-04-20 OpenJDK Runtime Environment (build 11.0.11+9-Ubuntu-0ubuntu2.18.04) OpenJDK 64-Bit Server VM (build 11.0.11+9-Ubuntu-0ubuntu2.18.04, mixed mode, sharing))

特定のJavaベースのソフトウェアをコンパイルして実行するには、JREに加えてJava Development Kit(JDK)が必要になる場合があります。 JDKをインストールするには、次のコマンドを実行します。これにより、JREもインストールされます。

  1. sudo apt install default-jdk

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

  1. javac -version

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

Output
javac 11.0.11

次に、Oracleの公式JDKとJREをインストールする方法を見てみましょう。

OracleJDK11のインストール

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

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

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

Installer package for Ubuntu 18.04

この画像では、スクリプトのバージョンは11.0.7です。 この場合、OracleJDK11.0.7が必要です。 このページから何もダウンロードする必要はありません。 間もなくaptからインストールスクリプトをダウンロードします。

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

Oracle Java 11

JDKダウンロードボタンをクリックすると、使用可能なバージョンを示す画面が表示されます。 Linux用の.tar.gzパッケージをクリックします。

Linux download

Oracleライセンス契約に同意するように求める画面が表示されます。 チェックボックスを選択して使用許諾契約に同意し、ダウンロードボタンを押します。 ダウンロードが始まります。 ダウンロードを開始する前に、Oracleアカウントにもう一度ログインする必要がある場合があります。

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

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

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

software-properties-commonパッケージをインストールします。これにより、add-apt-repositoryコマンドがシステムに追加されます。

  1. sudo apt install software-properties-common

次に、インストールしようとしているソフトウェアの確認に使用する署名キーをインポートします。

  1. sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys EA8CACC073C3DB2A

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

Output
gpg: key EA8CACC073C3DB2A: public key "Launchpad PPA for Linux Uprising" imported gpg: Total number processed: 1 gpg: imported: 1

次に、add-apt-repositoryコマンドを使用して、パッケージソースのリストにリポジトリを追加します。

  1. sudo add-apt-repository ppa:linuxuprising/java

次のメッセージが表示されます。

Output
Oracle Java 11 (LTS) and 12 installer for Ubuntu, Linux Mint and Debian. Java binaries are not hosted in this PPA due to licensing. The packages in this PPA download and install Oracle Java 11, so a working Internet connection is required. The packages in this PPA are based on the WebUpd8 Oracle Java PPA packages: https://launchpad.net/~webupd8team/+archive/ubuntu/java Created for users of https://www.linuxuprising.com/ Installation instructions (with some tips), feedback, suggestions, bug reports etc.: . . . Press [ENTER] to continue or ctrl-c to cancel adding it

ENTERを押してインストールを続行します。 no valid OpenPGP data foundに関するメッセージが表示される場合がありますが、これは無視してかまいません。

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

  1. sudo apt update

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

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

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

  1. sudo apt install oracle-java11-installer-local

インストーラは、最初にOracleライセンス契約に同意するように求めます。 契約に同意すると、インストーラーがJavaパッケージを抽出してインストールします。

次に、使用するJavaのバージョンを選択する方法を見てみましょう。

Javaの管理

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

  1. 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コマンドに対して実行できます。

  1. sudo update-alternatives --config javac

このコマンドを実行できる他のコマンドには、keytooljavadoc、およびjarsignerが含まれますが、これらに限定されません。

JAVA_HOME環境変数の設定

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

この環境変数を設定するには、最初にJavaがインストールされている場所を特定します。 update-alternativesコマンドを使用します。

  1. 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. OpenJDK11は/usr/lib/jvm/java-11-openjdk-amd64/bin/java.にあります
  2. OracleJavaは/usr/lib/jvm/java-11-oracle/jre/bin/javaにあります。

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

  1. sudo nano /etc/environment

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

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

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

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

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

  1. source /etc/environment

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

  1. echo $JAVA_HOME

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

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

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

結論

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