管理依赖版本-maven工程parent项目巧配置

  本文目标:开发人员,在了解pom文件properties、dependencyManagement标签用法的条件下,进行依赖包版本统一维护,达到统一维护项目依赖jar包版本的程度。

1 场景

  maven工程多模块项目,不同项目引用相同包,随着工程体量增大,容易在变更依赖包版本出现遗漏,出现不同模块引用的包版本不同问题。

版本不一致问题
  比如截图例子中,工程包含“mg-fre”、“mg-scr”两个模块,同时在各自的pom文件中,引入“slf4j-api”依赖包,出现版本不一致现象。

2 要点

  在parent项目中,使用“properties”、“dependencyManagement”标签,可以解决该问题。

  “properties”标签用于定义依赖包版本号,“dependencyManagement”标签用于声明引入依赖包时使用的版本。

  parent项目pom文件添加如下内容:

<properties>
    <org.slf4j.version>2.0.8</org.slf4j.version>
</properties>

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-api</artifactId>
            <version>${org.slf4j.version}</version>
        </dependency>
    </dependencies>
</dependencyManagement>

  此时,在真正引入依赖包的位置,删除“version”标签。

  “mg-fre”模块pom文件引入位置修改为:

<dependencies>
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-api</artifactId>
    </dependency>
</dependencies>

  “mg-scr”模块pom文件引入位置修改为:

<dependencies>
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-api</artifactId>
    </dependency>
</dependencies>

  修改后,重新刷新maven依赖,可以看到,不同模块的“slf4j-api”版本已经统一。

版本统一
  后续再变更maven项目依赖包版本时,只需要在parent项目的pom文件中,统一修改“properties”定义的版本号即可,不同模块引入的依赖包版本会统一变更,不会出现版本不一致问题。

3 总结/练习

  本文介绍了在parent项目pom文件中,统一配置依赖包版本的方法。

  可以尝试在自己的项目中,使用“2 要点”章节的方法,进行依赖包版本统一维护,达到统一维护项目依赖jar包版本的效果。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值