Maven - 是否有命令下载所有依赖jar的父poms?

时间:2014-11-25 01:09:08

标签: java maven pom.xml parent-pom

我知道我们可以下载依赖jar ...但是我们可以下载所有依赖jar的父poms吗?

例如,Project A将库B作为依赖项引入,但库B具有父pom C.xml。

我想找到一个命令,用于下载Bs和C.xml中的所有pom.xml。

理想情况下,如果C.xml有另一个父pom D.xml,我也想下载它。

3 个答案:

答案 0 :(得分:1)

带有add parent POMs选项的Maven依赖插件。

mvn dependency:copy-dependencies -Dmdep.addParentPoms=true -Dmdep.copyPom=true

如果因为Maven使用较旧版本的依赖插件(addParentPoms选项需要2.8或更高版本)而无效,请使用最新版本:

mvn org.apache.maven.plugins:maven-dependency-plugin:2.9:copy-dependencies -Dmdep.addParentPoms=true -Dmdep.copyPom=true

这些命令以递归方式下载依赖项(包括传递依赖项),它们的POM和所有父POM。

答案 1 :(得分:1)

prunge的答案表明你必须使用依赖插件下载它们。如果您只是想看到这些poms,maven会将它们下载到repo的本地缓存副本。只需转到.m2 / repoistory,您会发现它们是-.pom。该文件的名称为.pom,实际上是该特定工件的pom.xml

答案 2 :(得分:1)

最简单的解决方案是使用

mvn org.apache.maven.plugins:maven-dependency-plugin:2.9:resolve

或更短:

mvn dependency:resolve

它将解决所有依赖关系。 pom's等。之后你可以用这个存储库来构建。它们将被下载到本地存储库中。如果你想要这些文物包括。他们把poms放到一个特定的目录中,而不是使用@prunge。

提出的建议