dependencyManagement
maven中使用dependencyManagement 来提供一种管理依赖版本号的方式;一般是在最顶层父工程中使用该标签。
dependencyManagement 只是声明依赖,并不实际引入,因此需要在子项目中引入
使用pom.xml中的dependencyManagement 元素能让所在子项目中引用一个依赖而不用显示的列出版本号。maven会沿着父子层级向上走,直到找到有个拥有dependencyManagement 元素的项目,然后使用这个dependencyManagement 元素中指定的依赖版本号
例如父工程定义如下:
<dependencyManagement>
<dependencies>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.47</version>
</dependency>
</dependencies>
</dependencyManagement>
然后子工程中就可以不用在定义mysql的版本号,会默认和父版本一致,如果子工程引入了自己的版本号,则会使用自己定义的版本。
<dependencies>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
</dependencies>