„JOSM and Java“ im deutschen OSM-Forum

https://twitter.com/adoptopenjdk

Gastbeitrag von Vincent Privat

(sollten sich Fehler/Unstimmigkeiten in die Übersetzung eingeschlichen haben, bitten wir um eine Email an theweeklyosm [at) gmail (punkt] com)

Dies ist die Übersetzung der Erstveröffentlichung, die auf Twitter stattgefunden hat. – Die aktuelle Version befindet sich hier


Ich habe viele falsche Aussagen über die neue Java-Lizenz von Oracle auf der Seite des deutsches OSM-Forums gelesen, nachdem es in weeklyOSM 458 erwähnt wurde. Lassen Sie uns im Detail sehen, worum es hier geht.

Zuerst ein wenig Geschichte/Terminologie. Java wurde 1995 von Sun entwickelt. Wir nennen „Java“ sowohl die Programmiersprache als auch die Plattform, die JOSM (JRE = Java Runtime Environment) ausführt. Es existieren mehrere Plattformen von mehreren Lieferanten.

Das JDK (Java Development Kit) enthält die JRE, aber auch Entwicklerwerkzeuge, (hauptsächlich der Java-Compiler). Im Jahre 2006, rund um die Veröffentlichung von Java 6, hatte Sun die Absicht verkündet Java in einem neuen Projekt als Open-Source zu nutzen: OpenJDK. OpenJDK ist schlecht benannt, genau wie OpenStreetMap. Wir kartieren ja schließlich nicht nur Straßen…..

Nun, das OpenJDK-Projekt betrifft nicht nur das JDK, sondern die gesamte Java-Plattform (Sprache, Spezifikation, Tools, APIs, etc.). speakjava erklärt es schön hier: https://www.azul.com/how-do-we-define-java/

Sun hat viele Dinge aus Java in das OpenJDK-Projekt eingebracht, aber nicht alle Dinge. Insbesondere Windows/Mac-Installateure und die Technologie zur Bereitstellung von WebStart wurden nicht in die Open Source Lizenz einbezogen (wir wissen nicht warum).

Das bedeutet, dass OpenJDK nur ein „Quellcode-Projekt“ ist. Da das Erzeugen von Binärdateien sehr komplex ist, hat sich niemand die Mühe gemacht, freie Binärdateien für Windows & Mac zu verteilen. Nur RedHat hat es für Linux im IcedTea-Projekt geschafft. Dass es ein 100% freies Java unter Linux gibt, ist RedHat zu verdanken.

Im Jahre 2009 hat Oracle Sun gekauft. Oracle hatte die Dinge nicht radikal geändert, bis jetzt. So verwenden auch heute noch die meisten Windows- und Mac-Benutzer die proprietäre JRE-Binärdateien von Oracle, die auf dem Open Source Projekt OpenJDK basieren.

Oracle hat bei der Veröffentlichung von Java 8 im Jahr 2014 und Java 9 in 2017 sehr gute Arbeit geleistet. 2017. Wir (JOSM-Entwickler – Anm. d. Redaktion) haben sogar in gegenseitigem guten Glauben mit ihnen zusammengearbeitet.

Dann brach die Hölle aus.

Oracle änderte den Java-Release-Zyklus auf einen festen 6-Monats-Plan (2 Versionen pro Jahr). Wir sind jetzt mittlerweile bei Java 12 (das ist übrigens die am meisten verbreitete, aber wenig beeindruckende, da nichts Neues enthaltende, Version) angelangt.

Oracle hat jetzt die Lizenz des Oracle JDK geändert. Unternehmen, die die Oracle-Binärdateien verwenden wollen müssen Sie zahlen.

Sie führten den Begriff der Long Term Support Versionen (LTS) ein. Java 8 ist ein LTS, ebenso Java 11. Für weitere Informationen über Releasezyklen und Lizenzierung lies bitte den ausgezeichneten Blogbeitrag von hendrikEbbers: https://dev.karakun.com/java/2018/06/25/java-releases.html

Was die Java 8-Binärdateien betrifft, die fast jeder unter Windows und Mac verwendet: die Lizenz wurde auf „frei (jetzt im Sinne von Freibier) für den persönlichen Gebrauch auf dem Desktop mindestens bis Ende 2020“ geändert. https://www.java.com/en/download/faq/distribution.xml

Diese Veränderungen kamen aus dem Nichts und die Java-Community war nicht darauf vorbereitet. Es hat einige Zeit gedauert, bis wir zu einem kostenlosen Ersatz für die Oracle-Binärdateien auf Windows und Mac, und deshalb haben wir geraten nicht zu wechseln. (Anm. d. Red. Java 8 nicht zu verlassen)

Aber wir sind dank @adoptopenjdk fast am Ziel! Dieses community-basierte Projekt bietet kostenlose Downloads von OpenJDK für alle Plattformen an! https://adoptopenjdk.net/releases.html

Wir warten aber noch auf die Verfügbarkeit einiger Verbesserungen der AdoptOpenJDK Installer, bevor Sie jedem raten, zu wechseln.

1) Die Einbeziehung von JavaFX (eine weitere Technologie, die von Oracle aufgegeben wurde und jetzt von @GluonHQ verwaltet wird), das von JOSM zum Abspielen von MP3-Dateien und von einigen Plugins wie Microsoft StreetSideverwendet wird: https://github.com/AdoptOpenJDK/openjdk-build/issues/577

2) Die Einbindung von IcedTea-Web (die kostenlose Implementierung von Java WebStart, die auch von Oracle aufgegeben wurde): https://github.com/AdoptOpenJDK/openjdk-build/issues/898 Wir können uns hier wiederum bei RedHat für dieses Projekt sowie bei @karakun und @adoptopenjdk für deren Arbeit bedanken.

3) Eine automatische Update-Funktion, um sicherzustellen, dass jeder automatisch wegen Sicherheitsupdates auf den neuesten Stand kommen kann. https://github.com/AdoptOpenJDK/openjdk-installer/issues/4

Sobald alle diese Probleme gelöst sind (hoffentlich lange vor Ende 2020), werden wir alle bitten, zu AdoptOpenJDK zu wechseln.

Aus all diesen Gründen raten wir dazu, die aktuelle Oracle JRE zu behalten, zumindest für die automatischen Sicherheitsupdates.

Aus diesem Grund streben wir auch weiterhin mindestens Java 8 an. Sobald jeder in der Lage ist, JOSM mit AdoptOpenJDK-Binärdateien auszuführen, werden wir wahrscheinlich auf Java 11 umsteigen! Was übrigens mittlerweile von RedHat und nicht von Oracle gepflegt wird. 🙂