Blog

Pilihan Alternatif Java dan Symbolic Link yang Buntu

Ketika saya bermain-main dengan perintah update-alternative untuk menambahakan pilihan alternatif java, malah terjadi error. Hal ini disebabkan karena saya salah memasukkan symbolic link ketika menambahkan pilihan alternatif. Berikut ini perintah yang menyebabkan masalah:

sudo update-alternative --install /etc/alternatives/java java /opt/jdk1.8.0_77/bin/java

Perhatikan teks yang berwarna merah! Teks tersebut merupakan symbolic link yang berlokasi di /etc/alternatives.

Symbolic link yang seharusnya dimasukkan adalah /usr/bin/java.

Akibatnya, error:

petanikode@imajinasi:~$ sudo update-alternatives --config java
update-alternatives: error: cannot stat file '/etc/alternatives/java': Too many levels of symbolic links

Tidak dapat memilih alternatif java, karena symbolic link java yang berada di /etc/alternatives buntu (broken).

Berikut ini cara saya mengatasinya:

  1. Hapus symbolic link yang buntu tadisudo rm /etc/alternatives/java
  2. Buat symbolic link java dari JDK yang sudah terinstalsudo ln -s /usr/lib/jvm/java-8-openjdk-amd64/bin/java /etc/alternatives/java
  3. Hapus pilihan alternatif yang menyebabkan error tadisudo update-alternative --remove java /opt/jdk1.8.0_77/bin/java
  4. Coba pilih alternatif lagisudo update-aternative --config java

Selanjutnya kita bisa tambahkan lagi alternatif java-nya dengan perintah yang benar. Silakan baca caranya di: Cara Mengatasi JDK yang Lebih dari Satu di Linux.

Mengapa perintah yang salah di atas tadi bisa menyebabkan error?

Mungkin karna symbolic link yang ada di direktori /etc/alternatives/ adalah link yang dipakai untuk menyambungkan symbolic link /usr/bin/java dengan java di JDK-nya yang asli.

Berikut ini ilustrasi hubungan antar link dan file asli.

File java yang berada di dalam JDK pilihan alternatif merupakan file asli, sedangkan yang berada di luar adalah file link yang saling menyambung hingga ke file asli.

Ketika kita mengetik perintah java di terminal, file yang eksekusi adalah symbolic link yang berada di /usr/bin/java. File ini tersambung sampai ke file asli.

Ternyata, masalah kecil ini menambah pengalaman dan pengetahuan saya.

Syukuri setiap masalah yang dihadapi. Di balik masalah selalu ada hikmah yang tersembunyi. 😄

Baca juga: Operator ^ (xor) di Java bukan untuk Membuat Pangkat | Menghitung Akar Kuadrat dan Akar Kubik dengan Java | Apa Fungsi String[] args pada Pemrograman Java?

Leave your thought here

Read More

Shell Indonesia Hadirkan Helix Ultra Generasi Baru: Inovasi Teknologi Formula Canggih untuk Masa Depan Otomotif Ramah Mesin dan Ramah Lingkungan

alya 08/11/2025

Jakarta, Industri otomotif Indonesia kembali mendapat angin segar dengan peluncuran produk terbaru dari Shell Indonesia, yaitu Shell Helix Ultra dengan formula generasi baru. Produk pelumas…

Tiongkok Percepat Revolusi Teknologi Nasional: Pedoman Baru Pemerintah Dorong Penerapan Inovasi dan Produk Canggih Secara Masif

alya 08/11/2025

Pemerintah Tiongkok baru saja merilis sebuah pedoman nasional yang berfokus untuk mempercepat pengembangan serta penerapan…

Meta Platforms Gelontorkan Investasi Rp 9.600 Triliun untuk Pusat Data AI: Langkah Raksasa Menuju Dominasi Teknologi Masa Depan

alya 08/11/2025

Perusahaan teknologi global Meta Platforms Inc., yang dipimpin oleh Mark Zuckerberg, kembali menjadi pusat perhatian…

Guncangan di Pasar Teknologi Global: Saham AI Tertekan, Sinyal Risiko Baru di Balik Euforia Kecerdasan Buatan

alya 08/11/2025

Pekan ini, pasar saham global mengalami penurunan tajam yang mengguncang sektor teknologi dan kecerdasan buatan…

Langkah Besar Teknologi Nasional: ITB Serahkan Laptop Berkomponen Dalam Negeri kepada Kemenperin, Wujud Nyata Kemandirian Digital Indonesia

alya 08/11/2025

Dalam upaya memperkuat ekosistem industri teknologi di tanah air, Institut Teknologi Bandung (ITB) secara resmi…

Feedback
Feedback
How would you rate your experience?
Do you have any additional comment?
Next
Enter your email if you'd like us to contact you regarding with your feedback.
Back
Submit
Thank you for submitting your feedback!