Oracle: Eclipse kann keine Java EE-Marken verwenden

Die Migration von Java EE (Enterprise Edition) zur Eclipse Foundation hat einige Probleme verursacht, da Oracle nicht zulässt, dass Java-Spezifikationsmarken von der Foundation verwendet werden. Trotzdem ist Eclipse-Geschäftsführer Mike Milinkovich fest davon überzeugt, dass Java EE nicht tot ist und Oracle es nicht getötet hat, wie ein Blog vorschlug.

Nach monatelangen Verhandlungen in gutem Glauben konnten sich die Stiftung und Oracle, die für Java EE verantwortlich waren, nicht auf Bedingungen für die Verwendung von Java-Marken einigen, die derzeit in Java EE-Spezifikationen verwendet werden, oder für die Änderung des Namespace des Javax-Pakets, a Bulletin Ende letzter Woche sagte. Die Java-Marken von Oracle sind Eigentum des Unternehmens und Eclipse hat keine Nutzungsrechte. Milinkovich zitierte die Auswirkungen auf die Java-Implementierung von Jakarta EE Enterprise der Eclipse Foundation:

  • Jakarta EE-Komponentenspezifikationen unter Verwendung des Javax-Paket-Namespace können in zukünftigen Jakarta EE-Plattformspezifikationen vollständig weggelassen werden.
  • Der Javax-Paket-Namespace kann innerhalb der Jakarta EE-Spezifikationen verwendet werden, darf jedoch nur "wie besehen" verwendet werden. Änderungen sind nicht zulässig. Jakarta EE-Spezifikationen, die weiterhin den Javax-Paket-Namespace verwenden, müssen TCK (Technology Compatibility Kit) bleiben, das mit den entsprechenden Java EE-Spezifikationen kompatibel ist.
  • Für alle Spezifikationen, die den Javax-Namespace verwenden, gelten weiterhin dieselben Java EE-Container- und Zertifizierungsanforderungen wie zuvor. Implementierungen, die die Einhaltung von Versionen der Jakarta EE-Spezifikationen unter Verwendung des Javax-Namespace beanspruchen, müssen Container testen und verteilen, in die von Oracle lizenzierte zertifizierte Java SE-Implementierungen (Standard Edition) eingebettet sind.
  • Die Spezifikationen müssen von einer Java EE-Namenskonvention in eine Jakarta EE-Konvention geändert werden, einschließlich Akronymen wie EJB (Enterprise JavaBeans), JPA (Java Persistence API) und JAX-RS (Java API für RESTful Web Services).

Auf die Frage nach möglichen Plattforminkompatibilitäten, die sich aus der Meinungsverschiedenheit mit Oracle ergeben, sagte Minkovich, dass Lösungen für diese technischen Probleme entwickelt werden müssen. Die Jakarta EE-Arbeitsgruppe wird diese Woche diese Diskussionen mit der Community beginnen. Zum Beispiel könnte Binärkompatibilität durch Implementierungen über Tools erreicht und angeboten werden, die Bytecode-Änderungen zur Erstellungszeit, Bereitstellungszeit oder Laufzeit durchführen.

Milinkovich geht davon aus, dass künftige Arbeiten an Java EE nicht den Javax-Namespace verwenden werden, sondern einen neuen Namespace wie Jakarta. Trotz der Rückschläge wird weiter daran gearbeitet, Java EE auf Eclipse umzustellen. Milinkovich stellte fest, dass bei der Umstellung von Java EE auf Oracle Fortschritte erzielt wurden, beispielsweise bei Oracle, das den GlassFish-Anwendungsserver, der als Java EE-Referenzimplementierung diente, zu Eclipse beitrug. Ratifizierte Jakarta-Spezifikationen werden unter der Eclipse-Lizenz verfügbar sein. Die Arbeiten zur Veröffentlichung von Jakarta EE 8 werden noch in diesem Jahr fortgesetzt. Über Jakarta EE 8 hinaus ist Jakarta EE 9 geplant.

Oracle sagte, es sei weiterhin bestrebt, mit der Jakarta EE-Arbeitsgruppe und dem Jakarta EE-Spezifikationsprozess zusammenzuarbeiten, um die Jakarta EE-Plattform zu schaffen. Das Unternehmen räumte jedoch ein, dass es keine Einigung über Marken und die Verwendung von Javax erzielen konnte. Eclipse hat im September 2017 die Entwicklung von Enterprise Java von Oracle geerbt.