Java-Modularisierung: Zurück auf Los!

 –  66 Kommentare
Anzeige

Die Bemühungen um die Java-Modularisierung werden zunehmend zur unendlichen Geschichte. Nachdem das 2008 dafür initiierte OpenJDK-Project Jigsaw schon für Java 7 aufgesetzt worden war, dann die Umsetzung eines standardisierten Modul-Systems auf Java 8 verschoben wurde und letztlich doch nicht in der für nächstes Jahr angekündigten nächsten Programmiersprachenversion landen wird, deutet Mark Reinhold nun an, dass mehr oder minder wieder ein Neustart anstehe.

"Jigsaw prototype, take 2" betitelt der bei Oracle für die Java-Entwicklung verantwortliche Ingenieur seinen jüngsten Eintrag in die OpenJDK-Mailing-Liste. Der neue Versuch soll einen einfacheren Ansatz als die bisherige Arbeit mitbringen. Unter anderem geht es darum herauszufinden, inwiefern die Java-Entwickler ohne den Modul-Modus des derzeitigen Prototypen auskommen können. Mit ihm treten offenbar Inkompatibilitäten auf, die der Akzeptanz seitens der Java-Community im Wege stehen könnten, vor allem vor dem Hintergrund, dass Build-Tools wie Maven, Ivy und Gradle schon ein etabliertes Vorgehen zum Auflösen von Abhängigkeiten bieten.

Anzeige

Als Basis für den Neustart dient ein Klon des JDK-8-Master-Branch, und man werde, wo es Sinn mache, auch dessen Code verwenden, doch seien die Java-Entwickler bereit, früher getroffene Entscheidungen wieder in Frage zu stellen und bisherige Entwicklungen grundsätzlich neu aufzuziehen.

Kaum ein Thema wird in der Java-Community schon so lange diskutiert wie das der Modularisierung in Java. Um die drei hierzu in den Java Community Process (JCP), dem zentralen Java-Standardisierungsorgan, eingebrachten und zum Teil gescheiterten Java Specification Requests (JSRs) 277, 291 und 294 gab es immer wieder heftige Blog-Postings und Verbalschlachten.

Auf der einen Seite stehen Oracles beziehungsweise zuvor Suns Vertreter, die das Thema Modularisierung innerhalb des Project Jigsaw angehen. Es berücksichtigt Änderungen bei der Sprache, den Klassen und anderen Elementen von Java, damit sich Komponenten der Sprache einfacher in Applikationen abgrenzen, austauschen und miteinander verknüpfen lassen. Auf der anderen Seite befinden sich die Vertreter des Industriestandards OSGi (Open Services Gateway initiative), mit dem sich seit über zehn Jahren Java-Programme und ihre Dienste über ein Komponentenmodell modularisieren und verwalten lassen. Letzteren wird zumeist vorgeworfen, dass Java etwas brauche, das viel "leichtgewichtiger" als OSGi sei. (ane)

Anzeige