マルチモジュール アプリケーションがあり、このアプリケーション用の Maven サイトを生成しようとしています。
すべての子モジュールを保持する集約 POM、子モジュールのすべての共通機能を保持する継承 POM、および 20 個程度の子モジュールがあります。
これを機能させる方法について、オンラインの例を無数に調べました。これらのうち、マルチモジュール部分は機能しません。子 (および集約モジュール) の target/site フォルダーに、個別のサイト出力を正常に構築できます。集約 POM の target/staging フォルダーにステージングすることもできました。作成されたものは良さそうです。
しかし:
子モジュール リンクはいずれも機能しません。
この問題に関するコメントの中には、リンクは Web サイトとして構築された場合にのみ機能すると書かれているものもあるため、これを jetty で実行してみましたが、同じ問題で、子の index.html が見つかりません。
しますか誰でもこれが機能している例はありますか? これ以上頭を悩ませないように (すでに頭がいっぱいになっているのは神のみぞ知る)、実際に機能している POM コードや、正しいテストとデプロイに従う段階を見たいです。
誰か助けてくれませんか?
ベストアンサー1
目標を設定するための「よりシンプルな」ソリューションを見つけましたstage
。フォルダー内の各モジュールのドキュメントを自動的に集約します${project.baseURI}/target/staging
。コツは、これをすべてのサブモジュールの親 pom に追加することです。
<distributionManagement>
<site>
<id>${project.artifactId}-site</id>
<url>${project.baseUri}</url>
</site>
</distributionManagement>
走る
mvn clean site site:stage
pom アグリゲータから。次に、target/staging
フォルダを確認してください。サブモジュールのドキュメントが正しくリンクされているはずです。