Java OpenResty Spring Spring Boot MySQL Redis MongoDB PostgreSQL Linux Android Nginx 面试 小程序 Arthas JVM AQS juc Kubernetes Docker 诊断工具


Spring Boot NoClassDefFoundError: com/mongodb/connection/DefaultClusterFactory

Spring Boot MongoDB 大约 1460 字

问题

Spring Boot 2.3.0中使用mongodb-driver-sync 3.8.0版本时,出现了DefaultClusterFactory类找不到异常。

排查

使用MavenDependency Analyzer依赖分析发现:依赖包中mongodb-driver-corebson都自动下载了4.0.3最新版本,与mongodb-driver-sync版本不一致。

解决

  1. 移出mongodb-driver-sync中的mongodb-driver-corebson依赖。
  2. 添加mongodb-driver-core3.8.0版本,并且移出它所依赖的bson包。
  3. 添加bson3.8.0版本。

pom

<dependency>
    <groupId>org.mongodb</groupId>
    <artifactId>mongodb-driver-sync</artifactId>
    <version>3.8.0</version>
    <exclusions>
        <exclusion>
            <groupId>org.mongodb</groupId>
            <artifactId>mongodb-driver-core</artifactId>
        </exclusion>
        <exclusion>
            <groupId>org.mongodb</groupId>
            <artifactId>bson</artifactId>
        </exclusion>
    </exclusions>
</dependency>

<dependency>
    <groupId>org.mongodb</groupId>
    <artifactId>mongodb-driver-core</artifactId>
    <version>3.8.0</version>
    <exclusions>
        <exclusion>
            <groupId>org.mongodb</groupId>
            <artifactId>bson</artifactId>
        </exclusion>
    </exclusions>
</dependency>

<dependency>
    <groupId>org.mongodb</groupId>
    <artifactId>bson</artifactId>
    <version>3.8.0</version>
</dependency>
阅读 5612 · 发布于 2020-11-18

————        END        ————

Give me a Star, Thanks:)

https://github.com/fendoudebb

扫描下方二维码关注公众号和小程序↓↓↓

扫描二维码关注我
昵称:
随便看看 换一批