2

jar ファイルを生成する Maven モジュールがあります。ビルド プロセスの副産物として、いくつかの他の uberjar ファイルを開発するように依頼されました。これらの 2 つの jar ファイルは、maven モジュールの依存関係からいくつかのクラスを含める必要があるアプレット jar ファイルであるとも言われました。

私は周りを見回して、これらの3つのオプションに絞り込みました-

  1. Maven アセンブリ プラグイン - これは、maven モジュールによって生成されたクラスからカスタム jar を構築できます。サードパーティの依存関係を含めることはできません。
  2. Maven を介して ant を使用する - maven-dependency-pluginを使用して依存関係を解凍し、ant スクリプトを介してアプレット jar をパックします。
  3. Maven shade プラグインを使用する- このプラグインは私の要件には直接適していませんが、動作させることができます。

(b) と (c) で動作させることはできますが、どちらを使用するかを決めることができません。私が気付いた重要なことの 1 つは、依存関係プラグインを使用すると時間がかかることです。

人々が同じ要件を達成する他の方法があるかどうかを知りたかったのです。

4

2 に答える 2

4

dependencySet要素を含むアセンブリプラグインを使用して依存関係を含めることができます。以下を参照してください。

具体的には、 AndrewEBrunoのブログから抜粋した例を次に示します。

<dependencySets>
  <dependencySet>
    <outputDirectory></outputDirectory>
    <outputFileNameMapping></outputFileNameMapping>
    <unpack>true</unpack>
    <scope>runtime</scope>
    <includes>
      <include>commons-lang:commons-lang</include>
      <include>commons-cli:commons-cli</include>
    </includes>
  </dependencySet>
</dependencySets>
于 2012-04-11T00:25:11.330 に答える
0

私はついにあなたが上で説明したのと同じアプローチを使ってアセンブリプラグインを使いました。Mavenの外部からのリソースを使用していくつかのアセンブリを生成し、shadeプラグインはそのようなタスクを十分にサポートしていないため、shadeプラグインから離れました。

于 2012-04-16T20:45:22.367 に答える