Maven排除项目中同名不同版本的jar
生活随笔
收集整理的這篇文章主要介紹了
Maven排除项目中同名不同版本的jar
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
今天突然發(fā)現(xiàn)web項目打包后的exe居然有200M+了,心想不應(yīng)該有這么大的啊,于是檢查了一番發(fā)現(xiàn)引用的jar有130+個,仔細一瞅發(fā)現(xiàn)好多同名的但是不同版本的jar,比如說有commons-httpclient就有兩個,3.0和3.1版本的。這樣直接導(dǎo)致了lib下有很多重復(fù)的jar,安裝程序體積自然就上去了。
???? 打開POM.xml,運行了一下mvn dependency:tree 命令,查看依賴關(guān)系樹形結(jié)構(gòu)發(fā)現(xiàn)有兩個jar都是依賴了commons-httpclient這個jar,但是這兩個依賴的版本是不一樣的,所以maven就把兩個版本的都添加進來了。
???? 解決辦法就是通過exclusions配置dependency中要排除的jar文件。 示例如下:
<dependency><groupId>org.codehaus.xfire </groupId><artifactId>xfire-all </artifactId><version>1.2.6 </version><exclusions><exclusion><groupId>org.springframework </groupId><artifactId>spring </artifactId></exclusion></exclusions> </dependency>?
這樣就排除了xfire中的spring依賴。同理,根據(jù)maven依賴樹可以看到哪些jar是重復(fù)依賴的,然后通過exclusions排除掉重復(fù)的項就可以了。
轉(zhuǎn)載于:https://www.cnblogs.com/lslvxy/p/3516933.html
總結(jié)
以上是生活随笔為你收集整理的Maven排除项目中同名不同版本的jar的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: squid代理服务器在企业网中的应用
- 下一篇: .NET配置文件读写实例(附Sosoft