Einblick in OpenJDK – Inside Java 7

OpenJDK-Gruppen und -Projekte

Sun unterscheidet zwischen Gruppen (Groups) und Projekten (Projects). Eine Gruppe stellt ein bestehendes Java API dar und besteht dabei aus den Entwicklern von Sun und interessierten externen Entwicklern, die an diesem API mitwirken, zum Beispiel Java 2D. Ein Projekt ist eine OpenJDK-Erweiterung, die von einer oder mehreren Gruppen über den oben beschriebenen Prozess vorgeschlagen und entwickelt werden kann. Für viele existierende APIs will Sun neue Open Source APIs mithilfe der Community in OpenJDK integrieren.

Die Aufnahme eines externen API kann sich durchaus etwas hinziehen und richtet sich auch danach, was man beisteuern will. Gute Aussichten hat man immer dann, wenn man etwas programmiert hat, das es so in dem Java SDK noch nicht gibt. Der Autor dieses Artikels hat unter anderem ein einfaches API für lineare Algebra geschrieben, das kürzlich als Library in das OpenJDK aufgenommen wurde. Die Aufnahme des LinAlg API in das OpenJDK hat etwas länger gedauert, unter anderem deswegen, weil bei OpenJDK zurzeit viele Portierungen, zum Beispiel nach Windows XP, stattfinden und die Integration externer APIs in OpenJDK auf der To-do-Liste der Entwickler weiter unten steht.

Sun hat für die verschiedenen APIs eine Menge von so genannten Starter Bugs festgelegt, die von externen Entwicklern gefixt werden können. Die Bezeichnung Starter Bug bedeutet allerdings nicht, dass diese Bugs einfach sind. Auch bei solchen Bugs steckt der Teufel häufig im Detail und es kommt nicht selten vor, dass man zunächst weitere Informationen über einen Bug über die Mailingliste erfragen muss, weil der Bug selbst schlecht dokumentiert ist beziehungsweise sich nicht so einfach auf jedem System reproduzieren lässt. Wer sich nicht für das Fixen von Bugs interessiert, kann an aktuellen Builds des OpenJDK oder des Compilers arbeiten. Die Arbeit an dem Compiler ist dabei am einfachsten, da der aktuelle Quellcode des Compilers über die NetBeans IDE bezogen werden kann oder über die Downloadseite auf der OpenJDK Homepage. Wer an aktuellen Builds von OpenJDK arbeiten will, benötigt zum einen das Visual Studio 2003 Professional mit C++ und die NetBeans Preview IDE in Version 6. Die derzeit aktuelle Version ist Build 18. Tabelle 2 listet die minimalen Systemvoraussetzungen für die verschiedenen Plattformen auf.

Tabelle 2: Systemvoraussetzungen
Red Hat Enterprise Linux Solaris 10 Windows XP x32/x64 Windows Vista x32/x64
Pentium-kompatibler Prozessor
256 MB RAM
1.5 GB Festplattenspeicher
UltraSPARC- oder
Pentium-Prozessor (für Solaris x86)
512 MB RAM
Pentium-Prozessor
512 MB RAM
600 MB Festplattenspeicher
NTFS-Dateisystem
Pentium-Prozessor
512 MB RAM
600 MB Festplattenspeicher
NTFS-Dateisystem
Tools

Wenn Sie bei OpenJDK aktiv mitmachen wollen, benötigen Sie noch ein paar Tools. Neben Visual Studio 2003 und der NetBeans Preview IDE benötigt man noch verschiedene Utilities für die unterschiedlichen Plattformen. Die NetBeans Preview IDE ist eine Development-Version von NetBeans mit speziellen Features. Tabelle 3 gibt eine Übersicht über die wichtigsten Tools, die Sie benötigen.

Tabelle 3: Wichtige Tools
Linux Solaris Windows
GNU Tools
NetBeans Preview IDE
Linux Plug-ins
Sun Studio Creator NetBeans Preview IDE
DirectX9 oder 10
Cygwin
make 3.7.8
unicows.dll
Windows Plug-ins

Leider gibt es zu anderen Entwicklungsumgebungen, wie zum Beispiel zu Eclipse, bislang kaum Erfahrungsberichte oder Tutorials, wie man OpenJDK damit kompilieren kann. Das mag daran liegen, dass OpenJDK stark an NetBeans orientiert ist und man auch an den Menüs von NetBeans erkennen kann, dass diese IDE stark für die Arbeit mit OpenJDK ausgerichtet sind. Das erkennt man z.B. daran, dass es im Hauptmenü Versioning schon einen Menüpunkt Mercurial gibt, über den man künftig die CVS-Quellen von OpenJDK beziehen kann.

Fazit

Mit der Offenlegung der Quellen der Java-Plattform will Sun zum einen neue Märkte in der Open-Source-Welt erobern und zum anderen Innovationen aus der Open-Source-Szene in Java integrieren. Von einer wirklichen Offenlegung beziehungsweise Open-Source-Philosophie bei Sun kann man bislang allerdings noch nicht sprechen. Das liegt an vielen offenen Fragen bezüglich der Rechtslage von APIs usw., die noch geklärt werden müssen. Bis Java ein reines Open-Source-Projekt ist, das durch eine breite Community getragen wird, ist es noch ein weiter Weg, aber bis 2009, dem offiziellen Erscheinungstermin für Java 7, hat Sun noch jede Menge Zeit, viele Missverständnisse und Probleme zu beheben.

Alexander Schunk ist Mitglied der java.net-Community und schreibt kleinere Java-Programme und Windows-Tools. Er ist Autor der Bücher „Java 6 Grundlagenbuch“ bei DataBecker und „DirectX Grafikprogrammierung mit C++“ beim BHV Taschenbuchverlag. Für die Firma BOV Training hat er zwei Java-Schulungen gemacht.
Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.