Avatar ·

Quelle est la différence entre Oracle JDK et OpenJDK pour un développeur Java ?

Bonjour à tous ! Je suis un développeur Java débutant et j'ai une confusion. Quand j'installe Java sur mon ordinateur (Windows 10), je vois deux options : Oracle JDK et OpenJDK. Je télécharge habituellement depuis le site officiel d'Oracle, mais récemment au travail on m'a dit d'utiliser OpenJDK.

J'ai essayé d'écrire un programme simple en Java 11 sur les deux JDK — ça semble fonctionner de la même manière :

public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello, World!");
    }
}

Mais j'ai remarqué qu'à la compilation, Oracle JDK affiche un avertissement, alors qu'OpenJDK non. J'ai aussi entendu dire qu'Oracle JDK est désormais payant pour un usage commercial. Est-ce vrai ? Ou cela concerne-t-il uniquement les anciennes versions ?

Dites-moi, s'il vous plaît :

  • Quelle est la différence réelle entre eux ?
  • Quel JDK est préférable pour l'apprentissage et pour la production ?
  • Le code écrit sur OpenJDK peut-il fonctionner sur Oracle JDK et vice versa ?
  • Si