一、在父模块pom中使用的导包方式为:
<depedencies>
...
</depedencies>
子模块会直接继承父模块中的jar包
此种方式一般用于:在父pom中配置每个模块都需要的jar包及其他配置信息
二、在父模块pom中使用的导包方式为:
<dependencyManagement>
<dependencies>
...
</dependencies>
</dependencyManagement>
子模块pom不会自动继承父模块pom中的jar包,如果需要使用,就要给出 groupId 和 artifactId,无需给出 version
此种方式由父模块统一管理依赖的版本配置
总结
- Maven <dependencyManagement> 与 <dependencies> 区别:
1- <dependencies>中的jar直接加到项目中,管理的是依赖关系。(如果有父pom、子pom,则子pom中只能被动接受父pom的版本)
2- <dependencyManagement>主要管理版本,对于子模块继承同一个父模块是很有用的,集中管理依赖版本不添加依赖关系,对于其中定义的版本,子pom不一定要继承父pom所定义的版本。