首页 > 解决方案 > 在 Java 上连接到 MongoDB 的问题

问题描述

我在 Java 中的 MongoDB 有问题。我无法连接到它我总是遇到异常并且无法解决它。我为此使用 Maven 依赖项。我尝试使用其他版本的依赖项。

我还检查了 MongoDB 是否正在运行。我从net start MongoDB 开始。我的代码:

import com.mongodb.MongoClient;
import com.mongodb.MongoClientURI;

public class MongoDBTest {

    public static void main(String[] args) throws Exception {
        MongoClient mongoClient = new MongoClient(new MongoClientURI("mongodb://127.0.0.1:27017"));
    }

}

我的依赖:

<dependency>
    <groupId>org.mongodb</groupId>
    <artifactId>mongo-java-driver</artifactId>
    <version>3.10.0</version>
</dependency>

我得到的例外是:

Exception in thread "main" java.lang.NoSuchMethodError: com.mongodb.ConnectionString.getThreadsAllowedToBlockForConnectionMultiplier()Ljava/lang/Integer;
at com.mongodb.MongoClientURI.getOptions(MongoClientURI.java:351)
at com.mongodb.Mongo.createCluster(Mongo.java:724)
at com.mongodb.Mongo.<init>(Mongo.java:312)
at com.mongodb.Mongo.<init>(Mongo.java:308)
at com.mongodb.MongoClient.<init>(MongoClient.java:326)
at schlueting.arbeiten.MongoDBTest.main(MongoDBTest.java:9)

标签: javamongodbmaven

解决方案


解决方案是将以下内容添加到 Maven 依赖项中:

<dependency>
    <groupId>org.mongodb</groupId>
    <artifactId>mongodb-driver-sync</artifactId>
    <version>3.10.1</version>
</dependency>

这修复了异常,我可以连接到 MavenDB。

顺便提一句。我使用的是 MongoDB 4.4 和 JDK 11。


推荐阅读