簡體   English   中英

Maven依賴樹和pom依賴項

[英]Maven dependency tree and pom dependencies

我想知道以下jar的所有傳遞依賴:

<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

我沒有看到mojo-parent:

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

乍一看似乎mvn命令可以顯示不是pom類型的依賴項。

有沒有辦法顯示保持jar活着所需的每個文件?

謝謝!

實際上很難顯示“保持罐子活着”所需的文件。 您的項目可能有一些隱式依賴項。

您可以運行mvn dependency:analyze ,它應該顯示未使用的依賴項。 但是你已經意識到你可以自由刪除哪些。 http://maven.apache.org/plugins/maven-dependency-plugin/analyze-mojo.html

如果你不希望任何有傳遞依賴的意外,我也可以推薦 - 使用maven enforcer。 您可以禁止所有未聲明的傳遞依賴項。 http://maven.apache.org/enforcer/enforcer-rules/banTransitiveDependencies.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM