父pom文件的</dependencyManagement>与子pom文件中<dependencies>直接的关系

在多module Maven项目中,为统一jar包版本,通常使用父POM的<dependencyManagement>。然而,若子POM明确指定了依赖版本,可能会导致版本冲突。根据文章解析,子POM不应显式指定版本,以免覆盖父POM中的版本控制。未在子POM指定版本的依赖会继承dependencyManagement中的版本。
摘要由CSDN通过智能技术生成

发现一个有点奇怪的问题,我有一个多module的项目,为了控制jar包版本,使用

</dependencyManagement>将jar包版本管理起来
<dependencyManagement>
        <dependencies>          
            <dependency>
                <groupId>com.google.code.gson</groupId>
                <artifactId>gson</artifactId>
                <version>2.8.5</version>
            </dependency>
        </dependencies>
 </dependencyManagement>

可是我发现,子 pom文件中,还是有jar包冲突,后来经过百度https://www.jianshu.com/p/e867ac845e11 这篇文章为我解答了问题

即子类项目中,不能显示的指定版本号,否则将会覆盖

至于原因,看这篇博客https://blog.csdn.net/jiaobuchong/article/details/81842503

pom文件中没有指定版本的依赖或是传递的依赖,如果在dependencyManagement中有指定此依赖版本,那就使用dependencyManagement中定义的版本号。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值