2

pom.xml(jarパッケージ)で、maven依存関係プラグインを使用して2種類の依存関係をダウンロードしたいと思います。1つは推移的で、もう1つはなしでダウンロードしたいです。これまでのところ、私のプラグインセクションには次の要素が含まれています。

<plugin>
  <artifactId>maven-dependency-plugin</artifactId>
  <version>2.5</version>
  <executions>
    <execution>
  <id>Copy dependencies transitive</id>
  <phase>initialize</phase>
  <goals>
    <goal>copy-dependencies</goal>
  </goals>
      <configuration>
        <excludeTransitive>false</excludeTransitive>
    <outputDirectory>lib</outputDirectory>
        <includeArtifactIds>artifact_1</includeArtifactIds>
  </configuration>
</execution>

    <execution>
      <id>Copy dependencies not transitive</id>
  <phase>initialize</phase>
  <goals>
    <goal>copy-dependencies</goal>
  </goals>
  <configuration>
        <outputDirectory>samples</outputDirectory>
        <excludeTransitive>true</excludeTransitive>
        <includeArtifactIds>artifact_2,artifact_3</includeArtifactIds>
  </configuration>
</execution>
  </executions>
</plugin>

やった後

mvn initialize

Artifact_1はlibにあり、artifact_2と3はサンプルにあります。ただし、artifacts_1の推移的な依存関係は見つかりません。これは正しい方法ですか?私はどういうわけかこの解決策がすでに機能することを期待していますが、そうではないようです...修正は大歓迎です...

4

1 に答える 1

3

何が起こっているのかわかりました...
includeArtifactIds は推移的な依存関係にも影響します。したがって、artifact_4 と artifact_5 が artifact_1 の推移的な依存関係である場合、それらは含まれていないためコピーされません。これは少し予想外だと思いますが、まあ...それが実装された方法です(ただし、文書化されていません)。今、私は includeArtifacts から excludeArtifacts に変更したところ、動作します。

于 2012-08-15T17:41:21.207 に答える