天天看點

maven隐式依賴引起的包沖突

使用maven管理項目時可能會遇到包沖突的情況比如:log4j-over-slf4j.jar 和 slf4j-log4j12.jar這兩個包同時一起運作時就會有問題。

這種沖突可能是顯式依賴導緻,也可能是隐式依賴導緻。

顯式依賴,直接可以從pom.xml檔案的<code>&lt;dependency&gt;</code>中看到兩個沖突包的引用。

隐式依賴,在pom.xml的<code>&lt;dependency&gt;</code>無法看到沖突的包,而是由<code>&lt;dependency&gt;</code>引入的包廂接引入的。

先确認哪些依賴間接引入了包。使用<code>mvn dependency:tree</code>檢視整個項目的依賴樹,這裡能看到所有的依賴,包括間接依賴。

結果類似如下:

查到沖突包對應的依賴,在pom.xml的<code>&lt;dependency&gt;</code>中配置排除,就不會引入該包了,例如:

========廣告時間========

<a href="http://blog.csdn.net/wangyangzhizhou/article/details/74080321">為什麼寫《Tomcat核心設計剖析》</a>

=========================

歡迎關注:

maven隐式依賴引起的包沖突