GNU/Linux >> Linux の 問題 >  >> Debian

Debian11にJava17をインストールする方法

JavaとJVM(Javaの仮想マシン)は、Tomcat、Jetty、Glassfish、Cassandra、Jenkinsなどのさまざまな種類のソフトウェアに必要です。

このガイドでは、Java Runtime Environment(JRE)とJava Developer Kit(JDK)をDebian11にインストールする方法について説明します。

また、チェックしてください:

  • Ubuntu20.04にJava17をインストールする方法
  • Fedora35にJava17をインストールする方法
  • Rocky Linux 8 /Centos8にJava17をインストールする方法
  • Ubuntu20.04へのJenkinsのインストールとセットアップ

前提条件

  • 最新のDebian11システム
  • rootアクセスまたはsudoアクセスを持つユーザー
  • サーバーからのインターネットアクセス

目次

  1. サーバーが最新であることを確認する
  2. javaのインストール
  3. インストールのテスト
  4. 複数のJavaバージョンの切り替え
  5. 環境変数の構成

サーバーが最新であることを確認する

先に進む前に、サーバーのパッケージとリポジトリが最新であることを確認しましょう。目標を達成するには、次のコマンドを使用します。

sudo apt update
sudo apt -y upgrade

アップグレードするパッケージがある場合、上記のコマンドには数分かかる場合があります。

また、必要になる可能性のあるいくつかの一般的なパッケージをインストールしましょう。私はvimテキストエディタを使用しています。次のコマンドを使用してインストールされていることを確認してください:

sudo apt install -y vim

Javaのインストール

システムにJavaがインストールされているかどうかを確認してください。

$ java -version
-bash: java: command not found

java: command not foundが表示された場合 次に、Javaがインストールされていないことを意味します。 javaがインストールされている場合、そのコマンドはjavaバージョンを出力します

Debian11のデフォルトリポジトリにはJava17が含まれています。これはaptパッケージ管理を使用してJDKをインストールする最も簡単な方法です。

次のコマンドを使用してJavaを検索できます:

sudo apt-cache search openjdk | grep 17

次のコマンドを実行して、Debian11にJava17をインストールします。Javaアプリケーションとアプレットを実行するために、JDKとJREの両方をインストールします。

sudo apt install openjdk-17-jdk openjdk-17-jre -y

インストールが完了したら、次のコマンドを実行して、正しく機能するかどうかを確認します。すべてが正常に機能する場合は、以下に示すような出力が得られるはずです。

$ java -version
openjdk version "17-ea" 2021-09-14
OpenJDK Runtime Environment (build 17-ea+19-Debian-1)
OpenJDK 64-Bit Server VM (build 17-ea+19-Debian-1, mixed mode, sharing)

JDKが正しくインストールされているかどうかを確認するために、Javaコンパイラであるjavacのバージョンを確認します。

$ javac -version
javac 17-ea

インストールのテスト

Java is installed properlyを出力する簡単なスクリプトを作成して、このステップでJava17が正しくインストールされていることをテストしてみましょう。 。

ディレクトリを作成して切り替えます

mkdir simple-app
cd simple-app

私はvimを使用して、システムでテキストファイルを作成および編集しています。このステップでは、選択したテキストエディタを使用します。 Simple.javaファイルを作成します このコマンドの使用:

sudo vim Simple.java

これらのコンテンツをファイルに追加します

public class Simple{
   public static void main(String[] args) {
      System.out.println("Citizix - Java is installed properly");
   }
}

プログラムを作成したので、javacコンパイラを使用してJavaソースコードをバイトコード(クラスファイル)にコンパイルする必要があります。

javac Simple.java

Simple.classという新しいファイルを取得します 、コンパイルされたJavaクラスファイルです。

$ ls
Simple.class  Simple.java

上記のコマンドは、Javaソースコードをバイトコードにコンパイルするだけです。プログラムを実行するには、クラスファイルの名前を引数としてjavaコマンドを実行します。

java Simple

すべてが正常に機能する場合は、「Citizix - Java is installed properly」というメッセージが表示されます。 画面上の」。

$ java Simple
Citizix - Java is installed properly

複数のJavaバージョンの切り替え

システムに複数のバージョンのJavaがインストールされている場合は、javaのバージョンを構成できます。 コマンドのデフォルトは。

このコマンドを使用して構成します

sudo update-alternatives --config java

利用可能なJavaインストールのリストが表示されます。この場合、Java11とJava17の両方がインストールされています。デフォルトバージョンはアスタリスク(*)でマークされています。プロンプトに番号を入力して、別のバージョンを使用することを選択できます。

$ sudo update-alternatives --config java
There are 2 choices for the alternative java (providing /usr/bin/java).

  Selection    Path                                         Priority   Status
------------------------------------------------------------
* 0            /usr/lib/jvm/java-17-openjdk-amd64/bin/java   1711      auto mode
  1            /usr/lib/jvm/java-11-openjdk-amd64/bin/java   1111      manual mode
  2            /usr/lib/jvm/java-17-openjdk-amd64/bin/java   1711      manual mode

Press <enter> to keep the current choice[*], or type selection number: 1
update-alternatives: using /usr/lib/jvm/java-11-openjdk-amd64/bin/java to provide /usr/bin/java (java) in manual mode

上記では、Java 11を選択するためのプロンプトに1を入力しました。ここで、Javaのバージョンを確認しましょう。

$ java -version
openjdk version "11.0.12" 2021-07-20
OpenJDK Runtime Environment (build 11.0.12+7-post-Debian-2)
OpenJDK 64-Bit Server VM (build 11.0.12+7-post-Debian-2, mixed mode, sharing)

環境変数の構成

一部のJavaアプリケーションは、正しく実行するためにJAVA_HOME環境変数を必要とします。一部のプログラムは、実行方法が非常に特殊です。 JAVA_HOMEが設定されていない場合、エラーが発生します。 JAVA_HOMEを設定すると、この問題の発生を防ぐことができます。

どのJavaインストールとパスが存在するかを確認するには、次のコマンドを使用します。

sudo update-alternatives --config java

私の場合、Javaインストールのバイナリパスは次のようになります/usr/lib/jvm/java-17-openjdk-amd64/bin/java

このパスを環境ファイル /etc/environmentに設定します すべてのアプリがアクセスできる場所。

vimでファイルを開きます:

sudo vim /etc/environment

次に、Javaホームをエクスポートする行を次のようにファイルに追加する必要があります。 export JAVA_HOME=... 値をJavaインストールで取得したパスにする:

export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64/bin/java

このファイルは、OpenJDK17のJAVA_HOMEパスをシステム内のすべてのユーザーの環境変数として設定します。

変更を適用するには、次のコマンドを実行します。

source /etc/environment

パス変数が適用されていることを確認するには、次のコマンドを実行します。

echo $JAVA_HOME

パスは、上記でコピーしたOpenJDK17のパスに設定する必要があります。これが私の場合の値です:

$ echo $JAVA_HOME
/usr/lib/jvm/java-17-openjdk-amd64/bin/java

これ以降、Javaプログラムを使用するときに毎回JAVA_HOMEパスを設定する必要はありません。また、17ではなく他のOpenJDKバージョンを使用する場合は、それに応じてパスを調整してください。

結論

このチュートリアルでは、Debian11システムにJava17をインストールする方法を学びました。 Java言語の詳細については、Javaの公式ドキュメントを参照してください。


Debian
  1. Debian9にJavaをインストールする方法

  2. Debian9にRをインストールする方法

  3. Debian9にJava10をインストールする方法

  1. Debian10にGradleをインストールする方法

  2. Debian10にRをインストールする方法

  3. Debian11にNextcloudをインストールする方法

  1. Debian11にGradleをインストールする方法

  2. Debian11にWebminをインストールする方法

  3. Debian11のインストール方法