Maven 使用 dependencyManagement 标签用于 : 对 依赖 jar 包的版本进行一个管理
一般出现在项目的最顶层的父POM 中看到 dependencyManagement 元素
注意 :
这个标签只是声明了某些依赖 , 注意只是声明 ! ! ! 前提是你已经下载过了这些依赖 , 才可以放在其中被管理 , 否则在 dependencyManagement 中会出现爆红
解决方案 :
将 DependencyManagement 中管理的依赖 ( 爆红的 / 未下载的 ) 拉出去 , 放在Dependencies 中先进行依赖的下载 , 下载之后再重新放入顶层 pom 中的 DependencyManagement 中来进行一个依赖的管理
打比方 :
父 POM 中的 DependencyManagement 管理 mysql 某个版本 , 此处需要引入版本号的
子项目中的 maven 无需再次指定版本号 , 不指定版本号时 , 默认继承父 pom 中的版本号
为啥要这样做 , 再用个Dependencies来管理 ? ? ?
这样做的好处就是 : 如果有多个子项目都引用同一个依赖 ,可以避免每个子项目中都指定各自的版本号
打个比方 : 昨天你用的 A版本 , 今天想使用 B版本了 , 只需要在父 POM中 更新就可以了,而不需要一个一个在子项目中进行修改 , 如果子项目中指定了版本号,那么会使用子项目中指定的 jar 版本。( 就是像 java 继承 )