Neuer OpenJDK-Vorschlag: DocLint soll Javadocs-Fehler besser erkennen

Hartmut Schlosser

Ein neues JDK Enhancement Proposal (JEP 172) sieht vor, einen Mechanismus bereit zu stellen, der Fehler in Javadoc-Kommentaren frühzeitig im Entwicklungprozess erkennt. Unter dem Titel „DocLint“ wurde der Vorschlag in einer aktualisierten Fassung auf http://openjdk.java.net/jeps/172 veröffentlicht.

Hintergrund für den Vorschlag ist die Tatsache, dass das derzeitige javadoc-Tool kaum Funktionalitäten bereit stellt, um den Inhalt von Javadocs auf Korrektheit zu überprüfen. Wo solche Checks durchgeführt werden, ist zudem keine Verlinkung zur betreffenden Stelle im Quellcode anzutreffen, sodass Checks von Entwicklern nur selten beachtet werden.

Dadurch kommt es leicht vor, dass Fehler in generierten Dokumentations-Dateien weiter verbreitet werden, was die Spezifikationen in diesen Dateien korrumpieren kann (beispielsweise fehlerhafte Syntax wie öffnende ohne schließende Klammern, fehlende HTML Tags, Referenzen auf nicht-existierende Typen oder Parameter, undokumentierte Parameter, etc.)

Das javadocs-Tool soll deshalb dahingehend erweitert werden, dass es die gängigsten Fehler aufspürt und in einer Art und Weise meldet, damit sie einfach in Editoren und IDEs bearbeitet werden können. Das Tool soll zudem so konfigurierbar sein, dass die Durchführung bestimmter Checks eingeschränkt werden kann. Nicht im Fokus liegt indes, sämtliche Probleme in Javadocs zu erkennen, sodass externe Validierungswerkzeuge garantiert nichts mehr zu beanstanden hätten.

Basieren soll das neue Werkzeug auf dem „DocTree API“, das zeitgleich im Rahmen des JEP 105 entsteht (als Erweiterung des javac „Tree API“ aus dem com.sun.source-Package, bereits im JDK 8 Build 66 M5 enthalten). Man erhält durch das DocTree API einen Syntax-Baum für Javadoc-Elemente, der dann für weitere Manipulationen eingesetzt werden kann.

Autor des JEP ist Jonathan Gibbons (übrigens auch Autor des JEP 105), der die Idee ausführlich auf http://openjdk.java.net/jeps/172 vorstellt.

Geschrieben von
Hartmut Schlosser
Kommentare

Schreibe einen Kommentar

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