Le JDK (Java Development Kit) désigne l'ensemble des bibliothèques logicielles de base de Java et les outils avec lesquels le code Java peut être compilé, transformé en bytecode destiné à une machine virtuelle Java. Il existe aujourd’hui des implémentations de la spécification Java SE (Java Standard Edition) de différents fournisseurs dans le monde tels que Azul, Eclipse, IBM, Red Hat, SAP, etc., et Oracle, ce dernier étant le plus influent d’entre eux tous. La grande majorité des autres fournisseurs se basent sur le projet OpenJDK pour fournir leurs implémentations du JDK tandis qu'Oracle JDK est entièrement développé par Oracle Corporation. Cela dit, avec les récents changements apportés à la distribution et au support d’Oracle JDK, les développeurs se posent de nombreuses questions sur l’avenir avec Oracle JDK.Le kit de développement d’Oracle a reçu son nom actuel après le rachat de Sun Microsystems par Oracle en 2010. Auparavant, il s'appelait SUN JDK et il s'agissait de la mise en œuvre officielle du langage de programmation Java. Le projet OpenJDK, une initiative de Sun Microsystems avant son rachat, est venu après dans le but d'offrir un kit de développement gratuit et open source, quel que soit l’usage auquel il est destiné. Autrement dit, il s’agit d’une implémentation gratuite et open source de Java SE Platform Edition. Il est développé par Oracle, OpenJDK et la communauté Java. Toutefois, les entreprises de premier plan telles que Red Hat, Azul Systems, IBM, Apple Inc. et SAP AG participent également activement à son développement.
Selon les développeurs, il n’y a pas une grande différence à noter entre les deux kits, car le processus de construction du JDK est basé sur celui d’OpenJDK. Certaines distributions Linux telles que Fedora, Ubuntu et Red Hat Enterprise Linux fournissent OpenJDK comme implémentation Java SE par défaut. Cependant, en termes de performance, certains préfèrent Oracle JDK. D’après eux, ce dernier est bien meilleur en termes de réactivité et de performance JVM. Ils expliquent cela par le fait qu'OpenJDK livre très souvent des versions du kit, ce qui pourrait être source de nombreux problèmes de stabilité ou de performance.
Depuis la version 11 du JDK d’Oracle, l’entreprise a modifié sa licence de distribution et d’utilisation de ses produits notamment dans le cadre d’une utilisation commerciale. Il faudra désormais souscrire à un abonnement mensuel, car Oracle a fait disparaître la licence permanente. La société avait également décidé qu’à partir de janvier 2019, elle cessera de fournir des mises à jour publiques pour Oracle JDK 8 encore utilisé par beaucoup de développeurs et d’entreprises clientes ou non d’Oracle. Un geste de l’entreprise que beaucoup avaient jugé déplacé ne voyant pas pourquoi il faudrait payer pour utiliser Java.
Ainsi, Oracle fournira des mises à jour publiques d’Oracle JDK 8 jusqu’en décembre 2020 au moins pour un usage personnel et à partir de janvier 2019, les mises à jour sont désormais payantes pour un usage commercial. À ce stade, les utilisateurs peuvent soit utiliser un plan d'assistance payé, soit utiliser une distribution binaire Java SE 8/OpenJDK 8 d'un autre fournisseur. À noter qu’Oracle fournit deux types d'implémentations : Oracle JDK (propriétaire et gratuit seulement pour le développement) et Oracle OpenJDK (libre et gratuit pour tout usage), ce dernier se retrouvant sans support au-delà de 6 mois. Autrement dit, Oracle produit maintenant deux fichiers binaires JDK : le JDK Oracle traditionnel et une version Oracle OpenJDK.
Vous pouvez tout de même continuer à utiliser Oracle JDK 8 indéfiniment sans mises à jour, mais les risques sont élevés. Par la suite, depuis l’annonce des nombreux changements d’Oracle Corporation, les avis sont mitigés dans la communauté, car beaucoup se demandent s’il faut adopter totalement une des nombreuses implémentations de l’OpenJDK. Il existe maintenant un grand nombre de fournisseurs Java SE/OpenJDK qui fournissent des mises à jour et/ou des options de support technique payantes. Si vous souhaitez par exemple des mises à jour de Java SE 8 après janvier 2019, vous pouvez utiliser une distribution binaire OpenJDK d'un fournisseur OpenJDK, à savoir des distributions Linux, AdoptOpenJDK, Azul, IBM, Red Hat, etc. Passons en revue ce que proposent quelques-uns de ces fournisseurs :
AdoptOpenJDK
AdoptOpenJDK est une communauté de membres du groupe d'utilisateurs Java (JUG), de développeurs et de fournisseurs Java (notamment Azul, Amazon, GoDaddy, IBM, jClarity, Microsoft, Pivotal et Red Hat) qui défendent OpenJDK. AdoptOpenJDK fournit des...
La fin de cet article est réservée aux abonnés. Soutenez le Club Developpez.com en prenant un abonnement pour que nous puissions continuer à vous proposer des publications.
