0

複数のサブモジュールを持つかなり複雑な Maven プロジェクトがあります。最近、いくつかのメンテナンス/展開スクリプトを含む別のサブモジュールが必要になりました。これを別の Maven サブモジュールとして使用する理由は、私のビルド スクリプトがバージョン スタンプを取得し、完全なディストリビューションをパッケージ化するためです。

何らかの理由で、ソースディレクトリを圧縮して「ターゲット」フォルダーに入れるだけの既存のmavenアーキタイプが見つかりません。誰かが私が使用すべき正しいアーキタイプを教えてくれますか? または、おそらくこれは、単純な pom ファイルを作成することで実行できます。おそらくmaven-archvie-pluginでうまくいくかもしれませんが、ビルドの「パッケージ」フェーズ中にアーカイブして出力を正しい場所に置くように設定する方法がわかりません。大規模なビルド スクリプトを作成したにもかかわらず、私の maven mojo はまだ非常に限られています。

4

2 に答える 2

0

私はこれを行う2つの方法を見ることができます:

  • スクリプトを保持しsrc/main/resources、生成されたjarファイルを使用します(プロジェクトにjarタイプのパッケージがある場合)。jarファイルは基本的にzipファイルであり、ターゲットディレクトリに生成されます。また、リリースを作成すると、バージョン管理やデプロイなども行われます。それがおそらく最も簡単な解決策です。
  • zipファイル(またはtar.gzなど)が必要な場合は、Mavenアセンブリプラグインを使用してアセンブリを作成します。これにより、生成されたアーカイブとそのコンテンツをよりきめ細かく制御できます。プラグインのページの例を参照してください:http://maven.apache.org/plugins/maven-assembly-plugin/
于 2012-04-19T06:18:20.900 に答える
0

その目的を正確に意図したmaven-sources-pluginを使用できます。ただし、通常、mvn リリースを行うと、ソース アーティファクトも生成されます。もちろん、その目的で maven-assembly-plugin を使用することもできます。あなたの説明に基づいて、src/main/resourcesのスクリプトで構成される別のmaven-moduleを用意することをお勧めします。フィルタリングを有効にして、バージョン情報をスクリプトに入れる必要があります。そのモジュール内で、maven-sources-plugin を使用できます。

于 2012-04-19T06:31:50.690 に答える