Pemrograman

Bahasa

Framework

Peralatan

Info

Cara Mengatasi JDK yang Lebih dari Satu di Linux

– 05 April 2016
Saya menginstal lebih dari satu JDK di Linux (Xubuntu). Ada Open JDK 8, Open JDK 7, dan Oracle JDK 8. Awalnya saya hanya punya Open JDK 8. Kemudian setelah mengintal Gradle, Open JDK 7 juga ikut tersintal. Selain itu, saya juga menginstal Oracle JDK 8 Secara manual di direktori /opt.

Saat ini JDK yang sedang aktif digunakan adalah Open JDK 7. Beberapa IDE tidak mendukung bila menggunakan Open JDK 7. Seperti Android Studio, tidak dapat dibuka karena JDK-nya masih versi 7. Berikut ini pesan Error-nya.
petanikode@imajinasi:/opt/android-studio/bin$ bash studio.sh 

JDK Required: 'tools.jar' seems to be not in Studio classpath.
Please ensure JAVA_HOME points to JDK rather than JRE.
Bagaimanakah cara mengganti lagi ke Open JDK 8? Apakah harus instal ulang Open JDK 8 dan menghapus OpenJDK 7? Itu tidak perlu dilakukan, karena Linux sudah menyediakan sebuah perintah untuk memilih alternatif JDK. Perintah tersebut adalah:
sudo update-alternatives --config java
Berikut ini tampilan outputnya di komputer saya:

Saya pilih nomer 2, karena pilihan tersebut untuk memilih Open JDK 8. Setelah itu, ketika saya memeriksa versinya
petanikode@imajinasi:~$ java -version
openjdk version "1.8.0_72-internal"
OpenJDK Runtime Environment (build 1.8.0_72-internal-b15)
OpenJDK 64-Bit Server VM (build 25.72-b15, mixed mode)
Sekarang saya menggunakan Open JDK 8 dan Android Studio dapat berjalan dengan lancar.

Sementara untuk Oracle JDK yang saya instal secara manual (copy-paste) di direktori /opt tidak terdaftar dalam pilihan alternatif. Untuk menambahkanya, ketik perintah berikut ini.
sudo update-alternatives --install /usr/bin/java java /opt/jdk1.8.0_77/bin/java 1080
Teks yang berwarna merah adalah lokasi saya menginstal Oracle JDK dan teks yang berwarna biru adalalah prioritas. Nilai prioritas 1080 akan menjadikan Oracle JDK berada pada posisi teratas di pilihan alternatif, karena prioritas pilihan teratas adalah 1071 (pada komputer saya). Berikut ini hasilnya:

Cek lagi versi java yang dipakai:
petanikode@imajinasi:~$ java -version
java version "1.8.0_77"
Java(TM) SE Runtime Environment (build 1.8.0_77-b03)
Java HotSpot(TM) 64-Bit Server VM (build 25.77-b03, mixed mode)
Sekrang java yang dipakai adalah java dari Oracle JDK. Untuk menghapus Oracle JDK dari pilihan alternatif, ketik perintah:
sudo update-alternatives --remove java /opt/jdk1.8.0_77/bin/java
Begitulah cara saya mengatasi JDK yang lebih dari satu di Linux. Tak maslah, berapapun JDK yang diinstal, asalkan mengerti menggunakan perintah update-alternatives, kita bisa mengaturnya sesuai selera.

Baca juga: Pilihan Alternatif Java dan Symbolic Link yang Buntu