Spring Boot NoClassDefFoundError: com/mongodb/connection/DefaultClusterFactory

Spring BootMongoDB大约 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>
阅读 33 · 发布于 2020-11-18

————        END        ————

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

昵称:
随便看看换一批