Il plugin Javadoc Maven 3 ignora la configurazione
-
28-10-2019 - |
Domanda
Uso Maven 3 e ho configurato il mio Javadoc secondo la nuova configurazione di SitePlugin+Javadoc. Tuttavia, tutti i miei parametri di configurazione Javadoc sembrano essere ignorati. Quindi nessun raggruppamento di pacchetti, nessuna fonte di collegamento ecc.
Il mio progetto è un progetto multi -modulo, il comando che utilizzo è: pacchetto pulito mvn3 javadoc: aggregato
Ecco la parte rilevante della mia radice POM.:
<build>
<!-- Memory management properties for jenkins build. -->
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.11</version>
<configuration>
<argLine>-Xmn8m -Xms32m -Xmx96m -XX:PermSize=32m
-XX:MaxPermSize=128m</argLine>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-site-plugin</artifactId>
<version>3.0-beta-3</version>
<configuration>
<reportPlugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>2.8</version>
<configuration>
<verbose>true</verbose>
<groups>
<group>
<title>Hypercube</title>
<packages>org.hypercube*</packages>
</group>
<group>
<title>Hyperdrive</title>
<packages>org.hyperdrive*</packages>
</group>
<group>
<title>Hydrogen</title>
<packages>org.hydrogen*</packages>
</group>
<group>
<title>Fusion-X11</title>
<packages>org.fusion.x11*</packages>
</group>
<group>
<title>Fusion-Qt</title>
<packages>org.fusion.qt*</packages>
</group>
</groups>
<linksource>true</linksource>
<minmemory>16m</minmemory>
<maxmemory>128m</maxmemory>
</configuration>
</plugin>
</reportPlugins>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
Soluzione
Questo perché Maven si separa tra il plug-in-config di plugin e report plugin all'interno della configurazione della plugina del sito. Lo snippet che pubblichi si agirà solo durante l'esecuzione mvn site
, non gli obiettivi Javadoc direttamente. Questo comportamento influisce su tutti i plugin. Afaik è l'unico modo per duplicare la configurazione a un plugin-config "normale" come questo:
<build>
<!-- Memory management properties for jenkins build. -->
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.11</version>
<configuration>
<argLine>-Xmn8m -Xms32m -Xmx96m -XX:PermSize=32m
-XX:MaxPermSize=128m</argLine>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-site-plugin</artifactId>
<version>3.0-beta-3</version>
<configuration>
<reportPlugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>2.8</version>
<configuration>
<verbose>true</verbose>
<groups>
<group>
<title>Hypercube</title>
<packages>org.hypercube*</packages>
</group>
<group>
<title>Hyperdrive</title>
<packages>org.hyperdrive*</packages>
</group>
<group>
<title>Hydrogen</title>
<packages>org.hydrogen*</packages>
</group>
<group>
<title>Fusion-X11</title>
<packages>org.fusion.x11*</packages>
</group>
<group>
<title>Fusion-Qt</title>
<packages>org.fusion.qt*</packages>
</group>
</groups>
<linksource>true</linksource>
<minmemory>16m</minmemory>
<maxmemory>128m</maxmemory>
</configuration>
</plugin>
</reportPlugins>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>2.8</version>
<configuration>
<verbose>true</verbose>
<groups>
<group>
<title>Hypercube</title>
<packages>org.hypercube*</packages>
</group>
<group>
<title>Hyperdrive</title>
<packages>org.hyperdrive*</packages>
</group>
<group>
<title>Hydrogen</title>
<packages>org.hydrogen*</packages>
</group>
<group>
<title>Fusion-X11</title>
<packages>org.fusion.x11*</packages>
</group>
<group>
<title>Fusion-Qt</title>
<packages>org.fusion.qt*</packages>
</group>
</groups>
<linksource>true</linksource>
<minmemory>16m</minmemory>
<maxmemory>128m</maxmemory>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>