2011-06-29 9 views
1

Maven サイトゴールで生成されたウェブサイトの形でいくつかのMavenプロジェクトの概要を作りたいと思います。プロジェクトは異なる製品の一部であり、一部は親子関係を持ち、あるものは他のものに依存しています。関連のないプロジェクトから結合Mavenサイトを生成するには?

このサイトは、すべてのプロジェクトの情報を結合し、JavaDoc、Checkstyle/PMDチェック、テスト結果、およびコードカバレッジメトリックを含む必要があります。

各プロジェクトをモジュールとして集計し、各プロジェクトをサブフォルダで利用できるPOMファイルを作成しましたが、出力は単一のサイトに結合されません。

答えて

2

すべてのプロジェクトのproject.build.directoryを共通フォルダに設定すると、これを行うことができます。これは、ビルドのパラメータとしてパスを渡すことで実現できます。その後、共通のターゲットフォルダでサイト目標を実行できます。継続的な統合環境でmavenを実行する場合は、Mavenタスクでtargetpathを設定することでこれを行うことができます。それ以外の場合は、コマンドラインで指定する必要があります。あなたの開発者のための同じビルドを維持するために

、あなたはtargetpathがコマンドラインで提供されていない場合に起動されているプロファイルを作成することができます。

<profiles> 
    <profile> 
    <id>dev</id> 
    <activation> 
     <property> 
     <name>!targetpath</name> 
     </property> 
    </activation> 
    <properties> 
     <targetpath>target</targetpath> 
    </properties> 
    </profile> 
</profiles> 
+0

これは、Checkstyleレポートではなく、結合されたJavadocを含むサイトを生成します。私はそれぞれのプロジェクトごとに/ target/siteフォルダを作成します。明日は、別のプロジェクトのPOMの設定を確認します。 – Kwebble

+0

私はそれを働かせることができません。サイトプラグインのドキュメントには、の設定は記載されていません。 – Kwebble

+0

inputDirectoryは 'site:deploy'または' site:stage'の目標です。 'site:site'は$ {targetpath}/$ {artifactId}の下にサイトを構築する必要があり、' site:stage'はそれらを共通の場所にコピーしなければなりません。 –

関連する問題