Maven使用DependencyManagement元素来管理依赖版本号,通常会在一个组织或者项目的最顶层的父POM中看到DependencyManagement元素。

使用pom.xml文件中的DependencyManagement元素能让所有在子项目中引用一个依赖而不用显示的列出版本号,Maven会沿着父子层级向上走,直到找到一个拥有DependencyManagement元素的项目,然后它就会使用这个DependencyManagement元素中指定的版本号。

例如在父项目的pom文件中指定了SpringBoot,那么子项目中则可以不用指定版本号了。只要改父pom文件中的version,那么子项目都会生效。如果子项目中需要独立声明,那么只要指定依赖的version即可。

<dependencyManagement><dependencies><!--spring boot 2.2.2--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-dependencies</artifactId><version>2.2.2.RELEASE</version><type>pom</type><scope>import</scope></dependency>...</dependencies>
</dependencyManagement>

值得注意的是,DependencyManagement只是负责声明依赖,并不负责引入依赖,因此子项目需要显式的声明需要用到的依赖。

如果不再子项目中声明依赖,是不会从父项目中继承下来的;只有在子项目中声明了该依赖项,并且没有指定版本号,才会从父项目中继承该依赖项,并且version和scope都读取自父pom。

如果子项目中使用了版本号,那么就使用子项目中指定的jar版本。

Maven中DependencyManagement和Dependencies区别相关推荐

  1. maven中DependencyManagement和Dependencies

    上次这边朋友问我一个问题,就是他们在pom.xml中的dependency中,看到有一些是<scope>provided</scope>的情况,比如如下: 双击代码全选 1 2 ...

  2. cmenu 隐藏子项中的一个子项_区分Maven中dependencyManagement与dependencies的作用

    导读:使用maven是为了更好的帮项目管理包依赖,maven的核心就是pom.xml.而maven中有许多的标签,下面我们主要讨论parent.dependencies与dependencyManag ...

  3. dependencyManagement与dependencies区别

    一.dependencyManagement应用场景 为了项目的正确运行,必须让所有的子模块使用依赖项的统一版本,必须确保应用的各个项目的依赖项和版本一致,才能保证测试的和发布的是相同的结果.在我们项 ...

  4. Maven中dependencyManagement的使用

    本文来说下Maven中dependencyManagement的使用 文章目录 dependencyManagement的使用 dependencyManagement的意义 dependencyMa ...

  5. maven 中 pom.xml 配置文件标签说明,dependencyManagement和dependencies区别

    前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. 参考:http://zhaoshijie.iteye.com/blog/2094478 http:/ ...

  6. Maven中dependencyManagement标签和dependencies的区别

    今天在maven的pom文件中看到了dependencyManagement标签,用法如下: <dependencyManagement><dependencies><d ...

  7. dependencyManagement和dependencies的区别

    dependencyManagement和dependencies的区别 参考:http://zhaoshijie.iteye.com/blog/2094478 http://blog.csdn.ne ...

  8. Maven中的dependencyManagement 意义

    1.在Maven中dependencyManagement的作用其实相当于一个对所依赖jar包进行版本管理的管理器. 2.pom.xml文件中,jar的版本判断的两种途径 1:如果dependenci ...

  9. Maven 梳理 - Maven中的dependencyManagement 意义

    1.在Maven中dependencyManagement的作用其实相当于一个对所依赖jar包进行版本管理的管理器. 2.pom.xml文件中,jar的版本判断的两种途径 1:如果dependenci ...

  10. maven 中 dependencies 与 dependencyManagement 的区别

    前言 当前的团队工程项目是一个 maven 工程,里面有多模块,包含了父 pom 与子 pom.而在父 pom 中,我见到了 dependencyManagement 这个东西.我们知道一个 mave ...

最新文章

  1. C#面向对象(四)虚方法实现多态
  2. 360无痕浏览器_高效使用浏览器,探索你不知道的实用功能
  3. SQL连接,Oracle关联加号(+)等相关知识
  4. 重定向dup2的本质
  5. Weblogic10 集群配置
  6. inode与ln命令
  7. php 命名空间(,PHP命名空间(Namespace)简明教程
  8. Educational Codeforces Round 80 (Rated for Div. 2) C. Two Arrays 组合数|dp
  9. Qt工作笔记-对QImage的进一步认识(关于α通道)
  10. 漫步微积分十三——高阶导数
  11. 使用CSS按比例调整图像大小? [重复]
  12. C语言基础教程之错误处理
  13. vs2005下使用ASPNetPage分页的例子1
  14. 拓端tecdat|R语言蒙特卡洛方法:方差分量的Metropolis Hastings(M-H)、吉布斯Gibbs采样比较分析
  15. php遍历目录与文件夹的多种方法详解
  16. 工作要求,写了一些没用的设计文档
  17. FYI-django数据库操作-外键
  18. 阿里小二最想销毁的照片都在这里了,时间真的是把杀猪刀?
  19. 百位大整数的加法雏形——C语言
  20. [CF538H]Summer Dichotomy

热门文章

  1. 第一个IOS APP总结
  2. Android 图片展示器
  3. 记一次VS Code崩溃的解决(Win10扫描自动回复系统文件)
  4. 17. Element dir 属性
  5. 一个GUI程序究竟会有几个线程?
  6. Android开发7——android database CursorIndexOutOfBoundsException
  7. 启动nginx出错:open() /var/run/nginx/nginx.pid failed (2: No such file or directory)
  8. .NetCore源码阅读笔记系列之Security (四) Authentication AddJwtBearer
  9. js获取baseurl
  10. TatukGIS - GisDefs - CanonicalSQLName 函数