821 Stimmen

Unterschiede zwischen Oracle JDK und OpenJDK

HINWEIS: Diese Frage stammt aus dem Jahr 2014. Ab Java 11 nähern sich OpenJDK und Oracle JDK an.

Gibt es wichtige Unterschiede zwischen Oracle und OpenJDK?

Sind zum Beispiel die Garbage Collection und andere JVM-Parameter gleich?

Arbeitet die GC bei den beiden unterschiedlich?

5voto

logbasex Punkte 1016

OpenJDK

  • OpenJDK ist Open-Source-Code, der von Oracle gewartet und entwickelt wird, aber es ermöglicht Gemeinschaften und anderen Unternehmen, an dieser Entwicklung teilzunehmen, wie Red Hat, Azul Systems, IBM, Apple Inc, usw. OpenJDK ist sowohl ein JDK-Produkt als auch eine Spezifikation, jedes Unternehmen oder jede Organisation, die OpenJDK verwenden möchte, um eine neue Variante zu erstellen, muss sich an diese Spezifikationen halten. OpenJDK wird von Oracle und den Beiträgen der Gemeinschaft entwickelt. Manchmal haben wir Probleme mit seiner Stabilität; basierend auf dem Feedback der Benutzer wird es jedoch aktualisiert, um besser zu funktionieren. OpenJDK wird regelmäßig aktualisiert, ungefähr alle 6 Monate.

Oracle JDK

  • Oracle JDK wird von Oracle gewartet und entwickelt. Es entspricht den OpenJDK-Spezifikationen, ist jedoch kein Open-Source-Code. Oracle JDK ist in Bezug auf die JVM-Reaktionsfähigkeit und Produktivität wesentlich besser. Es legt mehr Wert auf Stabilität aufgrund ihrer Bedeutung für die Unternehmenskunden.

Quelle: https://o7planning.org/12571/history-of-java-and-the-difference-between-oracle-jdk-and-openjdk

2voto

nettie Punkte 572

Mein Verständnis ist, dass Oracle JDK nicht in der Produktion verwendet werden kann, daher kann ich es (ohne zu zahlen) für die Webanwendung, die ich für mein Unternehmen baue, nicht legal verwenden. Ich muss OpenJDK verwenden. Bitte korrigieren Sie mich, wenn ich falsch liege! Aus diesem Artikel.

Ab Java 11 ist das Oracle JDK auf Entwicklung und Testumgebungen beschränkt. Oracle JDKs dürfen nur in der Produktion verwendet werden, wenn Sie den kommerziellen Support kaufen. Stattdessen wird Oracle Java-Builds auf OpenJDK-Basis kostenlos bereitstellen, die in der Produktion verwendet werden können. Aber für das offizielle Oracle JDK sieht die echte Roadmap so aus:

UPDATE: Ich liege falsch. Ich kann Oracle JDK kostenlos verwenden, erhalte jedoch nach 6 Monaten keine Sicherheitsupdates mehr und wir müssen das Risiko übernehmen. Schauen Sie sich den oben verlinkten Artikelabschnitt "Was bedeutet der neue Release-Zyklus für mein Unternehmen?" an.

0voto

Es ist sehr nah - unser Build-Prozess für Oracle JDK-Versionen basiert auf OpenJDK 7, indem nur ein paar Teile hinzugefügt werden, wie der Bereitstellungscode, der die Implementierung des Java-Plugins und von Java WebStart von Oracle umfasst, sowie einige geschlossene Drittanbieterkomponenten wie ein Grafik-Rasterizer, einige Open-Source-Drittanbieterkomponenten wie Rhino, und ein paar kleine Stücke hier und da, wie zusätzliche Dokumentation oder Drittanbieter-Schriftarten. Für die Zukunft beabsichtigen wir, alle Teile des Oracle JDK als Open Source freizugeben, außer denen, die wir als kommerzielle Funktionen betrachten, wie JRockit Mission Control (noch nicht im Oracle JDK verfügbar), und ersetzen belastete Drittanbieterkomponenten durch Open-Source-Alternativen, um eine engere Parität zwischen den Codebasen zu erreichen.

· Ja, die Garbage Collection und andere JVM-Parameter sind gleich.

· Die Leistung der GC ist in beiden gleich.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X