Maven的依赖关系树和POM依赖

问题描述:

我想知道以下罐子的所有传递依赖:Maven的依赖关系树和POM依赖

<dependency> 
    <groupId>org.codehaus.mojo</groupId> 
    <artifactId>xmlbeans-maven-plugin</artifactId> 
    <version>2.3.3</version> 
</dependency> 

移动的经典命令添加到项目的界定依赖和输入的pom.xml中:

MVN依赖性:树

会显示:

+- org.codehaus.mojo:xmlbeans-maven-plugin:jar:2.3.3:compile 
| +- xml-resolver:xml-resolver:jar:1.2:compile 
| +- org.apache.maven:maven-model:jar:2.0.6:compile 
| +- org.apache.maven:maven-artifact:jar:2.0.6:compile 
| +- org.apache.maven:maven-project:jar:2.0.6:compile 
| | +- org.apache.maven:maven-settings:jar:2.0.6:compile 
| | +- org.apache.maven:maven-profile:jar:2.0.6:compile 
| | +- org.apache.maven:maven-artifact-manager:jar:2.0.6:compile 
| | | +- org.apache.maven:maven-repository-metadata:jar:2.0.6:compile 
| | | \- org.apache.maven.wagon:wagon-provider-api:jar:1.0-beta-2:compile 
| | +- org.apache.maven:maven-plugin-registry:jar:2.0.6:compile 
| | \- org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9-stable-1:compile 
| |  +- junit:junit:jar:3.8.1:compile 
| |  \- classworlds:classworlds:jar:1.1-alpha-2:compile 
| +- org.apache.maven:maven-plugin-api:jar:2.0.6:compile 
| +- org.apache.xmlbeans:xmlbeans:jar:2.4.0:compile 
| | \- stax:stax-api:jar:1.0.1:compile 
| \- org.codehaus.plexus:plexus-utils:jar:1.5.6:compile 

我没有看到魔力父:

<groupId>org.codehaus.mojo</groupId> 
    <artifactId>mojo-parent</artifactId> 
    <version>21</version> 
    <packaging>pom</packaging> 

乍一看似乎MVN命令可以显示哪些不是POM类型的依赖关系。

有没有一种方法可以准确显示每一个需要保存一个jar的文件?

谢谢!

+0

它只显示编译时间依赖关系吗? – amitmah

+0

所以看来,但我希望看到该项目的那个jar(或每个)的一切。 –

+0

相关http://*.com/questions/9120294/how-do-i-show-the-maven-pom-hierarchy – Tunaki

实际上很难显示'保持活着的瓶子'所需的文件。你的项目可以有一些隐含的依赖关系。

您可以运行mvn dependency:analyze,它应该显示您未使用的依赖关系。 但是你已经意识到你可以*移除哪些。 http://maven.apache.org/plugins/maven-dependency-plugin/analyze-mojo.html

我也可以推荐,如果你不希望任何传递依赖的惊喜 - 使用maven执行者。你可以禁止所有未申报的传递依赖。 http://maven.apache.org/enforcer/enforcer-rules/banTransitiveDependencies.html

+0

有趣,但我问的是jar的依赖关系。该项目可以是一个空的只是运行mvn命令。 –

+0

@Mark dependeny:tree向您展示了jar所需的所有依赖项。那么你需要什么? –

+0

我仍然无法看到列出的mojo父母 –