Install Java 8/11 di fedora 30/31 dan CentOS 7/8 atau RedHat 7/8

Tutorial ini , menjelaskan bagaimana cara melakukan installasi java 8(bisa juga untuk java 11) baik OpenJDK ataupun Oracle Java.

Di dalam Tutorial ini ada dua bagian yaitu

Apa yang baru di Java 8 bisa di baca di sini

Install OpenJDK

Langkah-langkah untuk melakukan instalasi OpenJDK sebagai berikut :

  • Search OpenJDK Untuk melakukan serching openjdk versi yang tersedia berdasarkan OS nya, jalankan perintah dnf search openjdk. nanti akan muncul seluruh paket yang tersedia di repository
    [root@cachak ~]# dnf search openjdk
    
[root@cachak ~]# dnf search openjdk
Last metadata expiration check: 19:30:57 ago on Fri 03 Apr 2020 01:25:55 PM WIB.
===================================================== Name & Summary Matched: openjdk ======================================================
java-11-openjdk-demo.x86_64 : OpenJDK Demos 11
java-1.8.0-openjdk-demo.x86_64 : OpenJDK Demos 8
java-latest-openjdk-demo.x86_64 : OpenJDK Demos 13
java-11-openjdk-jmods.x86_64 : JMods for OpenJDK 11
java-openjdk.i686 : Renamed to java-latest-openjdk
java-openjdk.x86_64 : Renamed to java-latest-openjdk
openjdk-orb-javadoc.noarch : Javadoc for openjdk-orb
java-11-openjdk-src.x86_64 : OpenJDK Source Bundle 11
java-1.8.0-openjdk-src.x86_64 : OpenJDK Source Bundle 8
java-11-openjdk.i686 : OpenJDK Runtime Environment 11
java-11-openjdk.x86_64 : OpenJDK Runtime Environment 11
java-latest-openjdk-jmods.x86_64 : JMods for OpenJDK 13
java-1.8.0-openjdk.x86_64 : OpenJDK Runtime Environment 8
java-1.8.0-openjdk.i686 : OpenJDK Runtime Environment 8
java-latest-openjdk-src.x86_64 : OpenJDK Source Bundle 13
java-latest-openjdk.i686 : OpenJDK Runtime Environment 13
java-latest-openjdk.x86_64 : OpenJDK Runtime Environment 13
java-openjdk-src.x86_64 : Renamed to java-latest-openjdk-src
java-11-openjdk-javadoc.x86_64 : OpenJDK 11 API documentation
java-openjdk-demo.x86_64 : Renamed to java-latest-openjdk-demo
java-1.8.0-openjdk-javadoc.noarch : OpenJDK 8 API documentation
java-openjdk-devel.i686 : Renamed to java-latest-openjdk-devel
java-openjdk-devel.x86_64 : Renamed to java-latest-openjdk-devel
java-openjdk-jmods.x86_64 : Renamed to java-latest-openjdk-jmods
java-11-openjdk-devel.i686 : OpenJDK Development Environment 11
java-11-openjdk-devel.x86_64 : OpenJDK Development Environment 11
java-latest-openjdk-javadoc.x86_64 : OpenJDK 13 API documentation
java-1.8.0-openjdk-devel.x86_64 : OpenJDK Development Environment 8
java-openjdk-javadoc.x86_64 : Renamed to java-latest-openjdk-javadoc
java-latest-openjdk-devel.i686 : OpenJDK Development Environment 13
java-latest-openjdk-devel.x86_64 : OpenJDK Development Environment 13
java-openjdk-headless.i686 : Renamed to java-latest-openjdk-headless
java-openjdk-headless.x86_64 : Renamed to java-latest-openjdk-headless
openjdk-orb.noarch : A downstream fork of OpenJDK's ORB implementation
java-openjdk-slowdebug.x86_64 : Renamed to java-latest-openjdk-slowdebug
java-11-openjdk-headless.i686 : OpenJDK Headless Runtime Environment 11
java-11-openjdk-headless.x86_64 : OpenJDK Headless Runtime Environment 11
java-1.8.0-openjdk-headless.x86_64 : OpenJDK Headless Runtime Environment 8
java-1.8.0-openjdk-accessibility.x86_64 : OpenJDK 8 accessibility connector
java-1.8.0-openjdk-headless.i686 : OpenJDK Headless Runtime Environment 8
java-11-openjdk-demo-slowdebug.x86_64 : OpenJDK Demos 11 with full debug on
java-openjdk-javadoc-zip.x86_64 : Renamed to java-latest-openjdk-javadoc-zip
java-1.8.0-openjdk-demo-slowdebug.x86_64 : OpenJDK Demos 8 with full debug on
java-latest-openjdk-headless.i686 : OpenJDK Headless Runtime Environment 13
java-latest-openjdk-headless.x86_64 : OpenJDK Headless Runtime Environment 13
java-latest-openjdk-demo-slowdebug.x86_64 : OpenJDK Demos 13 with full debug on
java-11-openjdk-jmods-slowdebug.x86_64 : JMods for OpenJDK 11 with full debug on
java-openjdk-src-slowdebug.x86_64 : Renamed to java-latest-openjdk-src-slowdebug
java-openjdk-demo-slowdebug.x86_64 : Renamed to java-latest-openjdk-demo-slowdebug
java-11-openjdk-slowdebug.x86_64 : OpenJDK Runtime Environment 11 with full debug on
java-latest-openjdk-jmods-slowdebug.x86_64 : JMods for OpenJDK 13 with full debug on
java-openjdk-devel-slowdebug.x86_64 : Renamed to java-latest-openjdk-devel-slowdebug
java-openjdk-jmods-slowdebug.x86_64 : Renamed to java-latest-openjdk-jmods-slowdebug
java-1.8.0-openjdk-slowdebug.i686 : OpenJDK Runtime Environment 8 with full debug on
java-1.8.0-openjdk-slowdebug.x86_64 : OpenJDK Runtime Environment 8 with full debug on
java-latest-openjdk-slowdebug.x86_64 : OpenJDK Runtime Environment 13 with full debug on
java-openjdk-javadoc-slowdebug.x86_64 : Renamed to java-latest-openjdk-javadoc-slowdebug
java-11-openjdk-headless-slowdebug.x86_64 : OpenJDK Runtime Environment with full debug on
java-11-openjdk-src-slowdebug.x86_64 : OpenJDK Source Bundle 11 for packages with debug on
java-openjdk-headless-slowdebug.x86_64 : Renamed to java-latest-openjdk-headless-slowdebug
java-1.8.0-openjdk-src-slowdebug.x86_64 : OpenJDK Source Bundle 8 for packages with debug on
java-11-openjdk-devel-slowdebug.x86_64 : OpenJDK Development Environment 11 with full debug on
java-latest-openjdk-headless-slowdebug.x86_64 : OpenJDK Runtime Environment with full debug on
java-latest-openjdk-src-slowdebug.x86_64 : OpenJDK Source Bundle 13 for packages with debug on
java-1.8.0-openjdk-headless-slowdebug.i686 : OpenJDK Runtime Environment 8 with full debug on
java-1.8.0-openjdk-headless-slowdebug.x86_64 : OpenJDK Runtime Environment 8 with full debug on
java-1.8.0-openjdk-devel-slowdebug.i686 : OpenJDK Development Environment 8 with full debug on
java-1.8.0-openjdk-devel-slowdebug.x86_64 : OpenJDK Development Environment 8 with full debug on
java-11-openjdk-javadoc-zip.x86_64 : OpenJDK 11 API documentation compressed in a single archive
java-openjdk-javadoc-zip-slowdebug.x86_64 : Renamed to java-latest-openjdk-javadoc-zip-slowdebug
java-1.8.0-openjdk-javadoc-zip.noarch : OpenJDK 8 API documentation compressed in a single archive
java-latest-openjdk-devel-slowdebug.x86_64 : OpenJDK Development Environment 13 with full debug on
java-11-openjdk-javadoc-slowdebug.x86_64 : OpenJDK 11 API documentation for packages with debug on
java-latest-openjdk-javadoc-zip.x86_64 : OpenJDK 13 API documentation compressed in a single archive
java-1.8.0-openjdk-javadoc-slowdebug.noarch : OpenJDK 8 API documentation for packages with debug on
java-1.8.0-openjdk-accessibility-slowdebug.x86_64 : OpenJDK 8 accessibility connector for packages with debug on
java-11-openjdk-javadoc-zip-slowdebug.x86_64 : OpenJDK 11 API documentation compressed in single archive for packages with debug on
java-1.8.0-openjdk-javadoc-zip-slowdebug.noarch : OpenJDK 8 API documentation compressed in single archive for packages with debug on
java-1.8.0-openjdk-openjfx.x86_64 : OpenJDK x OpenJFX connector. This package adds symliks finishing Java FX integration to
                                  : java-1.8.0-openjdk
java-1.8.0-openjdk-openjfx-devel.i686 : OpenJDK x OpenJFX connector for FX developers. This package adds symliks finishing Java FX
                                      : integration to java-1.8.0-openjdk-devel
java-1.8.0-openjdk-openjfx-devel.x86_64 : OpenJDK x OpenJFX connector for FX developers. This package adds symliks finishing Java FX
                                        : integration to java-1.8.0-openjdk-devel
java-1.8.0-openjdk-openjfx-slowdebug.x86_64 : OpenJDK x OpenJFX connector for packages with debug on. his package adds symliks finishing
                                            : Java FX integration to java-1.8.0-openjdk-slowdebug
java-1.8.0-openjdk-openjfx-devel-slowdebug.x86_64 : OpenJDK x OpenJFX connector for FX developers for packages with debug on. This package
                                                  : adds symliks finishing Java FX integration to java-1.8.0-openjdk-devel-slowdebug
========================================================= Summary Matched: openjdk =========================================================
openprops.noarch : An improved java.util.Properties from OpenJDK
icedtea-web.x86_64 : Additional Java components for OpenJDK - Java browser plug-in and Web Start implementation
[root@cachak ~]# 

  • Install OpenJDK

    Setelah di search, nanti akan muncul dua versi yaitu java 11 dan java 8, bisa lakukan install dua dua nya atau salah satu saja, kali ini kita akan install java 8. Untuk melakukan install jalan dnf install java-1.8.0-openjdk. Untuk melakukan install perintah yang dilakukan :

    [root@cachak ~]# dnf install <openjdk-package-name>
    

    contohnya :

    [root@cachak ~]# dnf install java-{1.8.0|11|latest}-openjdk.x86_64
    

    karena kita hanya akan install openjdk 8, maka :

    [root@cachak ~]# dnf install java-1.8.0-openjdk.x86_64
    

    akan ada dua paket utama yang akan di install yaitu java-1.8.0-openjdk dan java-1.8.0-openjdk-headless plus dependensi nya. Langkah diatas hanya akan melukan instalasi jvm, tidak akan melakukan instalasi java yang dibutuhkan untuk compiler seperti javac, untuk itu harus dilakukan install java-devel yaitu java-1.8.0-openjdk-devel

    [root@cachak ~]# dnf install java-1.8.0-openjdk-devel.x86_64
    
  • Verifikasi Java

    Setelah dilakukan instalasi, maka berikutnya kita lakukan verifikasi java yang sudah di install. Untuk melakukan verifikasi, banyak cara yang bisa di gunakan. Salah satu cara yang paling gampang adalah melihat versi java yang di install dengan cara java -version

    [root@cachak ~]# java -version
    openjdk version "1.8.0_242"
    OpenJDK Runtime Environment (build 1.8.0_242-b08)
    OpenJDK 64-Bit Server VM (build 25.242-b08, mixed mode)
    [root@cachak ~]# 
    

    akan tetapi kadang path javanya sendiri tidak ditemukan, seperti

    [root@cachak ~]# java -version
    bash: java: command not found...
    [root@cachak ~]#   
    

    maka yang perlu dilakukan melihat pathnya dimana sehingga bisa dilakukan dengan full path

    [root@cachak ~]# rpm -ql java-1.8.0-openjdk-headless | grep 'bin/java'
    /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.242.b08-0.fc30.x86_64/jre/bin/java
    [root@cachak ~]# 
    

    Dari perintah diatas, maka ketahuan path java nya ada di /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.242.b08-0.fc30.x86_64/jre/bin/java Setelah itu baru lakukan verifikasi [root@cachak ~]# /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.242.b08-0.fc30.x86_64/jre/bin/java -version openjdk version "1.8.0_242" OpenJDK Runtime Environment (build 1.8.0_242-b08) OpenJDK 64-Bit Server VM (build 25.242-b08, mixed mode) [root@cachak ~]#

    Jika sebelumnya dilakukan install java devel, maka lakukan perintah berikut untuk mengetahui path nya

    [root@cachak ~]# rpm -ql java-1.8.0-openjdk-devel | grep 'bin/java'
    /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.242.b08-0.fc30.x86_64/bin/java
    /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.242.b08-0.fc30.x86_64/bin/java-rmi.cgi
    /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.242.b08-0.fc30.x86_64/bin/javac
    /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.242.b08-0.fc30.x86_64/bin/javadoc
    /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.242.b08-0.fc30.x86_64/bin/javah
    /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.242.b08-0.fc30.x86_64/bin/javap
    [root@cachak ~]# 
    

    Setelah itu lakukan verifikasi untuk java ataupun javac

    [root@cachak ~]# /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.242.b08-0.fc30.x86_64/bin/java -version
    openjdk version "1.8.0_242"
    OpenJDK Runtime Environment (build 1.8.0_242-b08)
    OpenJDK 64-Bit Server VM (build 25.242-b08, mixed mode)
    [root@cachak ~]# /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.242.b08-0.fc30.x86_64/bin/javac -version
    javac 1.8.0_242
    [root@cachak ~]#   
    
  • Konfigurasi Java

    Setelah seluruh paket sudah install dan sudah di verifikasi, maka langkah selanjut ada lah melakukan install symlink path dengan alternatives. perintah yang dijalankan

    [root@cachak ~]# alternatives --install /path/link/yang/tujuan namanya /path/link/source prioritasnya
    
    • Untuk path /path/link/yang/tujuan maka /usr/bin/java, supaya perintah java bisa di kenal di mana saja.
    • Untuk namanya adalah java
    • Untuk /path/link/source nya sesuai dengan yang diatas maka /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.242.b08-0.fc30.x86_64/jre/bin/java
    • Untuk prioritasnya kita isi 200000
    [root@cachak ~]# alternatives --install /usr/bin/java java /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.242.b08-0.fc30.x86_64/jre/bin/java 200000
    [root@cachak ~]#
    

    selanjutnya lakukan configure untuk digunakan dengan alternatives –config java, lalu pilih sesuai dengan nama dan path yang sudah di daftarkan diatas

    [root@cachak ~]# alternatives --config java
    
    There are 2 programs which provide 'java'.
    
      Selection    Command
    -----------------------------------------------
    *  1           /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.242.b08-0.fc30.x86_64/jre/bin/java
     + 2           /usr/java/latest/jre/bin/java
    
    Enter to keep the current selection[+], or type selection number: 1
    [root@cachak ~]# 
    

    Perintah diatas juga untuk memindahkan java command line yang aktif akan menggunakan versi yang mana, nanti akan kelihatan setelah kita install Oracle Java nya, karena akan ada dua java yaitu java openjdk dan Oracle Java.<br /> Setelah di lakukan konfigurasi, maka kita bisa langsung melakukan perintah java di mana saja, silahkan lakukan testing java -version dari user biasa :

    [cachak@cachak ~]$ java -version
    openjdk version "1.8.0_242"
    OpenJDK Runtime Environment (build 1.8.0_242-b08)
    OpenJDK 64-Bit Server VM (build 25.242-b08, mixed mode)
    [cachak@cachak ~]$ 
    

    Untuk yang melakukan install openjdk devel, maka bisa menambahkan harus dilakukan konfigurasi juga supaya java dan javac. Pertama pastikan path nya ada di mana dengan perintah rpm -ql java-1.8.0-openjdk-devel | grep ‘bin/java’ :

    [root@cachak ~]# rpm -ql java-1.8.0-openjdk-devel | grep 'bin/java'
    /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.242.b08-0.fc30.x86_64/bin/java
    /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.242.b08-0.fc30.x86_64/bin/java-rmi.cgi
    /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.242.b08-0.fc30.x86_64/bin/javac
    /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.242.b08-0.fc30.x86_64/bin/javadoc
    /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.242.b08-0.fc30.x86_64/bin/javah
    /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.242.b08-0.fc30.x86_64/bin/javap
    [root@cachak ~]# 
    

    Setelah full pathnya di ketahuan, maka langkah selanjutnya adalah mendaftarkan atau mengkonfigurasi java dan javac berdasarkan path tersebut dengan alternatives

    [root@cachak ~]# alternatives --install /usr/bin/java java /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.242.b08-0.fc30.x86_64/bin/java 200000
    [root@cachak ~]# 
    [root@cachak ~]# alternatives --install /usr/bin/javac javac /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.242.b08-0.fc30.x86_64/bin/javac 200000
    [root@cachak ~]# 
    

    Setelah itu lakukan konfigurasi java dan javac nya, dan pilih sesuia kebutuhkan, akan di pakai yang mana. Untuk java :

    [root@cachak ~]# alternatives --config java
    
    There are 3 programs which provide 'java'.
    
      Selection    Command
    -----------------------------------------------
    *+ 1           /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.242.b08-0.fc30.x86_64/jre/bin/java
       2           /usr/java/latest/jre/bin/java
       3           /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.242.b08-0.fc30.x86_64/bin/java
    
    Enter to keep the current selection[+], or type selection number: 3
    [root@cachak ~]# 
    

    Untuk javac :

    [root@cachak ~]# alternatives --config javac
    
    There are 2 programs which provide 'javac'.
    
      Selection    Command
    -----------------------------------------------
    *  1           /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.242.b08-0.fc30.x86_64/bin/javac
     + 2           /usr/java/latest/bin/javac
    
    Enter to keep the current selection[+], or type selection number: 1 
    [root@cachak ~]# 
    

Install Oracle Java

Langkah-langkah untuk melakukan instalasi Oracle Java sebagai berikut :

1. Download

Lakukan Download Oracle java dari dari Oracle Java SE download pages. Pilih versi yang sesuia dengan yang di butuhkan, apakah akan melakukan install java 8 atau java 11.

Karena yang akan saya install adalah java 8, maka saya akan miliha java 8, dan karena butuhnya adalah JDK bukan JRE, maka akan saya klik JDK Download. Untuk yang butuh install di server dan tidak butuh JDK, saya sarankan untuk pilih yang JRE(Java Runtime Environment) di bandingkan JDK(Java Development Kits). Nanti akan muncul halaman Download JDK Oracle Java 8. Pilih Arch sesuai linux yang di install, di laptop saya 64bit, maka saya pilih Linux x64 RPM Package. Berikut contoh screenshot halaman nya

Setelah di klik akan muncul halaman aggrement dan konfirmasi

Setelah klik Download, nanti akan di arahkan untuk login dengan oracle account supaya bisa melakukan download, lakukan create account jika memang belum punya oracle account.

Masukkan account di halaman login jika memang sudah punya atau sudah create account. Setelah login nanti akan langsung muncul halaman download, dan silahkan save file di path yang sesuai. contoh dalam hal ini aku save di /home/cachak/Downloads/java

2. Install Oracle Java

Setelah paket rpm nya sudah di download, langkah berikutnya melakukan instalasi terhadap paket yang sudah di download dengan dnf yaitu sudo dnf localinstall namapaketnya.rpm atau rpm -Uvh namapaket.rpm. Pertama masuk ke folder tempat download nya baru lakukan install.

3. Verifikasi Java

Setelah di lakukan instalasi, yang harus di lakukan adalah melakukan verifikasi. Pertama yang harus dilakukan adalah mencari path Oracle java nya di install dimana. Pertama cari nama rpm nya dengan cara rpm -qa | grep jdk{versinya}, misalnya rpm -qa | grep jdk1.8. Setelah itu nanti akan muncul nama paketnya, lakukan rpm -ql namapaketnya | grep 'bin/java' atau dengan rpm -ql namapaket.rpm | grep 'bin'java'

# untuk mencari namapaketnya
rpm -qa | grep jdk1.8
# untuk lihat path nya setelah dapat nama paketnya
rpm -ql jdk1.8-1.8.0_241-fcs.x86_64 | grep 'bin/java'
# untuk lihat path nya dengan full rpm nya
rpm -ql jdk-8u241-linux-x64.rpm | grep 'bin/java'

Dari info diatas kelihatan path java nya ada di /usr/java/jdk1.8.0_241-amd64

Setelah itu maka lakukan verifikasi java dan javac dengan :

# untuk verifikasi java
/usr/java/jdk1.8.0_241-amd64/bin/java -version

# untuk verifikasi javac
/usr/java/jdk1.8.0_241-amd64/bin/javac -version

4. Konfigurasi Java

Setelah dilakukan verifikasi, maka sudah di pastikan bahwa oracle java nya sudah terinstall dengan sempurna, berikutnya melakukan konfigurasi. Untuk melakukan konfigurasi sama dengan java openjdk, perbedaannya hanya di pathnya saja.

Perintah untuk melakukan konfigurasi sama dengan sebelumnya yaitu

# untuk melakukan install konfigurasi path
alternatives --install /path/link/yang/tujuan namanya /path/link/source prioritasnya
# untuk install konfigurasi java
alternatives --install /usr/bin/java java /usr/java/jdk1.8.0_241-amd64/bin/java 200000

# untuk install konfigurasi javac
alternatives --install /usr/bin/javac javac /usr/java/jdk1.8.0_241-amd64/bin/javac 200000

Setelah dilakukan install path nya, maka tinggal melakukan pemilihan java atau javac yang mana yang akan di gunakan, apakah oracle java atau java openjdk

# untuk memilih konfigurasi java
alternatives --config java

# untuk memilih konfigurasi javac
alternatives --config javac
untuk memilih java
untuk meilih javac

Setelah itu lakukan verifikasi java atau javac yang sudah di pilih tadi dengan user biasa dengan java -version atau javac -version

java -version
javac -version

Dari screenshot diatas, kelihatan sudah bahwa java ataupun javac yang digunakan sudah menggunakan Oracle Java

Selesai sudah tutorial install java baik itu java openjdk atau oracle java. Semoga bermanfaat buat semuanya. Amin

Referensi:

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.