繁体   English   中英

mongodb Java Driver build error: cannot access com.mongodb.client.result.InsertOneResult, class file not found

[英]mongodb Java Driver build error : cannot access com.mongodb.client.result.InsertOneResult, class file not found

我正在关注最新 (4.2.2) Mongodb Java 驱动程序的安装和快速入门 我收到此编译错误:

Error:(29, 29) java: cannot access com.mongodb.client.result.InsertOneResult class file for com.mongodb.client.result.InsertOneResult not found

这是一个更大项目的一部分,所以 class 路径上的某个地方是否有另一个版本的 mongo?
只有一个 pom,就是这个,直接来自安装页面:

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

我正在使用 IntelliJ,它是 mongo 的外部依赖项,它有这些:

org.mongodb:bson:3.8.2
org.mongodb:mongodb-driver-core:3.8.2
org.mongodb:mongodb-driver-sync:4.2.2

这是代码:

import com.mongodb.client.MongoClient;
import com.mongodb.client.MongoClients;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoDatabase;
import org.bson.Document;

import java.util.Arrays;

public class MongoTest {

    public static void main(String[] args) {
        MongoTest mongoTest = new MongoTest();
        mongoTest.init();
    }

    public void init() {
        MongoClient mongoClient = MongoClients.create("mongodb://localhost:27017");
        MongoDatabase myTestDb = mongoClient.getDatabase("myTestDb");
        MongoCollection<Document> collection = myTestDb.getCollection("test");

        Document doc = new Document("name", "MongoDB")
                .append("type", "database")
                .append("count", 1)
                .append("versions", Arrays.asList("v3.2", "v3.0", "v2.6"))
                .append("info", new Document("x", 203).append("y", 102));

        collection.insertOne(doc);
    }
}

您需要所有三个依赖项,但它们都应该是相同的版本,例如

  • org.mongodb:bson:4.2.2
  • org.mongodb:mongodb-driver-core:4.2.2
  • org.mongodb:mongodb-driver-sync:4.2.2

如果你只依赖 mongodb-driver-sync,其他的应该被传递。 但听起来某处存在冲突,导致您选择旧版本的 bson 和 mongodb-driver-core。 您将需要确定冲突的来源并解决它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM