Gabi und Sascha
Kategorien : Alle | Berlin | Bücher | Fotografie | Java | Linkhalde | Weichware | Verfassung

Beim Arbeiten mit Maven immer wieder gerne vergessen: regelmässig das lokale Repository löschen.

Heute habe ich ein eigenes Doclet über das Maven Javadoc Plugin in ein Projekt eingebaut. Dabei das Doclet über <docletArtifact> referenziert. Sieht ungefähr so aus:


  <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-javadoc-plugin</artifactId>
      <executions>
          <execution>
             <id>create-logging-msg</id>
             <phase>pre-integration-test</phase>
             <goals>
                  <goal>javadoc</goal>
             </goals>
             <configuration>
                <doclet>com.zimory.common.logging.tools.doclet.LoggingDoclet</doclet>
                <docletArtifact>
                     <groupId>com.zimory.common.tools.logging</groupId>
                     <artifactId>logging-doclet-tool</artifactId>
                     <version>0.1.0-SNAPSHOT</version>
                </docletArtifact>

Problem: Das Maven Javadoc Plugin scheint die weiteren benötigten Artefakte nicht transitiv aufzulösen. Das heisst, eine der gemeinsam verwendeten Bibliotheken wird nicht aus dem remote Repository nachgeladen. Dies führt wiederum dazu, dass der Prozess abbricht, weil eine Abhängigkeit nicht aufgelöst werden kann.

Gefunden habe ich das Problem nur, weil ich regelmässig (einmal am Tag) das lokale Repository lösche. Und diesmal nur das Projekt mit dem Doclet neu gebaut habe.

Die Lösung ost übrigens nicht ganz trivial. Nachdem einige Versuche mit dem Maven Shade Plugin gescheitert sind, habe ich die benötigte Bibliothek als optional Dependency mit in das Projekt aufgenommen. Das ist keine schöne Lösung, aber eine Lösung.

Der Konfigurationsparameter additionnalDependencies hat in der verwendeten Maven Javadoc Pluginversion 2.8.1 nicht funktioniert. Die Verwendung bricht mit der folgenden Fehlermeldung ab:


  [INFO] Failed to configure plugin parameters for: org.apache.maven.plugins:maven-javadoc-plugin:2.8.1

  Cause: Error loading class 'org.apache.maven.plugin.javadoc.AdditionnalDependency'

So ändern sich die Zeiten. In den 1970er Jahren nannte Egon Bahr die Grünen eine Gefahr für die Demokratie. Knapp 35 Jahr später hält Boris Palmer die Piraten auf Zeit Online für eine Bedrohung unserer Demokratie. Und zeigt dabei einmal mehr als etablierter Politiker, dass er das System des Liquid Feedbacks nichts verstanden hat.