Wird in einem Maven Projekt die JavaDoc mit dem „maven-javadoc-plugin“ erzeugt, kann es mit Java 8 zu „Errors“ oder mehr „Warnings“ kommen. Im schlimmsten Fall, kann das Projekt dadurch gar nicht mehr gebaut werden. Beim Ausführen des Befehls „mvn generate-sources javadoc:javadoc“ kommt es z. B. zu folgender Ausgabe.

[INFO] --- maven-javadoc-plugin:2.9.1:javadoc (default-cli) @ test ---
[INFO] 
20 errors
50 warnings
[INFO] -------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] -------------------------------------------------------

Schuld daran, ist eine neue Erweiterung „DocLint“ in den „JavaDoc Tools“ von Java 8. Diese prüft JavaDoc-Kommentare auf mögliche Fehler und Warnungen.
Hintergrund: Die bisher vorhandenen JavaDoc Tools, boten kaum Möglichkeiten um JavaDoc-Kommentare auf ihre technische Korrektheit zu prüfen. Zukünftig sollen diese bereits frühzeitig im Entwicklungprozess erkannt werden.

Im Besten Fall behebt man die Fehler und Warnungen sofort! Sollte gerade keine Zeit dafür sein, kann man folgendermaßen vorgehen um wenigstens das Projekt wieder bauen zu können.

In der pom.xml Datei muss das entsprechende Maven-Plugin um eine Konfigurationseinstellung „additionalparam“ erweitert werden. Durch den Parameter „-Xdoclint:none“ wird vorerst die Prüfungen durch Doclint deaktiviert

  <plugins>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-javadoc-plugin</artifactId>
      <configuration>
        <additionalparam>-Xdoclint:none</additionalparam>
      </configuration>
    </plugin>
  </plugins>

Als Alternative kann auch die Konfigurationseinstellung „failOnError“ auf den Wert *false“ gesetzt werden. Damit kann gesteuert werden, ob der Maven-Build fehlschlägt, wenn es während der JavaDoc Erzeugung zu einem Fehler kommt.

  <plugins>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-javadoc-plugin</artifactId>
      <configuration>
          <failOnError>false</failOnError>
      </configuration>
    </plugin>
  </plugins>
maven-javadoc-plugin: Erzeugung der JavaDoc kann mit Java 8 fehlschlagen

Ein Gedanke zu „maven-javadoc-plugin: Erzeugung der JavaDoc kann mit Java 8 fehlschlagen

  • Ich fände es gut, wenn, ähnlich wie bei fehlschlagenden Tests, ein Jenkins-Build weiterläuft und „unstable“ (gelb) wird statt „failed“ (rot). Kann man das durch ‚failOnError=false‘ erreichen oder wird er dann „successful“?

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.