您好,登錄后才能下訂單哦!
1.在Maven中dependencyManagement的作用對所依賴jar包進行版本管理的管理器,dependencyManagement中申明dependencies并不引入進應的Jar包,只是聲明依賴。 2.獨立的dependencies的依賴會引入相應的Jar包 3.Maven依賴工作過程:如果dependencies里的dependency自己沒有聲明version元素,那么maven就會倒dependencyManagement里面去找有沒有對該artifactId和groupId進行過版本聲明,如果有,就繼承它,如果沒有就會報錯,告訴你必須為dependency聲明一個version.如果dependencies中的dependency聲明了version,那么無論dependencyManagement中有無對該jar的version聲明,都以dependency里的version為準。 實例應用:在父pom文件中加了dependencyManagement節點,添加了一些依賴的version信息,都沒問題。但是添加 ???<dependency> ????<groupId>net.sf.ehcache</groupId> ????<artifactId>ehcache-core</artifactId> ????<version>2.3.0</version> ???</dependency> maven編譯就會出錯。報錯信息如下: 'dependencies.dependency.version'?for?net.sf.ehcache:ehcache-core:jar?is?missing.?@?line?126,?column?21 在子pom文件中,該依賴如下: ??????<dependency> ????????????<groupId>net.sf.ehcache</groupId> ????????????<artifactId>ehcache-core</artifactId> ??????</dependency> ?????? 解決方法:在父POM中將dependency添加到dependencyMangagemetn標簽中 <dependencyManagement> ????<dependencies> ????????????<dependency> ????????????????????<groupId>net.sf.ehcache</groupId> ????????????????????<artifactId>ehcache-core</artifactId> ????????????????????<version>2.3.0</version> ????????</dependency> ????</dependencies> </dependencyManagement>
總結:
//只是對版本進行管理,不會實際引入jar??
<dependencyManagement>??
? ? ? <dependencies>??
? ? ? ? ? ? <dependency>??
? ? ? ? ? ? ? ? <groupId>org.springframework</groupId>??
? ? ? ? ? ? ? ? <artifactId>spring-core</artifactId>??
? ? ? ? ? ? ? ? <version>3.2.7</version>??
? ? ? ? ? ? </dependency>??
? ? </dependencies>??
</dependencyManagement>??
??
//會實際下載jar包??
<dependencies>??
? ? ? ?<dependency>??
? ? ? ? ? ? ? ? <groupId>org.springframework</groupId>??
? ? ? ? ? ? ? ? <artifactId>spring-core</artifactId>??
? ? ? ?</dependency>??
</dependencies>
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。