连接MongoDB atlas集群和morphia
我一直在尝试使用将我的kotlin+Ktor应用程序连接到mongodb atlas集群。我已经学习了一些教程,了解如何进行此操作,但每次我都会遇到以下错误:连接MongoDB atlas集群和morphia,mongodb,kotlin,morphia,ktor,Mongodb,Kotlin,Morphia,Ktor,我一直在尝试使用将我的kotlin+Ktor应用程序连接到mongodb atlas集群。我已经学习了一些教程,了解如何进行此操作,但每次我都会遇到以下错误: at com.example.ApplicationKt.main(Application.kt:16) Caused by: java.lang.NoSuchMethodError: 'java.lang.Integer com.mongodb.ConnectionString.getThreadsAllowedToBlockF
at com.example.ApplicationKt.main(Application.kt:16)
Caused by: java.lang.NoSuchMethodError: 'java.lang.Integer com.mongodb.ConnectionString.getThreadsAllowedToBlockForConnectionMultiplier()'
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 com.example.di.ModulesKt$appModules$1.invoke(modules.kt:17)
位于com.example.ApplicationKt.main(Application.kt:16)
原因:java.lang.NoSuchMethodError:'java.lang.Integer.com.mongodb.ConnectionString.getThreadsAllowedToBlockForConnectionMultiplier()'
位于com.mongodb.MongoClientURI.getOptions(MongoClientURI.java:351)
位于com.mongodb.Mongo.createCluster(Mongo.java:724)
位于com.mongodb.Mongo(Mongo.java:312)
位于com.mongodb.Mongo(Mongo.java:308)
位于com.mongodb.MongoClient(MongoClient.java:326)
位于com.example.di.ModulesKt$appModules$1.invoke(modules.kt:17)
问题似乎出在MongoClient试图连接到集群上。下面是我如何尝试创建morphia数据存储:
val uri = MongoClientURI("mongodb+srv://admin:<password>@my-db-1dodp.mongodb.net/test?retryWrites=true&w=majority")
val client = MongoClient(uri)
fun getDB(): Datastore { return Morphia().mapPackage("com.example.ktor").createDatastore(client, "db-name")}
val uri=MongoClientURI(“mongodb+srv://admin:@my-db-1dodp.mongodb.net/test?retryWrites=true&w=majority)
val client=MongoClient(uri)
fun getDB():数据存储{return Morphia().mapPackage(“com.example.ktor”).createDatastore(client,“db name”)}
有什么问题吗?这有帮助吗?这有用吗?