从 Hibernate OGM 迁移到 'Morphia'
Migrating to 'Morphia' from Hibernate OGM
我使用 Hibernate ORM 和 OGM 运行ning MongoDB (5.0.7) 已经很多年了。当前使用“org.mongodb:mongodb-driver-core:4.6.0”。 (2022.04.26)
使用 WildFly 26.1.0.Final(Jakarta EE 8 Full)和 OpenJDK 18.0.1。 IntelliJ IDEA 2022.1,Gradle 7.4.2 和 macOS Monterey 12.3.1。
我需要迁移到 Jakarta 9。请参阅“Hibernate OGM 无法与 ORM 5.5 一起使用(最新版本需要 ORM 5.3)。”在:
How to use Hibernate ORM 5.5.x.Final with Jakarta 9 on wildfly-preview-25.0.0.Final
我正在考虑使用 ODM 'Morphia 2.2.6' (dev.morphia.morphia:morphia-core:2.2.6) 并尝试 运行 'morphia/example/QuickTour.java':
它可以编译,但是当我尝试 & 运行 时,我得到:
Exception in thread "main" java.lang.NoSuchMethodError: 'java.lang.String com.mongodb.connection.ClusterSettings.getDescription()'
at com.mongodb.connection.DefaultClusterFactory.createCluster(DefaultClusterFactory.java:179)
at com.mongodb.client.internal.MongoClientImpl.createCluster(MongoClientImpl.java:190)
at com.mongodb.client.internal.MongoClientImpl.<init>(MongoClientImpl.java:57)
at com.mongodb.client.MongoClients.create(MongoClients.java:112)
at com.mongodb.client.MongoClients.create(MongoClients.java:99)
at com.mongodb.client.MongoClients.create(MongoClients.java:83)
at com.mongodb.client.MongoClients.create(MongoClients.java:40)
at dev.morphia.example.QuickTour.main(QuickTour.java:23)
也尝试过:
final Datastore datastore = Morphia.createDatastore(MongoClients.create("mongodb://localhost:27017"), "morphia_example");
有什么建议吗? TIA.
您使用的是什么版本的驱动程序? 4.2.x是目前正在测试的最早版本
“小学生错误”- 没有添加到 Gradle:
"implementation group: "org.mongodb", name: "mongo-java-driver", version: "3.12.10"
所以 IntelliJ 'run' 失败了。抱歉!
我使用 Hibernate ORM 和 OGM 运行ning MongoDB (5.0.7) 已经很多年了。当前使用“org.mongodb:mongodb-driver-core:4.6.0”。 (2022.04.26)
使用 WildFly 26.1.0.Final(Jakarta EE 8 Full)和 OpenJDK 18.0.1。 IntelliJ IDEA 2022.1,Gradle 7.4.2 和 macOS Monterey 12.3.1。
我需要迁移到 Jakarta 9。请参阅“Hibernate OGM 无法与 ORM 5.5 一起使用(最新版本需要 ORM 5.3)。”在: How to use Hibernate ORM 5.5.x.Final with Jakarta 9 on wildfly-preview-25.0.0.Final
我正在考虑使用 ODM 'Morphia 2.2.6' (dev.morphia.morphia:morphia-core:2.2.6) 并尝试 运行 'morphia/example/QuickTour.java':
它可以编译,但是当我尝试 & 运行 时,我得到:
Exception in thread "main" java.lang.NoSuchMethodError: 'java.lang.String com.mongodb.connection.ClusterSettings.getDescription()'
at com.mongodb.connection.DefaultClusterFactory.createCluster(DefaultClusterFactory.java:179)
at com.mongodb.client.internal.MongoClientImpl.createCluster(MongoClientImpl.java:190)
at com.mongodb.client.internal.MongoClientImpl.<init>(MongoClientImpl.java:57)
at com.mongodb.client.MongoClients.create(MongoClients.java:112)
at com.mongodb.client.MongoClients.create(MongoClients.java:99)
at com.mongodb.client.MongoClients.create(MongoClients.java:83)
at com.mongodb.client.MongoClients.create(MongoClients.java:40)
at dev.morphia.example.QuickTour.main(QuickTour.java:23)
也尝试过:
final Datastore datastore = Morphia.createDatastore(MongoClients.create("mongodb://localhost:27017"), "morphia_example");
有什么建议吗? TIA.
您使用的是什么版本的驱动程序? 4.2.x是目前正在测试的最早版本
“小学生错误”- 没有添加到 Gradle:
"implementation group: "org.mongodb", name: "mongo-java-driver", version: "3.12.10"
所以 IntelliJ 'run' 失败了。抱歉!