这篇文章主要介绍了mvn中dependencyManagement的使用,子项目中只是声明使用此依赖即可,可不用指定版本(将使用父pom同一指定的版本),若指定了版本,将以子项目的版本号为主,需要的朋友可以参考下
dependencyManagement一般出现在最顶层父工程的pom文件中,它的作用是用来管理jar版本,让子项目引用一个依赖而不用指明版本号。Maven会沿着父子层次向上走,直到找到一个拥有dependencyManagement元素的项目,然后使用在dependencyManagement元素中指定的版本号。下面以若依微服务框架中的一处应用为例进行说明。父pom文件中对于分布式文件系统的依赖声明如下:
<properties><tobato.version>1.26.5</tobato.version>
</properties>
<!-- 依赖声明 -->
<dependencyManagement>
<dependencies>
<!-- FastDFS 分布式文件系统 -->
<dependency>
<groupId>com.github.tobato</groupId>
<artifactId>fastdfs-client</artifactId>
<version>${tobato.version}</version>
</dependency>
</dependencies>
</dependencyManagement>
需要用到分布式文件系统的子项目的pom声明如下:
<dependencies>
<!-- FastDFS -->
<dependency>
<groupId>com.github.tobato</groupId>
<artifactId>fastdfs-client</artifactId>
</dependency>
</dependencies>
子项目中只是声明使用此依赖即可,可不用指定版本(将使用父pom同一指定的版本),若指定了版本,将以子项目的版本号为主。
总结:
可统一管理依赖的版本号,防止各项目对同一依赖声明多个版本,想切换到另一个版本时,只需要在父类容器里修改即可。
注意:
dependencyManagement 声明的依赖并没有被导入项目,必须在子项目再次声明才会真正导入jar包。
到此这篇关于mvn中dependencyManagement的使用的文章就介绍到这了,更多相关dependencyManagement使用内容请搜索编程学习网以前的文章希望大家以后多多支持编程学习网!
本文标题为:mvn中dependencyManagement的使用详解


基础教程推荐
- 存储 20 位数字的数据类型 2022-01-01
- 如何对 Java Hashmap 中的值求和 2022-01-01
- REST Web 服务返回 415 - 不支持的媒体类型 2022-01-01
- 修改 void 函数的输入参数,然后读取 2022-01-01
- Spring AOP错误无法懒惰地为此建议构建thisJoinPoin 2022-09-13
- 无法复制:“比较方法违反了它的一般约定!" 2022-01-01
- Struts2 URL 无法访问 2022-01-01
- 使用堆栈算法进行括号/括号匹配 2022-01-01
- 问题http://apache.org/xml/features/xinclude测试日志4j 2 2022-01-01
- RabbitMQ:消息保持“未确认"; 2022-01-01