Maven复制父母在POM中宣布

时间:2015-04-15 14:01:54

标签: maven android-maven-plugin

我的最终目标是在某个目录中创建一个Maven存储库,其中包含一组工件及其所有依赖项。

为此,我使用以下命令:

mvn.bat dependency:copy-dependencies -f dependencies.pom
        -DoutputDirectory=localRepoDir -Dmdep.useRepositoryLayout=true
        -Dmdep.copyPom=true -Dmdep.addParentPoms=true

dependencies.pom 正在:

<project>
  <modelVersion>4.0.0</modelVersion>
  <description>Dependencies</description>
  <groupId>com.dummy</groupId>
  <artifactId>dummy</artifactId>
  <version>1.0.0</version>
  <dependencies>
    <dependency>
      <groupId>com.dependency1</groupId>
      <artifactId>dep1</artifactId>
      <version>1.0.0</version>
    </dependency>
    <dependency>
      <groupId>com.dependency2</groupId>
      <artifactId>dep2</artifactId>
      <version>1.0.0</version>
    </dependency>
  </dependencies>
</project>

执行此操作时,我注意到依赖项poms中声明的父项不会从.m2本地maven存储库复制到目标目录。

也许我错过了一些东西并且有更好的方法来做到这一点,因为使用pom文件来声明我想要复制的工件(连同它们的依赖项)是一种黑客攻击。

1 个答案:

答案 0 :(得分:1)

原来maven使用版本2.8作为dependency plugin的默认值。当明确指出它使用最新版本(2.10)时,它工作得很好。

addParentPoms已在2.8上为copy-dependencies引入了2.8参数,因此我想它必须是mvn org.apache.maven.plugins:maven-dependency-plugin:2.10:copy-dependencies 版本中的错误。

{{1}}