PITSS Tech Blog
News zu Java, PL/SQL, Entwicklung & TechnologiewechselOracles neue Java Lizenz- und Support-Politik im Überblick
Java erfreut sich unglaublicher Beliebtheit. Umso schockierter war die Community, als Oracle im vergangenen Jahr bekannt gab, seine Support- und Lizenzpolitik dauerhaft und gravierend zu verändern. In diesem umfassenden Artikel erhalten Sie alle wichtigen Informationen zu den Änderungen, deren Konsequenzen und Ihren Handlungsoptionen, wenn Sie Java 8, 11 oder eine Zwischenversion wie Java 9 oder 10 im Einsatz haben.
Das Wichtigste zu Oracles Java Support-Politik in Kürze
Seit Februar 2019 stellt Oracle keine weiteren Updates mehr für die gewerbliche Nutzung von Java SE 8 auf seiner Website zur Verfügung. Wer auf diese Updates angewiesen ist, weil Sicherheitslücken zwingend geschlossen und kritische Fehlerkorrekturen verfügbar sein müssen, dem bleibt nur die Option, den kostenpflichtigen Oracle Java SE Advanced Support zu nutzen – zumindest wenn Java 8 weiterhin genutzt werden soll. Bereits am 16. April folgt das erste Update, das für die „free user“ nicht mehr zur Verfügung steht. Nur private Nutzer dürfen sich über weitere kostenlose Updates bis mindestens Ende 2020 freuen.
Auch Java 11 ist bekanntermaßen kostenpflichtig. Und da unternehmenskritische Anwendungen in aller Regel wegen des Long-Term-Supports (LTS) in Java 8 oder 11 geschrieben werden, sind in den meisten Fällen auch Zwischenversionen wie Java 9 und 10 keine ernstzunehmende Option.
Wie man es auch dreht und wendet, jeder potenzielle „Ausweg“ scheint nur ein Notnagel zu sein, der zum einen keine dauerhafte Lösung darstellt, und zum anderen schwere Folgen haben kann.
Oracle schraubt an den Java Release Zyklen
Ein Blick auf unsere Grafik zeigt, dass – beginnend mit Java 9 – die Release Zyklen für Java enorm angezogen wurden. Etwa halbjährlich erscheinen aktuell und künftig neue Versionen, wobei nur die wenigsten mit einem Long-Term-Support versehen werden. Wer auf Support und Updates angewiesen ist, braucht im Umkehrschluss also immer die aktuellste Version.
Während bis Java 10 zumindest für einen kurzen Zeitraum die produktive Nutzung der aktuellsten Version kostenlos war, ändert sich auch dieser Umstand mit Java 11. Es fallen sowohl Lizenzgebühren für die produktive Nutzung, als auch weitere Gebühren für den Support an.
Wann endet der Support für Java 8?
Für Java 8 werden, wie bereits eingangs erwähnt, seit Februar 2019 Gebühren für den Java SE Advanced Support fällig, während ältere Versionen wie 6 oder 7 solch eine Option gar nicht mehr oder nur noch für einen kurzen Zeitraum bieten.
Immerhin bleibt die Gewissheit, dass Java 8 dank LTS noch bis 2022 supported wird – im Extended Support gar noch bis 2025. Wenngleich Sie für beide Varianten natürlich zur Kasse gebeten werden.
Wer ist von Javas neuem Lizenz- und Supportmodell betroffen?
Betroffen ist im Grunde genommen jeder, der Java betrieblich nutzt. Allerdings fallen die Auswirkungen – je nach Einsatzzweck – unterschiedlich stark aus. Während eine kleine, unkritische, nur unternehmensintern genutzte Anwendung auch mal etwas vernachlässigt werden darf, gilt das für andere Anwendungen nicht. Insbesondere dann, wenn mit unternehmens- und prozesskritischen Daten gearbeitet wird, wenn sich sensible Daten im System befinden (z. B. Kundendatensätze) oder wenn Sie Anwendungen für Endkunden entwickeln.
Welche Java Version nutzen Sie?
Wenn Sie den Artikel bis hierhin aufmerksam gelesen haben, dann haben Sie möglicherweise schon erkannt, dass für Ihr weiteres Vorgehen beziehungsweise für die zu treffenden Entscheidungen vor allem eines wichtig ist: Die Frage, welche Java Version/en Sie im Einsatz haben.
An dieser Stelle möchten wir Ihnen auch unbedingt unseren (sehr schnellen und hilfreichen) 3-Minuten Online Java Check ans Herz legen, um schnell Klarheit zu erlangen.
Wie viele Firmen sind von der neuen Java Lizenzpolitik betroffen?
Wir hatten in unserem letztmonatigen Newsletter eine Umfrage zum Thema Java gemacht und dabei unter anderem die Frage gestellt, welche Java Version in den Firmen der jeweiligen Teilnehmer im Einsatz ist.
Die Verteilung zeigt, wie groß der Anteil an Firmen ist, die (vermutlich wichtige) Anwendungen in Java 8 oder 11 im Einsatz haben. Entsprechend hoch ist hier der Handlungsbedarf sofern nicht schon ordnungsgemäß lizenziert und der Support für die Software sichergestellt wurde.
Auch nicht ohne ist, dass viele Teilnehmer sowohl Java 8 als auch Java 11 im Einsatz haben. Häufig bedingt durch die Nutzung der Oracle JDK, das Features aus beiden Versionen bündelt, was eine ganz neue Problematik hervorruft, auf die wir gleich noch eingehen.
Mindestens genauso interessant ist, dass ein nicht unerheblicher Teil der Umfrageteilnehmer nicht mit Sicherheit sagen kann, welche Java Version/en tatsächlich im Unternehmen genutzt werden. Hier besteht dringend Klärungsbedarf, denn nur auf dieser Grundlage können Compliance- und Lizenzrisiken gemanaged werden.
Welche Risiken hat die neue Oracle Support Politik?
Im Wesentlichen lassen sich die Risiken der neuen Support- und Lizenzpolitik von Oracle in den folgenden vier Punkten zusammenfassen:
? Bündelung von kostenlosen und kostenpflichtigen Features im Oracle JDK
? Compliance Risiken
? Sicherheitslücken in kritischen Anwendungen
? Erhöhte Kosten
Das Oracle JDK und seine Folgen
Das Oracle JDK ist ein Framework zum Entwickeln von Java-basierten Anwendungen. Es erfreut sich großer Beliebtheit – und das sicher nicht zu unrecht. Problematisch wird das allerdings für alle, die nicht sehr tief in der Materie sind und davon ausgehen, nur Java 8 und dessen kostenlose Features im Einsatz zu haben. Was nämlich mancher nicht weiß: Das Oracle JDK bündelt kostenlose und kostenpflichtige Features aus den Java Versionen 8 und 11. Wer das nicht auf dem Schirm hat, begeht schnell einen Lizenzverstoß und riskiert abgestraft zu werden.
Die Compliance Risiken von Java 8 und 11
Da Sie gerade diesen Artikel lesen und sich offensichtlich mit dem Thema vertraut machen, ist ihr Risiko eines Compliance-Verstoßes gering. Denn neben der Bündelung von Features im Oracle JDK ist es häufig vor allem Gleichgültigkeit oder eine „Da-wird-schon-nichts-passieren-Einstellung“, die dazu führt, dass eben doch etwas passiert. Insofern sind Sie schon einmal auf einem guten Weg.
Sicherheitslücken durch fehlende Java Updates
Wer auf einer de-supporteten Java Version ist oder aber aus Kostengründen denkt, auf Support und vor allem Updates verzichten zu können, der macht einen großen Fehler. Nicht nur fehlende Features oder auftretende Bugs, die nicht beseitigt werden, sind die Folge. Allem voran steht, dass Sicherheitslücken, die von Hackern ausgenutzt werden könnten, nicht mehr geschlossen werden. Das stellt eine hochgradige Gefährdung für Ihr System und Ihre sensiblen Daten dar. Und das wieder dürfte – sollten Sie im B2B-Bereich tätig sein – in vielen Fällen auch den Vertragsmodalitäten widersprechen, die Sie mit Ihren Kunden vereinbaren.
Erhöhte Kosten
Zu guter Letzt sind aber natürlich auch die erhöhten Kosten selbst eine Art von Risiko. Während bis vor nicht allzu langer Zeit viele Firmen davon ausgegangen sind, Java dauerhaft in immer neuen Versionen kostenfrei nutzen zu können, hat sich das nun relativ schlagartig verändert. Sollten Sie eine hohe Anzahl an Lizenzen benötigen und die Kosten möglicherweise kritisch für Ihr Unternehmen sein, sind Sie eventuell zum Umdenken gezwungen. Etwa der Umstieg auf das OpenJDK.
Das Problem mit der Oracle Java Lizenzpolitik lösen
Jetzt, da Sie über das Problem mit Java besser informiert sind, stellen Sie sich sicherlich die Frage: „Welche Optionen habe ich nun?“ Wenngleich wir hier den Einzelfall nicht abdecken können und entsprechend eine Beratung (gerne durch uns) sinnvoll wäre, so lässt sich die Ausgangslage und damit die Herangehensweise im Kern auf drei Lösungsvarianten herunterbrechen:
Kostenpflichtige Java SE Subscription
Oracle Kunden, die lediglich die aktuelle Java 8 im Einsatz haben, benötigen zwingend eine kostenpflichtige JAVA SE Subscription, sofern Sie auch bei Java 8 bleiben wollen und für Ihre Anwendung auf Sicherheitsupdates nicht verzichten können.
In diesem Fall hätten Sie zunächst einmal Ruhe. Denn Oracle gewährt seinen Premier Support immerhin bis März 2022. Durch den extended Support ist – zumindest theoretisch – die Zukunft der Anwendung sogar noch bis 2025 gesichert.
Upgrade auf Oracle JDK 11
Wer ohnehin schon zahlen muss, der kann auch gleich auf das Oracle JDK 11 upgraden, oder? Auch hier gilt: Es führt an der Java SE Subscription kein Weg vorbei: Zum einen für den produktiven Einsatz, zum anderen, weil keine separate JRE mehr zur Verfügung gestellt wird. Java 11 ist also in jedem Fall kostenpflichtig.
Open JDK statt Oracle JDK
Entscheiden Sie sich für einen Wechsel auf Open JDK, ist Java weiterhin kostenfrei nutzbar. Adopt Open JDK verspricht zudem kostenfreien Support für Java 8 bis September 2022.
Häufig steckt mehr dahinter
Das Thema des Oracle Supports für Java erschließt sich häufig nur technisch versierten Mitarbeitern, die sich mit der Materie regelmäßig auseinandersetzen. Auch unsere Umfrage konnte beispielsweise nicht vollständig aufdecken, ob diejenigen, die davon ausgehen, nur Java 8 im Einsatz zu haben, nicht in Wirklichkeit über das Oracle JDK auch kostenpflichtige Java 11 Features nutzen. Unklarheiten dieser Natur stellen ein Risiko dar, das nicht unterschätzt werden darf.
Aber auch die Richtige unter den Handlungsoptionen zu wählen, fällt nicht immer leicht. Zumal häufig noch eine Menge sehr individuelle Faktoren mit reinspielen.
Ein Schritt in die richtige Richtung
Mit dem aufmerksamen Durchlesen dieses Artikels haben Sie einen Schritt in die richtige Richtung gemacht – aber auch noch nicht mehr. Sollte deshalb bei Ihnen im Bezug auf Java Handlungsbedarf bestehen, raten wir Ihnen dringend, das Thema so kurzfristig wie möglich anzugehen. Selbst oder mit der Hilfe eines kompetenten Partners – wie PITSS.
Wir informieren Sie umfassend und individuell im Rahmen eines Java Assessments über Ihre Handlungsoptionen. Dabei nutzen wir modernste, toolgestützte Analysen und unseren Java Detective, mit dem wir zuverlässig jede Zeile von Java Code in Ihrem System ausfindig machen können. Sprechen Sie uns gerne an!