我搜索一種方式來獲得一種依賴關係收斂報告,該報告列出了在dependency-management
中定義的依賴關係,但被不同版本的傳遞依賴關係引用。如何獲得依賴管理和傳遞依賴之間「衝突」的Maven依賴關係收斂報告?
我知道maven-project-info-reports-plugin:dependency-convergence
,但這個名單只是在dependency
定義之間的依賴關係(和傳遞依賴)的衝突,但只要我定義了在dependency-management
依賴,它就會沒有在報告中列出。
我只想報告,如果發生這樣的「衝突」,我不想讓構建失敗。
背景:
我有一個Maven的多模塊項目:
- 以前我沒有用過
depencency-managent
,但我用屬性來定義父的依賴版本pom並在每個模塊的dependency
部分聲明瞭該屬性的依賴關係。 - 但是後來我想,讓我們按照Maven的最佳做法,在父項
depencency-managent
中聲明依賴項和版本,並從子項目depencency
s中刪除版本標籤。
(之前)我用maven-project-info-reports-plugin:dependency-convergence
報告來發現版本衝突的傳遞依賴關係。爲了決定我可以「忽略」那個衝突,或者我必須做些事情來解決它。 (典型的我「忽略」bugfix級別的衝突(版本號delta 0.0.X),但花費更多時間在主要或次要更改級別的衝突上。
但是在將依賴關係移動到depencency-managent
之後, maven-project-info-reports-plugin:dependency-convergence
報告幾乎是空的,沒有發現任何問題。
這很有趣。你想從中得出什麼結論? –
@JFMeier:我在我的問題中添加了一個「背景」部分,希望能解釋我使用/想要使用報告的內容。 – Ralph