You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在不移除父POM的情况下,让子模块采用指定的spring-beans版本?

解决方法

有几种可行的方式实现子模块xxx使用spring-beans 5.3.27版本,同时保留父POM:

方法一:在子模块xxx的依赖中直接指定版本

直接在xxx模块的pom.xml的<dependencies>里声明spring-beans时明确写出版本号,这个指定的版本会覆盖从父POM继承来的版本:

<dependencies>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-beans</artifactId>
        <version>5.3.27</version>
    </dependency>
    <!-- 其他依赖继续保留 -->
</dependencies>

方法二:在当前项目(包含modules的父级子项目)的dependencyManagement中统一覆盖版本

如果希望所有子模块都切换到5.3.27版本,或者想在当前项目层级统一管理这个版本,可以在当前项目的<dependencyManagement>里直接声明spring-beans的版本,这个声明会覆盖父POM中的对应版本:

<dependencyManagement>
    <dependencies>
        <!-- 保留原有的spring-dependencies导入配置 -->
        <dependency>
            <groupId>com.xyz.abc</groupId>
            <artifactId>spring-dependencies</artifactId>
            <version>1.0.0</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
        <!-- 添加该声明覆盖父POM的spring-beans版本 -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-beans</artifactId>
            <version>5.3.27</version>
        </dependency>
    </dependencies>
</dependencyManagement>

方法三:仅在子模块xxx的dependencyManagement中单独指定版本

如果只想让xxx模块使用5.3.27版本,其他子模块保持父POM的版本,可以在xxx模块的<dependencyManagement>里添加版本声明:

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-beans</artifactId>
            <version>5.3.27</version>
        </dependency>
    </dependencies>
</dependencyManagement>

<!-- 之后在dependencies中正常引入,无需再写版本号 -->
<dependencies>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-beans</artifactId>
    </dependency>
</dependencies>

核心原理

Maven依赖管理的优先级规则:

  • 子模块中直接指定的依赖版本优先级最高
  • 子模块的dependencyManagement声明会覆盖从父级继承的声明
  • 当前项目的dependencyManagement声明会覆盖父POM中的对应声明

通过这些规则,就能在不移除父POM的前提下,让xxx模块使用指定的5.3.27版本。

内容的提问来源于stack exchange,提问作者Dhyey Vachhani

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.14 08:01:01