Oracle JDK n'est-il pas un projet open source?


J'ai lu à Techniquement, quelle est la principale différence entre Oracle JDK et Open JDK? le

"Oracle JDK est une implémentation de l'OpenJDK et n'est pas open source"

Mais le code source JDK est ouvertement disponible et gratuit . Droit . Alors, comment se fait-il que ce ne soit pas open source ? Peut-être que je me trompe ici en jugeant le JDK oracle comme open source car le code source peut être disponible et gratuit mais n'est-il pas autorisé à le modifier / étendre et à le redistribuer davantage, c'est pourquoi il n'est pas ouvert source ?

Author: Community, 2016-09-25

2 answers

Mais [le code source Oracle] JDK est ouvertement disponible et gratuit. Droit?

À proprement parler, Non.

1) Le code source complet du JDK Oracle n'est pas disponible. Le fichier ZIP du code source JDK contient uniquement le code source des API de la bibliothèque de classes publiques. Pas une partie de la classe "interne". Pas le JDK / JRE toolchains. Pas le runtime JVM lui-même; par exemple le compilateur JIT, les implémentations GC, le vérificateur, etc.

2) Pour le sous-ensemble disponible vous devez accepter une licence Oracle.

3) Le code source disponible indique dans les en-têtes de copyright qu'il est propriétaire d'Oracle (ou Sun).

Alors, comment se fait-il que ce ne soit pas open source?

Voir ci-dessus.

Peut-être que je me trompe ici parce que le code source peut être disponible et gratuit mais n'est-il pas autorisé à le modifier/étendre et à le redistribuer davantage, c'est pourquoi il n'est pas open source ?

C'est une des raisons.

L'open source ne fait pas que dire que le code source est disponible gratuitement. Il est également disponible sans restrictions excessives sur ce que vous pouvez en faire.

(Et si vous voulez lecomplet code source pour Oracle JDK, alors il estpas disponible gratuitement, et les termes et conditions sont assez restrictifs.)


En revanche, la base de code OpenJDK est couverte par GPLv2 (avec l '"exception Classpath" qui clarifie le point qu'une application construite pour utiliser les bibliothèques OpenJDK JVM / class est non soumis à la GPL.) Tout ce qui fait partie d'OpenJDK est disponible en tant que code source ... sans que tu signes quoi que ce soit.

Bien sûr, la GPL impose des restrictions sur ce que vous pouvez faire, mais celles-ci sont conçues pour rendre le code libre (comme dans liberty) et protéger les droits de l'utilisateur final.

 5
Author: Stephen C, 2017-08-16 15:38:58

OpenJDK est open source sous la licence GPL v2, alors qu'OracleJDK utilise le contrat de licence Oracle Binary Code (plus à ce sujetici etici ).

Vous n'avez pas tort lorsque vous dites que le code source est disponible gratuitement mais qu'il n'est pas autorisé à être modifié et redistribué davantage.

 1
Author: Nikhil Vibhav, 2016-09-25 08:04:02