Login
Newsletter
Werbung

Do, 9. Juni 2005, 11:10

Software::Entwicklung

Stand des GNU-Compilers für Java

Der GNU Compiler für Java (GCJ) hat als Teil der GNU Compiler Collection (GCC) bislang ein Schattendasein geführt, mit der Diskussion um die Java-Falle erhält das Projekt eine neue Bedeutung.
Von ThomasS

Die Anfänge des GNU Compiler für Java (GCJ) fallen in das Jahr 1998 und gehen auf Arbeiten von Per Bothner, damals Angestellter bei Cygnus (heute Red Hat), zurück. Die ersten Arbeiten am GCJ waren gewissermaßen eine Erweiterung der Beiträge, die Cygnus-Angestellte damals schon zum GCC-Projekt leisteten. Das erklärte Ziel war es, eine freie und schnellere Implementation in Konkurrenz zu Suns proprietären Java zu entwickeln, eine bis heute kaum erreichte Zielsetzung. Mit der Übernahme von Cygnus durch den Distributor Red Hat fristete GCJ, trotz Übernahme der meisten ursprünglichen Projektmitglieder, eher ein Schattendasein. Lange Zeit wurde die Weiterentwicklung von GCJ bei Red Hat nur auf freiwilliger Basis geleistet, da offensichtlich andere Aufgaben Vorrang hatten. Trotz aller Höhen und Tiefen hat GCJ überlebt und assistiert heute z.B. dem Kommandozeilen-Tool pdftk unauffällig im Hintergrund in Debians Testing- und Unstable-Zweigen.

Die z.T. heftig geführte Diskussion über die drohende Java-Falle zwischen der FSF und dem OpenOffice.org-Projekt (OOo) haben dem GCJ als Projekt wieder mehr Aufmerksamkeit beschert. Seit einiger Zeit arbeiten bei Red Hat vier Angestellte in Vollzeit an dem GCJ-Projekt, was auch schon zu greifbaren Ergebnissen geführt hat. So lassen sich derzeit 108 Programme mit dem GCJ kompilieren, darunter AWT, Apaches Swing, Jarkarta-Commons und der Java XML-Parser Xerxes. Zu einem der ersten Programme, die Red Hat mit GCJ unter Fedora zum Laufen bekam, gehört auch die populäre, freie Entwicklungsumgebung Eclipse. Anfängliche Erfolge zeigen sich auch mit OOo-2.0, das mit dem GCJ teilweise zusammenarbeitet. Zwar sind bei weitem nicht alle Ziele erreicht worden, so funktioniert z.B. das in Fedora 4 verfügbare Tool Mail-Merging und andere Dinge noch nicht. Dennoch scheint der Aufruf der FSF greifbare Bewegung in die Landschaft freier Java-Projekte wie GNU Classpath, Kaffe, Harmony und GCJ gebracht zu haben, der langfristig zu einem Verschmelzen der jeweiligen Codebasen in einem gemeinsamen Projekt führen wird.

Zum gegenwärtigen Stand meint Tom Tromey, einer der ersten GCJ-Entwickler: "Wir befinden uns gegenwärtig in einer Phase der Aufholjagd. Java entwickelt sich weiter, und da wir nicht Teil des Java-Community-Prozess sind, wird es immer eine zeitliche Verzögerung zwischen neuen offiziellen Releases und unseren Implementationen geben. " Aktuell fließt laut Tromey die meiste Arbeit in die Zielsetzung der Kompatibilität zu Suns Java, sodass wenig Zeit für Verbesserungen an der Performance und der Dokumentation bleibt. Ebenso fehlt ihm eine Qualitätssicherung der Codebasis und die weitere Öffnung des Entwicklungsprozesses des GCJ. Sehr viel Gewicht legen die Entwickler auf eine engere Kooperation mit den anderen freien Java-Projekten, mit denen in der Diskussion die vielversprechende Idee einer einzigen freien Virtual-Maschine (VM) mit verschiedenen ausführenden Engines entstanden ist, den sogenannten "pluggable Just-in-Time Interpreters". Besonders im Hinblick auf die Weiterentwicklung und Fernziele beschäftigten sich laut Tromey die Entwickler vor allem mit der Frage, wie es GCJ nach Fertigstellung von GNU Classpath möglich sein wird, besser als proprietäre JVMs zu sein und trotzdem kompatibel zu bleiben. Gerade der letzte Punkt macht es aus seiner Sicht erforderlich, dass man auch Kontakt zum Java-Community-Prozess hält. Die endgültige Beantwortung solcher Fragen liegt zwar näher denn je mit den sich neuerdings abzeichnenden Entwicklungen, in einigen Punkten aber auch noch sehr weit in der Zukunft.

Werbung
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung