4

インストールパッケージを作成するためにmaven用のAssemblyプラグインを使用しています。

私のパッケージング要件では、ビルド中に生成されたアーティファクトとすべての依存関係を別々のフォルダーに分割する必要があります。

私の現在のアセンブリマニフェストは次のとおりです。

<moduleSets>
  <moduleSet>
    <includes>
      <include>test:test</include>
    </includes>
    <binaries>
      <includeDependencies>false</includeDependencies>
      <outputDirectory>lib/custom/${artifactId}</outputDirectory>
      <unpack>false</unpack>
    </binaries>
  </moduleSet>
  <moduleSet>
    <includes>
      <include>test:test</include>
    </includes>
    <binaries>
      <includeDependencies>true</includeDependencies>
      <excludes>
        <exclude>test:test</exclude>
      </excludes>
      <outputDirectory>lib/thirdParty/</outputDirectory>
      <unpack>false</unpack>
    </binaries>
  </moduleSet>
</moduleSets>

最初のモジュールセットは、現在ビルドされているアセンブリのみを正しく生成します。ただし、 thirdParty には、現在ビルドされているアセンブリも含まれます。最初のセットに既に含まれているファイルを除外するにはどうすればよいですか?

ありがとう

4

3 に答える 3

1

dependency:copy-dependencies の使用についてはどうですか? それを使用して、すべての依存関係を target/lib にコピーします。

于 2009-09-02T06:32:37.123 に答える
0

それを行うための 1 つの厄介な方法は、maven-antrun-pluginと ant タスクを使用することです。lib/custom/${artifactId} の内容を繰り返し、lib/thirdParty からすべてのファイルを削除します。

于 2009-07-22T22:32:17.950 に答える
0

appassemblyr-maven-pluginを見たいと思うかもしれません。すべてのランタイム依存関係 jar をディレクトリにダンプできます。それをハックして、メインの jar をあるフォルダーに配置し、依存関係を別のフォルダーにダンプできる場合があります。

于 2009-08-31T20:54:50.007 に答える