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

如何查找Maven中间接引入mongodb-driver的依赖并升级版本

异常根因说明

这个报错是因为mongodb-driver从3.5版本开始重构了连接池配置API,移除了原有的ConnectionPoolSettings$Builder.maxWaitQueueSize(int)方法,项目中引入的3.2.2版本和上层依赖要求的高版本API不匹配导致的。

定位间接引入低版本mongodb-driver的方法
  • 命令行查询:在项目根目录执行Maven命令 mvn dependency:tree -Dincludes=org.mongodb:mongodb-driver,输出结果会以树形结构展示该依赖的完整引入路径,直接就能看到是哪个上游依赖间接引入了低版本的mongodb-driver。
  • IDE工具查询:IDEA用户可以打开pom.xml文件,点击底部的「Dependency Analyzer」标签,在搜索框输入mongodb-driver,就能直观看到所有引入该依赖的上游组件,还能直接识别版本冲突;Eclipse用户安装Maven Helper插件后可以实现相同功能。
强制使用高版本mongodb-driver的方案

方案1:直接显式声明依赖(最简方案)

Maven遵循「依赖路径最近优先」规则,直接在pom.xml的<dependencies>节点中声明你需要的高版本mongodb-driver,就会自动覆盖所有间接引入的低版本:

<dependency>
    <groupId>org.mongodb</groupId>
    <artifactId>mongodb-driver</artifactId>
    <version>3.12.14</version> <!-- 可按需选择3.5以上的稳定版本,3.12.x是官方长期维护版本 -->
</dependency>

方案2:dependencyManagement统一管控版本(推荐Spring Boot/多模块项目使用)

在pom.xml的<dependencyManagement>节点中统一声明mongodb全系列依赖的版本,所有间接依赖都会自动对齐这个版本,避免后续出现相关子依赖版本不一致的问题:

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.mongodb</groupId>
            <artifactId>mongodb-driver</artifactId>
            <version>3.12.14</version>
        </dependency>
        <dependency>
            <groupId>org.mongodb</groupId>
            <artifactId>mongodb-driver-core</artifactId>
            <version>3.12.14</version>
        </dependency>
        <dependency>
            <groupId>org.mongodb</groupId>
            <artifactId>bson</artifactId>
            <version>3.12.14</version>
        </dependency>
    </dependencies>
</dependencyManagement>

方案3:排除指定上游依赖的低版本mongodb-driver

如果你已经定位到具体引入低版本依赖的上游组件,可以通过exclusion标签排除该组件自带的mongodb-driver,之后组件会自动使用项目中统一的高版本:

<!-- 示例为排除spring-boot-starter-data-mongodb自带的mongodb-driver,可替换为你定位到的实际上游依赖 -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-mongodb</artifactId>
    <exclusions>
        <exclusion>
            <groupId>org.mongodb</groupId>
            <artifactId>mongodb-driver</artifactId>
        </exclusion>
    </exclusions>
</dependency>

修改完成后可以重新执行mvn dependency:tree -Dincludes=org.mongodb:mongodb-driver确认版本已经升级到指定的高版本即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.07 04:39:03