Login
Newsletter
Werbung

Do, 3. Juli 2014, 12:13

Software::Entwicklung

Java 9: Project Jigsaw soll in die Gänge kommen

Mark Reinhold hat einen Plan zur Realisierung von Project Jigsaw, einer tiefgreifenden Modularisierung von Java, vorgestellt. Das Projekt, das Java mit einem stark verbesserten nativen Modulsystem ausstatten soll, wurde bereits mehrmals verschoben, soll aber in Java 9 endlich fertig werden.

Oracle

Projekt Jigsaw stand bereits auf der Liste der Ziele von OpenJDK 7, das vor knapp drei Jahren letztlich ohne Jigsaw veröffentlicht wurde. Auch für OpenJDK 8, das im März 2014 ein halbes Jahr später als geplant veröffentlicht wurde, verfehlte Jigsaw wiederum das Ziel. Zu tiefgreifend waren die Änderungen, um sie mit einem Entwicklerteam, das auch in die Pflege von JDK 7 eingespannt war, ausreichend testen zu können.

Mark Reinhold, Chef der Entwicklungsabteilung der Java Standard Edition bei Oracle, hat nun in seinem Blog gefordert, dass Jigsaw einmal einen Gang höher schaltet, damit es in Java 9 Einzug halten kann, das für 2016 zur Veröffentlichung ansteht. Dazu hat er den bereits drei Jahre alten Projektplan überarbeitet und in einer neuen Version zur Diskussion vorgelegt.

Nach Reinhold befand sich Jigsaw bisher in einer Erkundungsphase, es wurden die Anforderungen gesammelt und eine prototypische Implementation erstellt. Das Design und die Implementation müssen nun für den produktiven Einsatz reif gemacht werden. Jigsaw ist ein Projekt, das das JDK selbst modularisieren will, so dass es beispielsweise auf kleinen Rechnern zum Einsatz kommen kann, die nur einen Teil des gesamten JDK benötigen. Es soll die Sicherheit und Wartbarkeit der Java SE-Plattform erhöhen, die Anwendungen beschleunigen und auch die Entwicklung von Bibliotheken und Anwendungen erleichtern.

Java besitzt zwar bereits von Beginn an ein Modulsystem, das auf »Packages« beruht, doch das hat sich im Lauf der Jahre als nicht ausreichend erwiesen. So sind alle Packages öffentlich, auch wenn sie nicht extern genutzt werden sollten, und alle Abhängigkeiten sind statisch. Existierende Lösungen, die Abhängigkeiten flexibler oder auch optional machen und das Starten und Stoppen von Modulen zur Laufzeit ermöglichen, beispielsweise OSGi, sind komplex und nicht in das JDK integriert.

Reinholds neuer Entwurf berücksichtigt nach seinen Angaben die bisher gelernten Lektionen und legt deutlich mehr Augenmerk auf Sicherheit. Daneben muss das System kompatibel mit bisherigen Java-Umgebungen sein, dieselbe Geschwindigkeit erreichen, und etablierte Arbeitsabläufe müssen auch weiterhin funktionieren.

Wegen des Umfangs der nötigen Änderungen soll Jigsaw in mehreren Stufen in das JDK integriert werden; jede dieser Stufen soll in einem separaten JDK Enhancement Proposal (JEP) beschrieben werden. Die ersten drei JEPs sollen eine spezifische modulare Struktur für das JDK vorschlagen, den Quellcode neu organisieren und schließlich auch die Binärdateien neu organisieren. Das abschließende vierte JEP soll das Modulsystem selbst einführen.

Werbung
Kommentare (Insgesamt: 1 || Alle anzeigen )
well.. (PeterHamstad, Do, 3. Juli 2014)
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung