Tentu pembaca yang aktif di grup komunitas pengembang sudah mendengar akan isu ini, dimana Oracle telah mengubah bentuk dukungan mereka terhadap Java. Ada Juga isu yang menyatakan Java sekarang sudah berbayar. Kabar tersebut tidak benar. Meskipun tidak seluruhnya salah.
Setelah 23 tahun programmer Java dapat mengunduh JDK dari Oracle dan menggunakannya secara gratis, dan memuncaki pencarian Google. Kini Oracle mengubah bentuk dukungan mereka terhadap JDK.
Saat penulis mengujungi situs resmi Oracle JDK, dan hendak mengunduh JDK 11. Penulis dihadapkan pada sebuah peringatan seperti gambar
Disebutkan bahwa license terms yang ditawarkan pada JDK11 telah dimutakhirkan, yang secara substansial berbeda dengan JDK versi sebelumnya.
Jika dibaca lebih detail agreement tersebut memiliki poin penting yaitu penggunaan JDK untuk komersial, produksi ataupun internal bisnis dilarang, kecuali untuk pengembangan, purwarupa dan keperluan demo.
Beberapa orang secara sarkastik, menganggap ketentuan baru yang dibuat Oracle sedang memasang perangkap. Perangkap tersebut mempunyai alur sebagai berikut,
- Unduh Oracle JDK, setelah sebelumnya melakukan pencarian di Google Search (Tautan untuk ke situs Oracle JDK selalu menjadi urutan pertama)
- Mendeploy aplikasi ke mesin produksi tanpa menyadari lisensi-nya telah berubah
- Setelah beberapa saat, pengguna akan mendapatkan tagihan dari Oracle karena penggunaan komersial dari JDK-nya.
- Oracle OpenJDK
Pada gambar 1, disebutkan bahwa Oracle juga menyediakan JDK11 yang berada di bawah GPL License, yang dapat dilihat di situs resminya jdk.java.net/11
Jadi, per- versi 11, oracle menyediakan 2 versi JDK yaitu
- Oracle’s JDK (komersial) – dimana pengguna dapat menggunakannya untuk development dan pengujian secara gratis. Namun akan dikenai tagihan kala menggunakannya untuk lingkungan produksi
- Oracle’s OpenJDK (open source) – dimana pengguna bebas dan gratis menggunakannya di lingkungan manapun, seperti halnya pustaka lain yang bersifat opensource
Kedua JDK tersebut secara fungsionalitas sama. Sehingga pengguna bisa menjalankan aplikasi java-nya di kedua JDK tersebut tanpa perubahan atau kehilangan fitur apapun.
Yang perlu diperhatikan dari dua versi JDK tersebut adalah dukungannya. Dimana untuk JDK Oracle yang berlisensi komersial akan mendapatkan dukungan dan update dari Oracle. Sementara untuk OpenJDK, Oracle tidak akan memberikan update untuk versi sebelumnya. Misalkan sekarang ini Java 11 telah rilis, maka OpenJDK Oracle versi 9 dan 10 tidak akan mendapatkan pemutakhiran. Hal ini berarti pengguna akan dipaksa untuk menggunakan Open JDK versi yang paling terbaru jika ingin mendapatkan update
- Opsi ke Tiga
Namun bagaimanapun Oracle tidak satu – satunya vendor yang menyediakan JDK. Ada vendor lain yang menyediakan JDK dengan berbagai model dukungan (gratis ataupun berbayar) dan perilaku yang juga berbeda dalam menyediakan update untuk versi java yang berbeda. Semisal, ada beberapa vendor yang masih melanjutkan dukungan dan update untuk Java 9, sementara Oracle telah menghentikan dukungannya.
Jadi, pembaca bisa menggunakan opsi ke-tiga untuk mencari tahu lebih lanjut tentang JDK dari vendor selain oracle. Misalnya. Azul, IBM, Red Hat, dan AdoptOpenJDK