Drucken

NetBeans Source-Referenzen und Javadoc in Freiform-Projekten

Die in der NetBeans IDE vorhandenen Möglichkeiten zur Navigation im Quelltext vereinfachen das Arbeiten sehr und man möchte sie nach einiger Zeit nicht mehr missen. Allerdings funktioniert das Aufsetzen eines Freiform-Java-Projektes, das diese Features unterstützen soll, nicht so einfach und intuitiv, wie man vielleicht hofft...

NetBeans IDE

Die NetBeans IDE bietet für Klassen aus dem Namensraum java und javax hervorragende Unterstützung durch auf Knopfdruck bereitstehende Quelltextreferenzen und Javadoc-API-Auszüge. Die Javadoc-API wird über die Code-Vervollständigung eingeblendet und die Quelltextreferenzen sind über das Kontextmenü von Variablen-, Methoden- oder Klassennamen zugänglich.

Freiform-Projekte

Freiform Projekte in der Netbeans IDE sind Projekte, die eigene Buildscripts für ANT mitbringen. Diese Projekte unterscheiden sich in einigen Punkten von "normalen" Netbeans Projekten: zum Beispiel kann man für Third-Party-Bibliotheken sogenannte Libraries anlegen, in denen man für jedes JAR zusätzlich Resourcen angibt, die die zugehörigen Quelltexte und Javadocs enthalten. Damit ist es möglich die Fähigkeiten für Quelltextreferenzen und Javadoc-API-Auszüge auch bei diesen Third-Party Komponenten zu nutzen.

Freiform-Projekte aber erlauben es nicht, solche Libraries zum Projekt hinzuzufügen - wie also kann man bei dieser Art von Projekten davon ebenfalls profitieren?

Java Sources Classpath

Die Antwort ist hier der Abschnitt Java Sources Classpath im Eigenschaftsdialog des betreffenden Dialogs. Dieser ist etwas missverständlich beschriftet - viele Leute denken, man soll hier die JAR-Dateien der Third-Party-Bibliotheken eintragen. Das kann man auch tun - in diesem Fall funktioniert dann die automatische Codevervollständigung sehr gut aber eben nicht die  Quelltextreferenzen und Javadoc-API-Auszüge!

Dafür muß man hier statt der JAR-Dateien die Quelltexte der Third-Party Bibliotheken angeben - also einfach die Java-Quelltexte aus dem Open-Source-Projekt der Wahl in eine ZIP-Datei gepackt und das JAR aus dem Java Source Classpath rauswerfen und mit dem Quelltext-Zip ersetzen.

Hinterher stellt man fest, daß nicht nur die Quelltext-Autovervollständigung funktioniert, sondern auch Quelltextreferenzen und Javadoc-API-Auszüge in Freiform Projekten möglich sind!