利用pom管理引用包时,若是是单项目的话就直接在dependencies引用了,如有一个大工程项目里面包含多个子模块,则为了全部项目模块包的版本统一和好管理,则须要用到dependencyManagement,但二者使用场景有所区别。继承
dependencies即便在子项目中不写该依赖项,那么子项目仍然会从父项目中继承该依赖项(所有继承)。ci
dependencyManagement里只是声明依赖,并不实现引入,所以子项目须要显示的声明须要用的依赖。若是不在子项目中声明依赖,是不会从父项目中继承下来的;只有在子项目中写了该依赖项,而且没有指定具体版本,才会从父项目中继承该项,而且version和scope都读取自父pom;这样就能够统一所有项目的版本号;io
另外若是子项目中指定了版本号,那么会使用子项目中指定的jar版本。
引用