Jenkins で実行できる 1 つのコマンドで、マルチモジュール プロジェクトの完全なサイトを構築しようとしています。ただし、ビルドすると、サブモジュールの javadocs がサイト ルート (site/submodule/apidocs ではなく site/apidocs) に表示されます。親からサブモジュールへのリンクもすべて壊れています。
組織が基準
pom.xml
submodule/pom.xml
親 POM には以下が含まれます。
<build>
<pluginManagement>
<plugins>
... Various unrelated plugins ...
</plugins>
</pluginManagement>
</build>
<profiles>
<profile>
<id>complete-build</id>
<build>
<plugins>
<!--JavaDoc setup for Jars-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>2.9.1</version>
<configuration>
<defaultAuthor>Leon Blakey</defaultAuthor>
<defaultVersion>${project.version}</defaultVersion>
<sourcepath>target/delombok</sourcepath>
</configuration>
</plugin>
<!--Deploy site with Mercurial (Hg)-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-site-plugin</artifactId>
<version>3.3</version>
<dependencies>
<dependency><!-- add support for scm -->
<groupId>org.apache.maven.wagon</groupId>
<artifactId>wagon-scm</artifactId>
<version>2.4</version>
</dependency>
<dependency>
<groupId>org.apache.maven.scm</groupId>
<artifactId>maven-scm-provider-hg</artifactId>
<version>1.8.1</version>
</dependency>
</dependencies>
<configuration>
<reportPlugins>
<!--JavaDoc setup for Site-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>2.9.1</version>
<configuration>
<defaultAuthor>Leon Blakey</defaultAuthor>
<defaultVersion>${project.version}</defaultVersion>
<sourcepath>target/delombok</sourcepath>
<show>public</show>
</configuration>
</plugin>
... Checkstyle, PMD, Findbugs, etc ...
</reportPlugins>
</configuration>
</plugin>
</plugins>
</build>
</profile>
</profiles>
サブモジュール POM には、pluginManagement のスケルトン プラグイン定義が含まれているだけです。
サイトを構築しようとすると (ローカル マシンと Jenkins の両方で)、親から実行します
mvn clean install site-deploy -Pcomplete-build
上記の設定で、サブモジュールがそのサイト ファイルをサブモジュール ディレクトリ (site/submodule) ではなくサイト ルート (site/) にダンプする原因は何ですか? スタング コマンドを使用する必要がありますか (リリース プロセスが中断されるため、使用を避けています)。1 つのコマンドでマルチモジュール サイトを構築することは不可能ですか?