簡體   English   中英

如何使用Maven獲得項目的所有嵌套依賴關系?

[英]How can I get all nested dependencies of a project using Maven?

我正在使用一個項目(java),我有一個pom,它稱為父pom ...

那個父母pom叫其他pom,他們叫其他pom。 因此,最后我有一個項目,誰的pom調用了其他項目,因此我可以使用它們調用他們的方法以及所有方法(但是我不使用。最后,我的項目使用自己的pom,方法來調用另外20個項目,服務等...

在所有這些混亂之中,我意識到我的項目可能不會使用所有其他項目,因此,我想得到我所需的正確依賴項,將它們從其他項目中刪除,並將其包括在我的本地項目中。 其中一些包含的項目可能會相互調用,從而產生一些錯誤。

我以為我已經清理了這個項目,只包括正確的依賴項,但是然后我得到了一個Dependency convergence error

有什么辦法可以一次跟蹤項目使用的所有依賴項和包含的項目使用的依賴項(嵌套依賴項)?

謝謝

您是否嘗試過maven-dependency-plugin? 您將獲得按使用的未聲明的依賴項或未使用的已聲明的依賴項分組的依賴項列表

mvn依賴關系:分析

或在您的dependencyManagement部分中查看不匹配項,請使用:

mvn依賴項:analyze-dep-mgt

同樣有幫助的是

mvn依賴項:樹

一個完整的依賴樹。 您有更多選擇,請參閱maven-dependency-plugin用法以獲取更多詳細信息。

使用依賴插件:

% mvn dependency:tree -Dverbose -Dincludes=commons-collections
[INFO] [dependency:tree]
[INFO] org.apache.maven.plugins:maven-dependency-plugin:maven-plugin:2.0-alpha-5-SNAPSHOT
[INFO] +- org.apache.maven.reporting:maven-reporting-impl:jar:2.0.4:compile
[INFO] |  \- commons-validator:commons-validator:jar:1.2.0:compile
[INFO] |     \- commons-digester:commons-digester:jar:1.6:compile
[INFO] |        \- (commons-collections:commons-collections:jar:2.1:compile - omitted for conflict with 2.0)
[INFO] \- org.apache.maven.doxia:doxia-site-renderer:jar:1.0-alpha-8:compile
[INFO]    \- org.codehaus.plexus:plexus-velocity:jar:1.1.3:compile
[INFO]       \- commons-collections:commons-collections:jar:2.0:compile

希望能有所幫助。

暫無
暫無

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

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