gpt4 book ai didi

java - 无法从 eclipse java 连接到 mongo db 并且我没有使用 Maven/Gradle

转载 作者:行者123 更新时间:2023-12-02 11:42:20 25 4
gpt4 key购买 nike

我有一个简单的 java 程序,它尝试连接到我唯一的 mongodb 本地实例,并且我想插入一些数据。运行代码时我有这些引用的 jar 文件:

 - C:\Users\olgad\Downloads\jsoup-1.11.2.jar
- C:\Users\olgad\Downloads\mongodb-driver-3.6.1.jar
- C:\Users\olgad\Downloads\bson-3.0.4.jar
- C:\Users\olgad\Downloads\java-json.jar\java-json.jar
- C:\Users\olgad\Downloads\mongo-java-driver-2.9.1.jar\mongo-java-driver-2.9.1.jar
- C:\Users\olgad\Downloads\mongodb-driver-core-3.0.1.jar

我的mongodb版本是3.4.10

public class Main {
public static void main(String[] args) throws IOException {
try {
MongoClient mongoClient = new MongoClient("localhost",27017);

DB database = (DB) mongoClient.getDatabase("test");
DBCollection collection = database.getCollection("myCol");

DBObject dbObject = (BasicDBObject) JSONObject.stringToValue("{'name':'mkyong', 'age':30}");
collection.insert(dbObject);
} catch(Exception ex) {
// Prints what exception has been thrown
System.out.println(ex.getMessage());
}
}
}

打印的错误是:

Exception in thread "main" java.lang.NoClassDefFoundError: com/mongodb/DBRefCodecProvider at com.mongodb.MongoClient.(MongoClient.java:89) at prvCrawler.Main.main(Main.java:30)

提前致谢!奥尔加

最佳答案

您有太多包含冲突软件包的 jar。首先删除所有 mongodb 相关的 jar 并重新开始。

您有两个选择:

手动下载 jar(使用以下选项之一)。对所有 jar 使用相同的版本。

  1. 下载mongo-java-driver uber jar其中包含打包为一个的所有必需的库。

  2. 单独下载 jar( mongodb-drivermongodb-driver-corebson )。

使用Maven/Gradle用于下载 jars。

关于java - 无法从 eclipse java 连接到 mongo db 并且我没有使用 Maven/Gradle,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48462014/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com