Подключение кластера атласа MongoDB с morphia - PullRequest
0 голосов
/ 05 мая 2020

Я пытался подключить свое приложение kotlin + Ktor к кластеру атласа mongodb, используя morphia . Я выполнил несколько руководств о том, как это сделать, но каждый раз получаю эту ошибку:

    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)

Кажется, проблема в MongoClient, пытающемся подключиться к кластеру. Ниже показано, как я пытаюсь создать хранилище данных морфии:

    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")}

В чем может быть проблема?

...