Плагин сайта maven не развертывает подпроекты в многомодульном проекте и не генерирует index.html

У меня есть многомодульный проект, для которого я хочу развернуть сайт, но похоже, что конфигурация развертывания моего сайта не наследуется дочерними модулями подпроекта.

  • parent
    • moduleA
    • модульB

В файловой системе они расположены относительно друг друга:

/parent/
/moduleA/
/moduleB/

Когда я бегу:

mvn site-deploy -P documentation

Мой родительский проект правильно развернут для:

  • scp: // devServer / documentation / webwars /

Но ни один из подпроектов, таких как moduleA или moduleB, там не развернут, как я ожидал, если дочерние модули наследуют родительский distributionManagement:

  • scp: // devServer / documentation / webwars / moduleA
  • scp: // devServer / documentation / webwars / moduleB

Вот мой родительский pom.xml, я удалил некоторые посторонние детали и плагины отчетов (я включил свой плагин javadoc, который немного забавен, используя APIViz и агрегат, чтобы гарантировать, что агрегированные родительские javadocs и дочерние javadocs правильно используют APIViz.):

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
                      http://maven.apache.org/maven-v4_0_0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.webwars</groupId>
    <artifactId> parent</artifactId>
    <packaging>pom</packaging>
    <version>1.0-SNAPSHOT</version>
    <name>parent</name>
    <distributionManagement>
        <site>
            <id>webwarsDev.website</id>
            <url>scp://devServer/documentation/webwars/</url>
        </site>         
    </distributionManagement>
    <modules>
        <module>../moduleA</module>
        <module>../moduleB</module>
    </modules>
    <profiles>
        <profile>
            <id>documentation</id>
            <build>
                <pluginManagement>
                    <plugins>
                        <plugin>
                            <groupId>org.apache.maven.plugins</groupId>
                            <artifactId>maven-pmd-plugin</artifactId>
                            <executions>
                                <execution>
                                    <id>verify_pmd</id>
                                    <phase>verify</phase>
                                    <goals>
                                        <goal>pmd</goal>
                                    </goals>
                                    <configuration>
                                        <linkXref>true</linkXref>
                                        <minimumTokens>20</minimumTokens>
                                        <targetJdk>1.6</targetJdk>
                                    </configuration>
                                </execution>
                            </executions>
                        </plugin>                        

                    </plugins>
                </pluginManagement>
            </build>
            <reporting>
                <plugins>
                  <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-project-info-reports-plugin</artifactId>
                    <version>2.1.2</version>
                    <reportSets>
                      <reportSet>
                        <reports>
                          <report>project-team</report>
                          <report>cim</report>
                          <report>scm</report>
                        </reports>
                      </reportSet>
                    </reportSets>
                  </plugin>

                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-javadoc-plugin</artifactId>
                        <version>2.6.1</version>
                        <configuration>
                            <!-- Default configuration for all reports -->
                            <detectOfflineLinks>true</detectOfflineLinks>
                            <!--
                                <detectLinks>true</detectLinks>
                            -->
                            <detectJavaApiLink>true</detectJavaApiLink>
                            <linksource>true</linksource>
                            <useStandardDocletOptions>true</useStandardDocletOptions>
                            <charset>UTF-8</charset>
                            <encoding>UTF-8</encoding>
                            <docencoding>UTF-8</docencoding>
                            <breakiterator>true</breakiterator>
                            <version>true</version>
                            <author>true</author>
                            <keywords>true</keywords>
                            <minmemory>128m</minmemory>
                            <maxmemory>512m</maxmemory>
                         <doclet>org.jboss.apiviz.APIviz</doclet>
                                    <docletArtifact>
                                        <groupId>org.jboss.apiviz</groupId>
                                        <artifactId>apiviz</artifactId>
                                        <version>1.3.0.GA</version>
                                    </docletArtifact>
                                    <additionalparam> 
                                    -charset UTF-8
                                    -docencoding UTF-8 
                                    -version 
                                    -author
                                    -breakiterator 
                                    -linksource 
                                    -sourcetab 4
                                    -windowtitle "${project.name} ${project.version} API Reference"
                                    -doctitle "${project.name} ${project.version} API Reference"
                                    -bottom "Copyright © ${project.inceptionYear}-Present ${project.organization.name}. All Rights Reserved." 
                                    -link    http://java.sun.com/javase/6/docs/api/

                                    </additionalparam>                             
                        </configuration>
                        <reportSets>
                            <reportSet>
                                <id>non-aggregate</id>
                                <configuration>
                                    <!-- Specific configuration for the non aggregate report -->
                                    <doclet>org.jboss.apiviz.APIviz</doclet>
                                    <docletArtifact>
                                        <groupId>org.jboss.apiviz</groupId>
                                        <artifactId>apiviz</artifactId>
                                        <version>1.3.0.GA</version>
                                    </docletArtifact>
                                    <additionalparam> 
                                    -charset UTF-8
                                    -docencoding UTF-8 
                                    -version 
                                    -author
                                    -breakiterator 
                                    -linksource 
                                    -sourcetab 4
                                    -windowtitle "${project.name} ${project.version} API Reference"
                                    -doctitle "${project.name} ${project.version} API Reference"
                                    -bottom "Copyright © ${project.inceptionYear}-Present ${project.organization.name}. All Rights Reserved." 
                                    -link    http://java.sun.com/javase/6/docs/api/
                                    -sourceclasspath ${project.build.outputDirectory} 
                                    </additionalparam>              
                                </configuration>
                            <reports>
                                <report>javadoc</report>
                            </reports>
                          </reportSet>
                          <reportSet>
                            <id>aggregate</id>
                            <configuration>
                              <!-- Specific configuration for the aggregate report -->
                                  <doclet>org.jboss.apiviz.APIviz</doclet>
                                    <docletArtifact>
                                        <groupId>org.jboss.apiviz</groupId>
                                        <artifactId>apiviz</artifactId>
                                        <version>1.3.0.GA</version>
                                    </docletArtifact>
                                    <additionalparam> 
                                    -charset UTF-8
                                    -docencoding UTF-8 
                                    -version 
                                    -author
                                    -breakiterator 
                                    -linksource 
                                    -sourcetab 4
                                    -windowtitle "${project.name} ${project.version} API Reference"
                                    -doctitle "${project.name} ${project.version} API Reference"
                                    -bottom "Copyright © ${project.inceptionYear}-Present ${project.organization.name}. All Rights Reserved." 
                                    -link    http://java.sun.com/javase/6/docs/api/

                                    </additionalparam>                                
                            </configuration>
                            <reports>
                              <report>aggregate</report>
                            </reports>
                          </reportSet>
                        </reportSets>
                    </plugin>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-jxr-plugin</artifactId>
                        <configuration>
                            <linkJavadoc>true</linkJavadoc>
                        </configuration>
                    </plugin>
                    <plugin>
                        <groupId>org.codehaus.mojo</groupId>
                        <artifactId>cobertura-maven-plugin</artifactId>
                        <configuration>
                            <formats>
                                <format>xml</format>
                                <format>html</format>
                            </formats>
                        </configuration>
                    </plugin>
                    <plugin>
                        <groupId>org.codehaus.mojo</groupId>
                        <artifactId>findbugs-maven-plugin</artifactId>
                        <version>2.1</version>
                    </plugin>
                </plugins>
            </reporting>
        </profile>
    </profiles>
    <build>
        <pluginManagement>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <configuration>
                        <source>1.6</source>
                        <target>1.6</target>
                    </configuration>
                </plugin>                
            </plugins>
        </pluginManagement>
    </build>
</project>

Я попытался определить явное распределение DistributionManagement в каждом модуле подпроекта, который развертывается правильно, за исключением того, что по какой-то причине сайт дочернего подпроекта не будет иметь index.html ??

У меня нет src / site / файлов, таких как src / site / site.xml или src / site / apt / index.apt.

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>com.webwars</groupId>
        <artifactId>parent</artifactId>
        <version>1.0-SNAPSHOT</version>
        <relativePath>../parent</relativePath>
    </parent>
    <groupId>com.webwars</groupId>
    <artifactId>moduleA</artifactId>
    <packaging>jar</packaging>
    <version>1.0-SNAPSHOT</version>
    <name>moduleA</name>
    <distributionManagement>
        <site>
            <id>webwarsDev.website</id>
            <url>scp://devServer/documentation/webwars/moduleA</url> 
        </site>
    </distributionManagement>

person Dougnukem    schedule 11.11.2009    source источник


Ответы (1)


Возможно, я ошибаюсь, но я думаю, что вам нужно настроить maven-project-info-reports-plugin для создания «индексного» отчета, которого в настоящее время нет (вы настроили его для создания Только отчеты project-team, cim и scm). Вам необходимо добавить индексный отчет:

<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-project-info-reports-plugin</artifactId>
  <version>2.1.2</version>
  <reportSets>
    <reportSet>
      <reports>
        <report>index</report>
        <report>project-team</report>
        <report>cim</report>
        <report>scm</report>
      </reports>
    </reportSet>
  </reportSets>
</plugin>
person Pascal Thivent    schedule 12.11.2009