亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Maven?Pom?文件中的隱式依賴導(dǎo)致Jar沖突問題

 更新時(shí)間:2021年12月22日 08:40:17   作者:大餅卷饅頭蘸米飯  
這篇文章主要介紹了Maven?Pom?文件中的隱式依賴導(dǎo)致Jar沖突問題,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

在maven項(xiàng)目中遇到這樣一個(gè)場景

  • 項(xiàng)目中的pom文件中,依賴了Spring-core,而Spring-core又隱式的依賴了commons-logging。
  • 項(xiàng)目中同時(shí)配置了對定時(shí)任務(wù)quartz 包的依賴,而quartz又隱式依賴了slf4j。

這樣項(xiàng)目中既有了commons-logging又有了slf4j。導(dǎo)致在log4j.properties里配置的mybatis的sql顯示配置,一直沒起作用,直到我查看maven dependencie中的jar包時(shí),才發(fā)現(xiàn)項(xiàng)目既依賴了common-logging又引入了slf4j。后來通過排除quartz中的slf4j的依賴

解決了上述沖突的問題

<dependency>
				<groupId>org.quartz-scheduler</groupId>
				<artifactId>quartz</artifactId>
				<exclusions>
					<exclusion>
					    <groupId>org.slf4j</groupId>
					    <artifactId>slf4j-api</artifactId>
					</exclusion>
				</exclusions>
			</dependency>

以后該如何解決這種類似的問題呢。eclipse提供了對隱式依賴jar包的查看功能:在eclipse中打開一個(gè)pom文件,在Dependency Hierarchy的Tab頁中,就可以查看當(dāng)前pom文件中顯示聲明的jar包,及這些顯示聲明的jar中隱式引入的依賴jar包。

這樣就可以查看有哪些隱式的依賴jar會(huì)導(dǎo)致jar包沖突了。

Maven 查看jar包依賴關(guān)系

使用eclipse操作,在項(xiàng)目中打開pom.xml文件進(jìn)入Dependency Hierarchy 來查看依賴樹

在這里插入圖片描述

  • Dependency hierarchy:依賴層次視圖
  • Resolved dependencies:依賴關(guān)系解析

點(diǎn)擊右邊jar或者搜索需要查找的jar可以在左邊找到對應(yīng)關(guān)系

比如在NewEnergyCheckDemo項(xiàng)目中啟動(dòng)springBoot工程控制臺(tái)不打印錯(cuò)誤信息,那一定是某個(gè)日志jar包有沖突導(dǎo)致的,我們就可以直接搜索要查找的jar,我們可以看到在pom.xml文件中依賴了

在這里插入圖片描述

而Commons-vfs2這個(gè)jar包中又隱式依賴了commons-logging

在項(xiàng)目中我們又配置了spring-boot-starter-web的依賴

在這里插入圖片描述

我們可以看到該jar包又隱式依賴了一些其他的jar包,如spring-boot-starter又包含了spring-boot-starter-logging,該依賴的內(nèi)容就是springBoot默認(rèn)的日志框架logback,所以我們在使用springBoot的日志框架時(shí)應(yīng)該先排除commons-vfs2中commons-logging該jar包的依賴.

排除jar包依賴,找到需要排除的jar包點(diǎn)擊右鍵如下圖

在這里插入圖片描述

排除依賴之后的pom.xml坐標(biāo)如下

在這里插入圖片描述

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論