11 Stimmen

javadoc nur für package-info.java

Ich habe eine Situation, in der ich javadoc in einem Projekt ausführen möchte, das keine Klassen hat. Es hat nur package-info.java für ein Paket. Beim Ausführen von javadoc wird der folgende Fehler ausgegeben:

An error has occurred in JavaDocs report generation:Exit code: 1 - javadoc: error - No public or protected classes found to document.

Gibt es eine Möglichkeit, ihn zu zwingen, nur package-info.java zu verarbeiten (abgesehen von den offensichtlichen Hacking-Lösungen: Erstellen einer Dummy-Klasse, Skripten für das Kopieren einer package.html, usw.)?

Ich führe Javadoc als Teil eines Maven-Builds aus, so dass das maven-javadoc-Plugin den eigentlichen Javadoc-Befehl ausführt.

0 Stimmen

Wenn es keine Klassen gibt, wozu brauchen Sie dann die Paket-Javadoc?

1 Stimmen

Ich verwende ein Tool (insbesondere enunciate), das package doc als Mittel zur Anpassung von "splash" doc für eine größere Website verwendet, die es generiert.

0 Stimmen

Genauer gesagt, warum gibt es das Paket, wenn es nichts enthält?

14voto

Rich Seller Punkte 81404

Es gibt keine Möglichkeit, JavaDoc auf einem leeren Paket zum Laufen zu bringen. Es gibt ein sehr altes Fehler die als "Geschlossen, wird nicht behoben" markiert sind.

In diesem Fehler ist die Abhilfe so ziemlich das offensichtliche Hacking, das Sie erwähnen: Erstellen Sie eine leere Klasse mit Standard-Scoping. Die Klasse wird nicht in der Javadoc enthalten sein, es sei denn, Sie erzwingen es mit -package oder -private zu sein.

/** hack to generate package javadoc */
class PlaceHolder {}

3 Stimmen

Beachten Sie, dass Ihre Platzhalter-Java-Klassendatei mindestens einen /** */-Kommentar enthalten muss, da sonst das Problem nicht umgangen werden kann.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X