Maven -- <dependencyManagement>管理子项目版本

这篇具有很好参考价值的文章主要介绍了Maven -- <dependencyManagement>管理子项目版本。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

背景:

        一个旧项目,想使用mybatis-plus,想着这是比较基础的依赖包,就在父项目中添加对应依赖,如下:

    <!-- 依赖声明 -->
    <dependencyManagement>
        <dependencies>
            <!-- mybatis-plus 依赖配置 -->
            <dependency>
                <groupId>com.baomidou</groupId>
                <artifactId>mybatis-plus</artifactId>
                <version>3.4.1</version>
            </dependency>
            <dependency>
                <groupId>com.baomidou</groupId>
                <artifactId>mybatis-plus-boot-starter</artifactId>
                <version>3.4.1</version>
                <exclusions>
                    <exclusion>
                        <groupId>com.baomidou</groupId>
                        <artifactId>mybatis-plus-generator</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
        </dependencies>
    </dependencyManagement>

        然后我就发现,子项目还是没有对应的jar包,maven 重新加载也没用,后面我看了下项目包含的jar包,发现也没有上面我父项目依赖的包。

原因:

        原来父项目中 <dependencyManagement> 标签下依赖的jar包,是不会加人到项目中取的,这个标签的作用是定义公共依赖的版本号,比如我定义了mybatis-plus 的版本为3.4.1,那如果子项目中需要使用mybatis-plus ,导入依赖时就不需要输入版本号了,如下:

    <dependencies>
        <!-- mybatis-plus 依赖配置 -->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus</artifactId>
        </dependency>
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <exclusions>
                <exclusion>
                    <groupId>com.baomidou</groupId>
                    <artifactId>mybatis-plus-generator</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
    </dependencies>

        对应的依赖包就会导入到项目,版本号会默认使用父项目pom.xml文件中的版本号3.4.1

Maven -- <dependencyManagement>管理子项目版本,maven,java

Maven -- <dependencyManagement>管理子项目版本,maven,java

         

        这样的好处是,如果一个项目子项目众多,很多基本的依赖都需要,redis,数据库,中间件,http,nacos之类的,如果每个子项目都自己定义版本号,首先不好维护,其次不同版本直接的通讯也容易出问题,所以这类基础包都可以放到父项目,统一版本控制,这样就算是要修改其中哪个依赖的版本,也很容易文章来源地址https://www.toymoban.com/news/detail-562961.html

到了这里,关于Maven -- <dependencyManagement>管理子项目版本的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【移动端网页布局】flex 弹性布局子项目属性 ① ( flex 属性用法说明 | 代码示例 : 占有剩余布局 / 平均分成若干等份 )

    flex 子项目 的常用属性 : flex 属性 : flex 子项目 在 flex 父容器 中 占有的 份数比例 , 如果都设置 1 , 那么将对应尺寸平分即可 ; align-self 属性 : 控制 flex 子项目 在 侧轴 的排列方式 ; order 属性 : 控制 flex 子项目 的排列顺序 ; 主要是修改前后顺序 , 原来是 1 - 2 - 3 排列顺序 , 可以

    2024年02月09日
    浏览(54)
  • 【Maven】<dependencyManagement>详解

    dependencyManagement 元素是 Maven POM 文件中的一个非常重要的元素,它用于集中管理项目中所有模块的依赖项版本,允许您在父 POM 中定义依赖版本,然后在子模块中引用这些版本而不需要显式指定版本号。这可以大大减少维护成本,确保在整个项目中使用一致的依赖版本。 以下

    2024年02月05日
    浏览(37)
  • Maven多模块项目版本统一管理

    如图所示,项目中定义了这样几个模块: pdd-workflow-build :定义项目版本,及全局配置 pdd-workflow-dependencies :外部依赖管理,统一管理所有用到的外部依赖的版本 pdd-workflow-service :项目service模块 pdd-workflow-web :项目web模块 pdd-parent :聚合模块 模块之间的继承依赖关系如下图

    2024年02月05日
    浏览(50)
  • 构建一个最新版本 Maven 项目

    截止 2024 年 1 月 13 日,Apache 官网上 Maven 的 最新安全版本 为 3.9.6, 下载、安装及配置方法 见之前的博客:点此进入 注意 :官网提示 Maven 4.x 目前正在开发中,对于生产使用来说是不安全的。 IntelliJ IDEA 版本 :2022.1.3 JDK 版本 :17 和 21,下载和切换方法点此进入 Maven 版本

    2024年02月02日
    浏览(49)
  • 笔记本Windows10电源管理内的处理器电源管理子项相关

    本文记录及解决的问题: 最大化笔记本的使用时长(无外接电源情况下)(Apple用户请绕步) 处理器电源管理内没有 系统散热方式 选项 如何调出处理器电源管理内隐藏的选项 没有 处理器电源管理 选项怎么办 记录关于注册表内处理器电源管理选项GUID对应的中文选项 To be

    2024年02月03日
    浏览(62)
  • Git 与 Maven:企业级版本管理与版本控制规范设计

    当今,许多开发人员熟悉 GitFlow 工作流程,但往往忽略了 GitFlow 如何与 Maven 版本控制结合,尤其是在管理 snapshot 和 release 版本时的最佳实践。本文旨在整合 GitFlow 工作流程与 Maven 版本管理,提出一个统一的企业级规范,以供开发人员参考。 GitFlow 是一种流行的分支管理模型

    2024年02月04日
    浏览(48)
  • maven项目install报错,jdk版本不一致

    maven 项目install时报错org/springframework/boot/maven/RepackageMojo has been compiled by a more recent version of the Java Runtime(class file version 61.0),this of the Java Runtime only recognizes class file vesions up to 52.0 1.错误信息: maven 项目install时报错org/springframework/boot/maven/RepackageMojo has been compiled by a more recen

    2024年02月08日
    浏览(36)
  • 【SpringBoot】Maven 版本管理与 flatten-maven-plugin 插件的使用及分析

    IntelliJ IDEA 2021.3 JDK 1.8.0_301 Apache Maven 3.8.1 org.codehaus.mojo:versions-maven-plugin 1.2.7 https://www.mojohaus.org/flatten-maven-plugin/ 自 Maven 3.5.0-beta-1 开始,可以使用 ${revision}, ${sha1} and/or ${changelist} 这样的变量作为版本占位符。 像这样: 或者像这样: 可以使用这样的命令: 缺点: Install / D

    2024年02月12日
    浏览(43)
  • 【java】maven 指定项目编译与打包的JDK版本

    Maven 是一个流行的构建工具,用于管理 Java 项目的依赖项、构建和部署。在 Maven 中,可以指定项目的编译和打包所使用的 JDK 版本。本篇博客将介绍如何在 Maven 中指定项目的 JDK 版本,并讨论该选项对项目的影响。 在 Maven 中,可以通过在 pom.xml 文件中设置 maven.compiler.source

    2024年02月16日
    浏览(40)
  • idea 2023.3.2版本如何创建新的maven项目

    1.首先点击new--project  2.填写相关项目名,存放的地址等  3.创建后的效果 4.添加maven依赖,若依赖一直下载不下来,注意在setting中配置一下maven(根据自己的情况配置)以及jdk等     根据自己的实际安装地址,进行maven相关配置 配置jdk  配置jre 5.创建下的maven项目没有Resour

    2024年02月15日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包