subrutin
a sequence of programmer life

Advertisement

Beramai – Ramai Meninggalkan JDK Oracle

1 283

Meskipun subrutin telah menerbitkan beberapa artikel yang membahas tentang lisensi yang berbeda di Java 11, namun sepertinya masih banyak developer java khususnya yang pemula kebingungan tentang versi  dan vendor JDK yang mana yang harus digunakan.

Advertisement

Dalam tulisan ini subrutin akan mengulas lebih rinci duduk masalah dari perubahan irama update JDK dan model distribusi binary dari Oracle JDK dan OpenJDK. Serta bagaimana alternatif solusi bagi developer Java  jika ingin mendapatkan update security patch dan bug fixing terhadap JDK nya secara gratis.

Semenjak rilis JDK 9, Oracle membuat rentetan pengumuman tentang rilis pengembangan JDK melalui OpenJDK Project. Salah satu dari pengumuman tersebut, Oracle memutuskan untuk berpindah ke model rilis berbasis waktu dimulai dari JDK 9. Kosenkuensinya kini tiap tahun akan ada dua kali rilis JDK, di bulan Maret dan Juga September.

Pada waktu yang sama Oracle juga mengumumkan akan menyediakan dua versi distribusi binary dari JDK. Oracle JDK yang dikirimkan dibawah lisensi Oracle Binary Code License Agreement for Java SE. Sedang binary JDK yang kedua di-build langsung dari source code OpenJDK  tanpa modifikasi apapun dirilis dibawah lisensi GPLv2 license with classpath exception (CPE).

Untuk Oracle JDK 8 (bukan OpenJDK) disebutkan sebagai versi JDK dengan dukungan jangka panjang alias Long Time Support (LTS) yang pertama. Dan LTS ini akan dirilis di tiap tiga tahun sekali. Berikutnya adalah Oracle JDK 11, Oracle JDK 17 dan Oracle JDK 23 dst,

Sedangkan untuk OpenJDK tidak akan memiliki versi LTS. Artinya update patch yang diterima hanya untuk jangka waktu 6 bulan sebelum versi OpenJDK berikutnya dirilis. Setelahnya, untuk mendapatkan update, pengguna diharuskan untuk meng-upgrade versi JDK-nya ke versi yang terbaru.

Advertisement

Pada Januari 2019, Oracle resmi mengumumkan menghentikan dukungan JDK 8. Namun meski begitu, Pengguna non komersial masih akan menerima pembaharuan hingga Desember 2020. Padahal berdasarkan survey di tahun 2018, n Java Magazine pada komunitas Java di media sosial (melalui Java User Group, Virtual JUG, dan pelanggan Java Magazine, dan  publikasi dua-bulanan Oracle). disebutkan bahwa setidaknya hampir 8 dari 10 Programmer Java, menggunakan JDK 8 di mesin produksinya.

Begitupula  bahwa 7 dari 10 developer menggunakan JDK buatan Oracle, sedangkan 2 dari 10 memilih OpenJDK.

Advertisement

Statistik jelas – jelas akan berubah di tahun 2019. Setelah berakhirnya update untuk JDK 8 oleh Oracle dan memulai JDK11, Oracle mengumumkan bahwa Oracle JDK tidak lagi tersedia gratis untuk penggunaan komersial di mesin produksi. Namun developer masih dapat mengunduh Oracle JDK 11 untuk keperluan development, testing dan demo/prototyping. Sedangkan untuk penggunaaan di lingkungan production, anda diharuskan menghubungi Oracle untuk membeli lisensi.

Keputusan Oracle ini tentu akan membuat beberapa developer Java berpindah menggunakan OpenJDK. Namun yang perlu diperhatikan sebagaimana dijelaskan pada bagian awal tulisan ini, bahwasannya OpenJDK tidak memiliki versi LTS.

Patching security dan bug fixing untuk OpenJDK hanya diperuntukkan untuk versi yang terbaru. Misalkan Pada tulisan ini dipublikasikan, versi terbaru adalah OpenJDK12, sehingga patching security dan bug fixing hanya di-deliver untuk OpenJDK12, ( Sedangkan OpenJDK 11 tidak akan lagi mendapatkan pembaharuan). Begitupula pada saat OpenJDK 13 rilis, OpenJDK 12 otomatis tidak akan lagi mendapatkan pembaharuan.

Situasi semacam itu tentu tidak ideal di lingkungan production/komersial, melakukan upgrade Java ke versi major yang lebih tinggi akan beresiko terhadap kestabilan aplikasi, terlebih apabila aplikasinya memiliki banyak traffic dan sangat mementingkan kestabilan aplikasi diatas segalanya. Mungkin ini ceruk pasar yang berusaha diraih oleh Oracle, agar di dunia korporat membeli lisensi update dan dukungan dari mereka.

Namun, untungnya  Java adalah produk Open Source sehingga Oracle bukan satu – satunya vendor  dapat merilis distribusi OpenJDK. ada banyak vendor lain yang merilis OpenJDKnya Misalnya IBM J9, Azul Zulu, Azul Zing dengan kebijakan lisensinya sendiri – sendiri.

Lalu apa perbedaan OpenJDK dari masing – masing Vendor? Dari sisi teknis tidak ada, karena masing masing vendor tersebut mengimplementasikan spesifikasi java yang sama dan sama – sama telah lolos JTCK (Java Technology Certification Kit)

Pembaca dapat mempertimbangkan mempergunakan OpenJDK dari Zulu misalnya, yang masih didistribusikan secara gratis dan berkomitmen untuk memberikan update untuk Java 8, dan java 11. Zulu juga menyediakan  support/dukungan  komersial dengan skema 24x7x365 atau 8×5 bagi yang memerlukan dan harga yang diklaim jauh lebih murah daripada vendor lain.

Selain itu juga ada AdoptOpenJDK, OpenJDK buatan komunitas Java yang memulai merlisi binary OpenJDK gratis dan masih menyediakan update patch, dan bug fixing untuk Java 8, dan Java 11

Untuk pengguna *nix seperti halnya RHEL juga tidak perlu panik, karena Red Hat masih akan memberikan patch security dan bug fixing untuk OpenJDK di environementnya hingga 2023 untuk OpenJDK8 dan 2024 untuk OpenJDK 11

advertisement

Get real time updates directly on you device, subscribe now.

1 Komen
  1. […] Beramai – Ramai Meninggalkan JDK Oracle […]

Tinggalkan pesanan

Alamat email anda tidak akan disiarkan.