[英]How to get a list of the jar included in the uberjar build by maven shade plugin?
我有一個(長)列表,其中不應該包含在我的 uber-jar 中,我想要包含的列表,以便我可以處理配置並刪除重復項。
我查看了由mvn package
打印的 output 列出了很多
[INFO] Including aaa.bbb:ccc.ddd:jar:x.y.z in the shaded jar
但我很確定當我使用minimizeJar
選項時其中一些不包括在內。 並查看 output jar 只允許知道包含的類(很難跟蹤 w.r.t 依賴項)
問題:我使用哪種配置,如何獲得實際合並到 uberjar 中的依賴項列表?
我不熟悉maven-shade-plugin
,但是您嘗試過mvn dependency:tree嗎? 它應該列出項目的所有依賴項及其子依賴項。
編輯:我重新閱讀了您的問題,看來您需要最終 uber-jar 的完整依賴關系樹。 快速瀏覽一下maven-shade-plugin
頁面告訴我,任何依賴項都將被打包到 uber-jar 中。 這應該是mvn dependency:tree
輸出的內容,但您也可以使用jar tf <uber-jar>.jar
列出 jar 的內容。 您可能必須過濾掉父目錄(例如 com/)和清單文件。
這不是我正在尋找的答案,但為了信息共享,這是我為找到要從 shaded-jar 中刪除的依賴項所做的工作:
mvn dependency:list > dep.list
mvn dependency:tree
和 my head 查找可以刪除的父級大多數依賴項<scope>provided<scope/>
<keepDependenciesWithProvidedScope>false</keepDependenciesWithProvidedScope>
乏味...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.