[英]MongoDB java driver: Exception in thread “main” java.lang.NoClassDefFoundError: com/mongodb/MongoClient
[英]Exception in thread "main" java.lang.NoClassDefFoundError: com/mongodb/operation/ReadOperation
我正在開發一個數據庫項目,下面的這個 class 實例化代碼似乎失敗了。 我似乎無法弄清楚為什么。 我確保運行 mongod 並啟動 MongoDB。 有沒有人有關於如何解決這個問題的任何提示?
public DatabaseInterface() {
this.mongoClient = new MongoClient("127.0.0.1", 27017); ## This line
this.database = mongoClient.getDatabase("dbmsProjectDB");
this.gson = new Gson();
}
Exception in thread "main" java.lang.NoClassDefFoundError: com/mongodb/operation/ReadOperation
at backend.DatabaseInterface.<init>(DatabaseInterface.java:54)
at backend.main.main(main.java:8)
Caused by: java.lang.ClassNotFoundException: com.mongodb.operation.ReadOperation
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:606)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:168)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522)
... 2 more
改用MongoClients.create(uri)
String uri = "mongodb://localhost";
MongoClient mongoClient = MongoClients.create(uri);
MongoDatabase database = mongoClient.getDatabase("dbmsProjectDB");
該消息告訴您他無法找到 class com.mongodb.operation.ReadOperation
。 這意味着此 class 在此位置不再可用。
將您的 MongoDb Java Driver
的版本升級到4.XX
版本。 從這些版本開始, ReadOperation
class 的路徑已更改為另一個位置: com.mongodb.internal.operation.ReadOperation
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.