Java adalah salah satu bahasa pemrograman paling populer di dunia, digunakan untuk membangun berbagai jenis aplikasi lintas platform. Mulai dari smartphone Anda, hingga berbagai software untuk Internet of Things mayoritas menggunakan Java.
Ada dua implementasi yang berbeda dari Java, OpenJDK dan Oracle Java dengan hampir tidak ada perbedaan di antara keduanya, kecuali bahwa Java Oracle memiliki beberapa fitur komersial tambahan. Lisensi Oracle Java hanya mengizinkan penggunaan non-komersial dari perangkat lunak, seperti penggunaan pribadi dan penggunaan pengembangan. OpenJDK adalah implementasi open-source dari Java Platform.
Repositori default CentOS 8 mencakup dua versi Java LTS terbaru, Java 8 dan Java 11.
Dalam tutorial ini, kami akan menjelaskan cara menginstal satu atau lebih versi Java (OpenJDK) pada CentOS 8 dan cara mengatur Java default melalui alternatif.
Install OpenJDK 11
Rekomendasi umum adalah menginstal versi Java LTS terbaru (JDK 11). Beberapa aplikasi berbasis Java mungkin memerlukan versi Java tertentu, jadi Anda mungkin perlu membaca dokumentasi untuk aplikasi yang ingin Anda install.
Untuk menginstal OpenJDK 11 pada CentOS 8, jalankan perintah berikut sebagai root atau user dengan hak akses sudo:
sudo yum install java-11-openjdk-devel
Setelah instalasi selesai, Anda dapat memverifikasinya dengan memeriksa versi Java:
java -version
Outputnya akan terlihat seperti ini:
openjdk version "11.0.4" 2019-07-16 LTS OpenJDK Runtime Environment 18.9 (build 11.0.4+11-LTS) OpenJDK 64-Bit Server VM 18.9 (build 11.0.4+11-LTS, mixed mode, sharing)
Pada poin ini, Anda telah berhasil menginstal Java pada sistem CentOS 8 Anda.
CentOS 8 juga mendukung versi headless OpenJDK yang menyediakan runtime Java minimal yang diperlukan untuk menjalankan aplikasi. Headless OpenJDK adalah Java tanpa GUI (tanpa dukungan keyboard, mouse, dan sistem tampilan). Versi ini lebih cocok untuk aplikasi server karena memiliki lebih sedikit ketergantungan dan menggunakan lebih sedikit sumber daya sistem.
Untuk menginstal hanya tipe OpenJDK 11 headless :
sudo yum install java-11-openjdk-headless
Jika Anda sudah menginstal java-11-openjdk-devel
, paket headless akan diinstal sebagai dependensi.
nstall OpenJDK 8 JDK
Java 8 masih merupakan versi Java yang paling banyak digunakan. Jika aplikasi Anda membutuhkan Java 8, yang notabene versi lebih lama, instal dengan menjalankan perintah berikut:
sudo yum install java-1.8.0-openjdk-devel
Verifikasi instalasi dengan memeriksa versi Java:
java -version
Outputnya akan terlihat seperti ini:
openjdk version "1.8.0_222" OpenJDK Runtime Environment (build 1.8.0_222-b10) OpenJDK 64-Bit Server VM (build 25.222-b10, mixed mode)
Untuk Java runtime minimal, instal pake java-1.8.0-openjdk-headless
.
Cara Setting Versi Default Java
Jika Anda menginstal beberapa versi Java pada sistem CentOS, Anda dapat menggunakan sistem alternatif untuk mengatur versi Java mana yang akan digunakan ketika Anda mengetik java
di terminal.
Untuk memeriksa versi Java apa yang ditetapkan sebagai versi default, ketik:
java -version
Jika Anda memiliki beberapa versi Java yang diinstal pada server, Anda dapat mengubah versi standar menggunakan perintah alternatives
seperti yang ditunjukkan di bawah ini:
sudo alternatives --config java
outputnya akan terlihat seperti ini :
There are 2 programs which provide 'java'. Selection Command ----------------------------------------------- 1 java-11-openjdk.x86_64 (/usr/lib/jvm/java-11-openjdk-11.0.4.11-0.el8_0.x86_64/bin/java) *+ 2 java-1.8.0-openjdk.x86_64 (/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.222.b10-0.el8_0.x86_64/jre/bin/java) Enter to keep the current selection[+], or type selection number:
Daftar semua versi Java yang diinstal akan dicetak pada layar. Masukkan nomor versi yang ingin Anda gunakan sebagai default dan tekan Enter
.
Anda mungkin juga ingin mengubah versi javac
default:
sudo alternatives --config java
javac
adalah utilitas perintah untuk compile program Java.
Seting Environment Variable JAVA_HOME
Variabel environment JAVA_HOME
digunakan oleh beberapa aplikasi Java untuk menentukan lokasi instalasi Java dan menentukan versi Java mana yang harus digunakan untuk menjalankan aplikasi.
Untuk mengatur variabel JAVA_HOME
pada basis per-user, tambahkan variabel tersebut ke ~/.bashrc
atau file konfigurasi lainnya yang dimuat ketika user login. Untuk pengaturan sistem, gunakan skrip di dalam direktori /etc/profile.d
.
Dengan asumsi Anda ingin mengatur JAVA_HOME menjadi OpenJDK 8, tambahkan baris berikut, di akhir file:
sudo nano /etc/profile.d/java.sh
JAVA_HOME="/usr/lib/jvm/java-1.8.0-openjdk"
Agar perubahan berlaku pada shell Anda saat ini, Anda bisa log out dan log in kembali atau menggunakan perintah source
:
source /etc/profile.d/java.sh
Verifikasi bahwa environment variable JAVA_HOME
telah ditetapkan dengan benar:
echo $JAVA_HOME
Outputnya dari perintah di atas akan memperlihatkan path ke instalasi Java:
/usr/lib/jvm/java-1.8.0-openjdk
Anda juga dapat mengatur JAVA_HOME
dalam konfigurasi aplikasi, unit file systemd, atau pada baris perintah saat meluncurkan program.
Misalnya untuk menjalankan Maven menggunakan Java 8 Anda dapat mengetik:
JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk mvn --version
... Java version: 1.8.0_222, vendor: Oracle Corporation, runtime: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.222.b10-0.el8_0.x86_64/jre ...
Kesimpulan
CentOS 8 mendukung dua versi Java utama, Java 8 dan Java 11, yang dapat diinstal menggunakan pengelola paket yum.