天天看點

如何精簡maven項目的依賴jar包如何精簡maven項目的依賴jar包

如何精簡maven項目的依賴jar包

maven依賴管理,真的是一把雙刃劍,規範和簡化了依賴配置,但是也像個黑盒子,隐藏了太多的東西,依賴了很多沒有用到的jar包。

今天我們就聊一聊如何用maven的dependency插件,分析依賴關系,進而精簡依賴jar包。

檢視目前的依賴情況

mvn dependency:tree > tree.txt

分析依賴情況, 請把結果存入tree.txt檔案

分析一下那些jar沒有用到

mvn dependency:analyze

檢視哪些jar沒有用到,示例結果如下。 analyze是基于位元組碼分析的。當然這些結果僅供位元組碼分析的不一定完全準确, 僅供參考。 runtime類型的依賴就分析不了的。

[WARNING] Unused declared dependencies found:

[WARNING] org.eclipse.jetty:jetty-server:jar:9.3.18.v20170406:compile

[WARNING] org.apache.tapestry:tapestry-json:jar:5.4.1:compile

[WARNING] com.netflix.hystrix:hystrix-metrics-event-stream:jar:1.5.8:compile

[WARNING] org.mybatis:mybatis:jar:3.3.0:compile

删 and exlusive

删除沒有用到的jar依賴, 看看效果。

mvn dependency:tree > tree_new.txt

參考連結

  • Apache Maven Dependency Plugin

繼續閱讀