OpenJDK 7は、CentOS 7のデフォルトのJDKバージョンとして使用されます。このチュートリアルでは、Centos7にさまざまなバージョンのJavaをインストールする方法を示します。
このガイドでは、OpenJDKとOracleJavaの両方のインストールについて説明します。基本的に、両方のパッケージは技術的に同じであり、OracleJavaは商用目的に向いています。
Javaプログラムを実行しているだけの場合は、Javaランタイム環境(JRE)のみが必要です。ただし、Java開発者の場合は、すべての開発ツールを含むJava Development Kit(JDK)をインストールする必要があります。
注:Javaランタイム環境はすでにJDKで使用可能です。すでにJDKをインストールしている場合は、JREをインストールする必要はありません。
CentOSにJavaをインストールする
まず、OpenJDKJDKとOpenJREのインストール方法を確認しましょう。 Java 11が現在のLTSバージョンですが、Java8が最も一般的に使用されています。
OpenJDKをインストールする
次のコマンドは、yumコマンドを使用してopenjdk8をインストールします。
$ sudo yum install java-1.8.0-openjdk-devel
OpenJDK 11のインストールを検討している場合は、次の手順に従ってください。
$ sudo yum install java-11-openjdk-devel
OpenJREのインストール
次のコマンドは、yumコマンドを使用してopenjre8をインストールします。
$ sudo yum install java-1.8.0-openjdk
OpenJRE 11をインストールするには、次の手順に従ってください。
$ sudo yum install java-11-openjdk
OracleJavaのインストール
特定のOSのOracleダウンロードページからJavaSEDevelopment Kit 8をダウンロードして、サーバーにアップロードできます。ここでは、wgetコマンドを使用してjdk-8u11-linux-x64.rpmファイルをダウンロードしました。
$sudo wget http://download.oracle.com/otn-pub/java/jdk/8u11-b12/jdk-8u11-linux-x64.rpm
$ ls
jdk-8u11-linux-x64.rpm
ここでは、8u11バージョンに移行する前に、最初に以前のバージョンをアンインストールしています。両方のバージョンを保持するかどうかはあなた次第です。
$sudo rpm -qa | grep -i jdk
jdk-1.8.0_05-fcs.x86_64
$sudo rpm -evh jdk-1.8.0_05-fcs.x86_64
Preparing... ################################# [100%]
Cleaning up / removing...
1:jdk-2000:1.8.0_05-fcs ################################# [100%]
$sudo rpm -Uvh jdk-8u11-linux-x64.rpm
Preparing... ################################# [100%]
Updating / installing...
1:jdk-2000:1.8.0_11-fcs ################################# [100%]
Unpacking JAR files...
rt.jar...
jsse.jar...
charsets.jar...
tools.jar...
localedata.jar...
jfxrt.jar...
次のように、yumコマンドを使用してoraclejavaをインストールすることもできます。
$sudo yum localinstall jre-VERSION-linux-x64.rpm
代替ツールを使用してデフォルトのJavaバージョンを設定する
Alternativesは、同じ機能を提供するさまざまなソフトウェアパッケージを管理するためのツールです。 Linuxは代替手段を使用して、一度に1つのJava Development Kit(JDK)のみがデフォルトとして設定されるようにします。
$sudo gunzip /usr/local/jdk-8u11-linux-x64.gz
$sudo tar -xvf jdk-8u11-linux-x64
$ cd /usr/local/
$sudo alternatives --install /usr/bin/java java /usr/local/jdk1.8.0_11/bin/java 3
これにより、Oracle JDKに3の優先度が割り当てられます。デフォルトのままにしたい場合は、OracleJDKに高い優先度を与えることができます。
$sudo alternatives --config java
There are 2 programs which provide 'java'.
Selection Command
-----------------------------------------------
*+ 1 /usr/local/jdk1.7.0_65/bin/java
2 /usr/local/jdk1.8.0_11/bin/java
Enter to keep the current selection[+], or type selection number: 2
Javaバージョンを確認する
次の-version
を使用します デフォルトのJavaバージョンを確認するコマンド。
$sudo java -version
java version "1.8.0_11"
Java(TM) SE Runtime Environment (build 1.8.0_11-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.11-b03, mixed mode)
java_home環境変数を設定
javaがインストールされているパスを確認し、java_home環境変数を設定しましょう。
$sudo ls /usr/java/jdk1.8.0_11/
bin javafx-src.zip man THIRDPARTYLICENSEREADME-JAVAFX.txt
COPYRIGHT jre README.html THIRDPARTYLICENSEREADME.txt
db lib release
include LICENSE src.zip
$sudo ls /usr/java/jdk1.8.0_11/jre/
bin lib plugin THIRDPARTYLICENSEREADME-JAVAFX.txt Welcome.html
COPYRIGHT LICENSE README THIRDPARTYLICENSEREADME.txt
シングルユーザー用に設定
rootユーザーの場合は、特定のユーザーの.bash_profileを編集するか(例:/home/bobbin/.bash_profile)、ユーザーアカウントでログインします。そして、ファイルに以下の行を追加します。インストールに応じて、jdkバージョンパスを置き換えます。
Javaホームを設定する
export JAVA_HOME=/usr/java/jdk1.8.0_11/
JREホームを設定する
export JRE_HOME=/usr/java/jdk1.8.0_11/jre
JAVAホームとJREホームのPATH変数をエクスポート
export PATH=$PATH:/usr/java/jdk1.7.0_65/bin:/usr/java/jdk1.8.0_11/jre/bin
または
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
グローバルまたはすべてのユーザーに設定
グローバルに設定するには、/etc/profile
にJavaパスを設定する必要があります ファイル。以下の行をファイルに追加します
export PATH=$PATH:/usr/java/jdk1.8.0_11/bin
$sudo source /etc/profile
を実行する必要があります 変更をすぐに確認するコマンド、またはログアウトしてログインする必要があるコマンド。
結論
このチュートリアルでは、Centos 7にJavaをインストールし、環境変数を設定してアプリケーションの実行を開始する方法を学びました。これを読んで楽しんでいただければ幸いです。ご質問やフィードバックがございましたら、お気軽にコメントを残してください。