4 Stimmen

Maven2: Wie wird das Ergebnis des JXR-Plugins bei Verwendung der mvn-Site bereitgestellt?

Ich habe ein Projekt mit mehreren Modulen und möchte auf der Projektseite eine HTML-Version meines Quellcodes mit dem JXR Maven-Plugin bereitstellen.

Das Problem ist, dass das JXR-Plugin gut läuft, der XREF-Ordner für jedes meiner Module richtig generiert wird, aber wenn ich den Befehl mvn site:stage verwende, um den gesamten Inhalt der Projektseite abzurufen und alle Links richtig zu generieren, werden die XREF-Ordner nicht abgerufen.

Hier ist ein Auszug aus meiner POM-Datei, in der das JXR-Plugin konfiguriert ist:

<plugin>
   <groupId>org.codehaus.mojo</groupId>
   <artifactId>jxr-maven-plugin</artifactId>
   <configuration>
      <aggregate>true</aggregate>
   </configuration>
</plugin>

Hier ist der Befehl, mit dem ich meine Website erstelle und einstelle:

mvn site site:stage

Habt ihr eine Ahnung?

Vielen Dank im Voraus.

r.

0 Stimmen

Können Sie Ihre Konfiguration für das Website-Plugin veröffentlichen?

0 Stimmen

Keine spezifische Konfiguration für das Website-Plugin: <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-site-plugin</artifactId> </plugin>

4voto

Rich Seller Punkte 81404

Ich bin mir nicht sicher, ob das relevant ist, aber Ihr Befehl führt die Site zweimal aus, mvn site erzeugt die Site, und site:stage führt die Site ebenfalls aus, vielleicht verursacht das Probleme, aber ich kann ehrlich gesagt nicht sehen, warum.

Die Betrachtung der JXR-Dokumentation Es wird nur das site:site-Ziel erwähnt, aber ich verstehe nicht, warum es für das site:stage-Ziel nicht ordnungsgemäß ausgeführt werden kann, da es dieses erweitert. Wenn Sie die Website Ziel, kopieren Sie dann die Ausgabe in ein anderes Verzeichnis, führen Sie die site:stage Ziel und vergleichen Sie die Ergebnisse, um einen Einblick in das Problem zu erhalten.

Update: Ich habe das selbst ausprobiert, und die xref wurde in c aufgenommen und gut aggregiert: \test\stage wobei die Querverweise korrekt verwaltet werden. Ich habe die von mir verwendete Konfiguration beigefügt.

In meinem übergeordneten pom habe ich die Site-Konfiguration wie folgt definiert:

<build>
  <plugins>
    <plugin>
      <artifactId>maven-site-plugin</artifactId>
      <executions>
        <execution>
          <phase>prepare-package</phase>
          <goals>
            <goal>stage</goal>
          </goals>
        </execution>
      </executions>
      <configuration>
        <stagingDirectory>c:\test\stage</stagingDirectory>
      </configuration>
    </plugin>
  </plugins>
</build>

Der Abschnitt distributionManagement wurde mit den Site-Informationen konfiguriert (nicht wirklich erforderlich, da ich das stagingDirectory oben festgelegt habe, aber das Ziel läuft nicht ohne diese Informationen).

<distributionManagement>  
  <site>
    <id>mojo.website</id>
    <name>Mojo Website</name>
    <url>scp://test/</url>
  </site>
</distributionManagement>

Meine JXR-Konfiguration im übergeordneten Pom war wie folgt:

<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-jxr-plugin</artifactId>
  <reportSets>
    <reportSet>
      <id>src-xref</id>
      <reports>
        <report>jxr</report>
      </reports>
    </reportSet>
    <reportSet>
      <id>test-xref</id>
      <reports>
        <report>test-jxr</report>
      </reports>
    </reportSet>
  </reportSets>
  <configuration>
    <aggregate>true</aggregate>
  </configuration>
</plugin>

Der Befehlszeilenlauf war mvn clean site:stage

Edit: Gemäß den Kommentaren gibt es eine codehaus jxr plugin mit leicht abweichender Semantik. Achten Sie darauf, dass Sie die org.apache.maven.plugins-Version verwenden und nicht die org.codehaus.mojo-Version.

0 Stimmen

Der Befehl site erzeugt den XREF-Ordner ordnungsgemäß. Das Problem hängt mit dem Befehl stage zusammen, der diesen XREF-Ordner offenbar nicht abrufen kann. Ich habe versucht, die Site zu entfernen und nur den Befehl site:stage zu starten, aber das Problem ist das gleiche...

0 Stimmen

Hallo, vielen Dank für Ihre Hilfe. Allerdings funktioniert dies nicht mit meiner Konfiguration. Das könnte mit der Version zusammenhängen, die ich verwende (Maven 2.2.1-RC1). Welche Version verwenden Sie?

0 Stimmen

Ok, ich weiß wirklich nicht, warum es mit meiner Konfiguration nicht funktioniert. Ich versuchte auch mit 2.2.0 und immer noch die gleiche pb...

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