Hazelcast异常与Hazelcast-hibernate5

Hazelcast异常与Hazelcast-hibernate5,hazelcast,hibernate-ogm,Hazelcast,Hibernate Ogm,我使用的是Hibernate OGM 5.1.0.Final和hazelcast-hibernate5 1.1.3(甚至用1.2检查)。与OGM兼容的hibernate ORM依赖关系是5.1.5,它存在于POM中 Caused by: java.lang.IncompatibleClassChangeError: Expected static method org.hibernate.cache.internal.DefaultCacheKeysFactory.createEntityKey

我使用的是Hibernate OGM 5.1.0.Final和hazelcast-hibernate5 1.1.3(甚至用1.2检查)。与OGM兼容的hibernate ORM依赖关系是5.1.5,它存在于POM中

Caused by: java.lang.IncompatibleClassChangeError: Expected static method org.hibernate.cache.internal.DefaultCacheKeysFactory.createEntityKey(Ljava/lang/Object;Lorg/hibernate/persister/entity/EntityPersister;Lorg/hibernate/engine/spi/SessionFactoryIm
    at com.hazelcast.hibernate.region.EntityRegionAccessStrategyAdapter.generateCacheKey(EntityRegionAccessStrategyAdapter.java:66)
    at org.hibernate.engine.internal.TwoPhaseLoad.doInitializeEntity(TwoPhaseLoad.java:198)
    at org.hibernate.engine.internal.TwoPhaseLoad.initializeEntity(TwoPhaseLoad.java:125)
    at org.hibernate.ogm.loader.impl.OgmLoader.initializeEntitiesAndCollections(OgmLoader.java:807)
    at org.hibernate.ogm.loader.impl.OgmLoader.doQuery(OgmLoader.java:393)
    at org.hibernate.ogm.loader.impl.OgmLoader.doQueryAndInitializeNonLazyCollections(OgmLoader.java:283)
    at org.hibernate.ogm.loader.impl.OgmLoader.loadEntity(OgmLoader.java:201)
    at org.hibernate.ogm.loader.impl.OgmLoader.loadEntitiesFromTuples(OgmLoader.java:220)
    at org.hibernate.ogm.loader.entity.impl.DynamicBatchingEntityLoaderBuilder$DynamicBatchingEntityLoader.loadEntitiesFromTuples(DynamicBatchingEntityLoaderBuilder.java:127)
    at org.hibernate.ogm.query.impl.OgmQueryLoader.listOfEntities(OgmQueryLoader.java:92)
    at org.hibernate.ogm.query.impl.OgmQueryLoader.list(OgmQueryLoader.java:78)
    at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:501)
    at org.hibernate.ogm.query.impl.OgmQueryTranslator.list(OgmQueryTranslator.java:129)
    at org.hibernate.engine.query.spi.HQLQueryPlan.performList(HQLQueryPlan.java:216)
    at org.hibernate.internal.SessionImpl.list(SessionImpl.java:1339)
    at org.hibernate.internal.QueryImpl.list(QueryImpl.java:87)
    at org.hibernate.jpa.internal.QueryImpl.list(QueryImpl.java:606)
    at org.hibernate.jpa.internal.QueryImpl.getResultList(QueryImpl.java:483)
    at com.olp.jpa.common.AbstractRepositoryImpl.findAll(AbstractRepositoryImpl.java:137)

这个问题看起来与这里报道的类似,但是我不能将ORM升级到5.2,因为OGM还不支持它。请建议是否有此问题的解决方案/解决方法。
hazelcast-hibernate5的版本
1.1.3
1.2
取决于Hibernate版本
5.0.9。最终版本
。您可能需要在Maven配置中排除这一点,并自己用版本
5.1.5
声明Hibernate依赖关系

更新
似乎hazelcast-hibernate5不支持Hibernate
5.1.5
。因此,我修改了hazelcast-hibernate5
code以支持Hibernate
5.1.5
,并发布了一个自定义版本,可以找到。请注意,这在Maven central上不可用,也不是插件的正式版本,只是一个快速更改,以支持适用于您的用例的Hibernate
5.1.5
。这意味着您必须首先将其安装到本地Maven存储库中(或者将JAR直接嵌入到您的项目中)。您可以看到我为检查代码或自己从源代码构建而做的更改。
hazelcast-hibernate5
的版本
1.1.3
1.2
取决于Hibernate版本
5.0.9。最终版
。您可能需要在Maven配置中排除这一点,并自己用版本
5.1.5
声明Hibernate依赖关系

更新
似乎hazelcast-hibernate5不支持Hibernate
5.1.5
。因此,我修改了hazelcast-hibernate5
code以支持Hibernate
5.1.5
,并发布了一个自定义版本,可以找到。请注意,这在Maven central上不可用,也不是插件的正式版本,只是一个快速更改,以支持适用于您的用例的Hibernate
5.1.5
。这意味着您必须首先将其安装到本地Maven存储库中(或者将JAR直接嵌入到您的项目中)。您可以看到我在检查代码时所做的更改,也可以自己从源代码构建。

hazelcast-hibernate5的版本1.1.3和1.2
取决于Hibernate版本
5.0.9.Final
。您可能需要在Maven配置中排除这一点,并自己用版本5.1.5声明Hibernate依赖关系。
hazelcast-hibernate5的版本1.1.3和1.2取决于Hibernate版本
5.0.9.Final
。您可能需要在Maven配置中排除这一点,并在5.1.5版中声明Hibernate依赖关系。谢谢您。这就是我所做的——com.hazelcast-hazelcast-hibernate5 org.hibernate hibernate核心和hibernate依赖项——org.hibernate hibernate核心5.1.5.最终结果仍然是相同的问题。这和你的建议不一样吗?@Rajesh这正是我的建议。这是第一件要确定的事情。现在我们已经讨论了这个问题,我将对此进行更深入的研究。我将立即尝试分支修复,并用我的发现进行更新。非常感谢。@Rajesh你试过修复吗?谢谢Emre。这就是我所做的——com.hazelcast-hazelcast-hibernate5 org.hibernate hibernate核心和hibernate依赖项——org.hibernate hibernate核心5.1.5.最终结果仍然是相同的问题。这和你的建议不一样吗?@Rajesh这正是我的建议。这是第一件要确定的事情。现在我们已经讨论了这个问题,我将对此进行更深入的研究。我将立即尝试分支修复,并用我的发现进行更新。非常感谢。@Rajesh你试过修复吗?