2013-05-03 64 views
18

我想從一個依賴項中排除所有傳遞依賴項。在一些地方,我已經看到了它建議當我這樣做,我得到一個警告,以用於該在Maven中,如何從特定的依賴項中排除所有傳遞依賴項?

<dependency> 
    <groupId>myParentPackage</groupId> 
    <artifactId>myParentProject</artifactId> 
    <version>1.00.000</version>    
    <exclusions> 
    <exclusion> 
     <groupId>*</groupId> 
     <artifactId>*</artifactId> 
    </exclusion> 
    </exclusions> 
</dependency> 

通配符:

'dependencies.dependency.exclusions.exclusion.groupId' for myParentPackage:myParentProject:jar with value '*' does not match a valid id pattern. @ line 146, column 30 

聲明本身是成功的,但:在傳遞依賴真的是在我的構建中被忽略。

我還發現了一個古老的功能要求,它要求exactly this feature

所以,現在我不知道這是否是一個棄用的功能,如果我不應該使用,警告的錯誤,或的特徵尚未完全實現(我正在使用Maven 3.0.4)...有人對此有更多瞭解嗎?

+0

Maven支持[依賴排除](https://maven.apache.org/guides/introduction/introduction-to-optional-and-excludes-dependencies.html)作爲一個笨重的解決方法。 – 2013-10-15 22:57:37

+0

+1表示通配符排除。警告/無警告,我的Android儀器測試最終可以運行(預先驗證問題的任何人?)。明確排除每個人的依賴是瘋狂的。 – dev 2013-11-20 17:52:32

回答

0

至於我的知道,這個功能還不存在。在您發送的功能請求中,您可以看到它的狀態仍然是「未解決」。

+0

是的,這似乎是按照要求的方式。但是扔掉我的東西是當你使用它的時候,這個功能實際上起作用了,它只是拋出一個警告;但它的作品:) – Markus 2013-05-03 09:27:58

2

我討厭自己收到Maven警告。我已經看到了通配符方法,但避免了它。運行mvn依賴關係:樹目標,發現屬於有問題的製造物的頂級依賴關係,並單獨排除每個依賴關係(希望列表並不那麼龐大)。這是解決這個問題的最安全的方法。

相關問題