Wird Java jetzt kostenpflichtig?

Oracle hat angekündigt, den Java-Releasezyklus und das dazugehörige Supportmodell in diesem Jahr komplett zu überarbeiten. Welche Auswirkungen hat das auf die Arbeit von Java-Entwicklern und den Einsatz im Unternehmen? Müssen Anwender künftig für Java und den Support zahlen? Welche Alternativen gibt es?

Sprachen  –  750 Kommentare
Wird Java jetzt kostenpflichtig?

Die von Oracle im vergangenen Jahr angekündigten Veränderungen im Hinblick auf den Releasezyklus von Java und das ergänzende Supportmodell haben zu Verunsicherung in den Anwenderunternehmen sowie der Entwickler-Community geführt. Ausgehend von einem Vergleich der bisherigen Regelungen mit dem neuen Java-Releasezyklus gehen die Autoren der Frage nach, wie Unternehmen und Entwickler in Zukunft mit Java arbeiten können, und ob sie für Java bezahlen müssen. Abschließend präsentieren und diskutieren sie verschiedene Alternativen und Vorgehensweisen.

Bisher fiel es den meisten Entwicklern leicht, eine Anwendung auf einer unterstützten Version von Java zu entwickeln und zu betreiben. Bis Java 8 gewährte Oracle für jede Version verhältnismäßig lange Support. Updates pflegte der Anbieter sogar über die Freigabe der nachfolgenden Version hinaus.

Entwickler standen dadurch nur begrenzt unter Druck, zu einer neuen Version zu wechseln. Entsprechend langfristig gestaltete sich die Planung von Updates. In welchen Abständen bisher neue Java-Versionen erschienen und wie lange diese kostenlosen beziehungsweise kommerziellen Support von Oracle erhielten, macht Abbildung 1 deutlich.

Der bisherige Java-Release- und Supportzyklus von Oracle (Abb. 1)

Die Dauer, während der kostenloser Support für eine Java-Version – respektive parallel für zwei Versionen – zur Verfügung stand, gab Unternehmen meist genügend Zeit, um zur nächsten Version zu migrieren, ohne auf kommerziellen Support zurückgreifen zu müssen. In allen längerfristigen Projekten konnten sie die restliche Zeit durch dessen Zukauf überbrücken.

Der neue Java-Release- und Supportzyklus von Oracle (Abb. 2)

In Abbildung 2 ist der neue von Oracle angekündigte Releasezyklus dargestellt. Ab Java 9 erhalten die meisten Java-Versionen nur noch ein halbes Jahr Support. Nach sechs Monaten folgt die Anschlussversion, die ihrerseits wieder nur ein halbes Jahr zur Verfügung steht. Die bisher übliche Übergangszeit entfällt. Selbst wenn ein Unternehmen einen Vertrag mit Oracle abschließt, bleibt der auf die sechsmonatige Laufzeit der Java-Version begrenzt.

Oracle verabschiedet sich vom bisherigen Modell zugunsten von "Long Term Support"-Versionen (LTS), für die jeweils acht Jahre kostenpflichtiger Support verfügbar sind. Unternehmen dürfen die LTS-Versionen erst nach Abschluss eines Vertrags nutzen. Vielen Anwender, die bisher ohne ausgekommen sind, dürfte diese Neuerung unter Druck setzen.

Verschärfend kommen wichtige Änderungen hinzu, die den Einsatz des Oracle JDK beziehungsweise des Oracle JRE in Produktion betreffen: Ab Java 11 sind beide nur noch in Entwicklungs- und Testumgebungen kostenfrei nutzbar. Zwingende Voraussetzung für den Einsatz der Oracle JRE in Produktion ist der Abschluss eines kommerziellen Supportvertrags bei Oracle. Alternativ stellt Oracle JRE und JDK über das OpenJDK weiterhin kostenlos bereit. Das OpenJDK lässt sich grundsätzlich auch in Produktion kostenlos nutzen.