Maven 复制 POM 中声明的父级
Maven copy parents declared in the POMs
我的最终目标是在某个目录中创建一个 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>
执行此操作时,我注意到在依赖项的 po 中声明的父级未从 .m2 本地 maven 存储库复制到目标目录。
也许我遗漏了一些东西并且有更好的方法来做到这一点,因为使用 pom 文件来声明我想要复制的工件(连同它们的依赖项)是一种 hack。
原来 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
我的最终目标是在某个目录中创建一个 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>
执行此操作时,我注意到在依赖项的 po 中声明的父级未从 .m2 本地 maven 存储库复制到目标目录。
也许我遗漏了一些东西并且有更好的方法来做到这一点,因为使用 pom 文件来声明我想要复制的工件(连同它们的依赖项)是一种 hack。
原来 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