Java Hibernate二级缓存问题
我试图在JavaSpringBookAPI中启用二级缓存。应用程序运行正常,但单元测试因以下错误而失败:Java Hibernate二级缓存问题,java,hibernate,maven,spring-boot,ehcache,Java,Hibernate,Maven,Spring Boot,Ehcache,我试图在JavaSpringBookAPI中启用二级缓存。应用程序运行正常,但单元测试因以下错误而失败: java.lang.IncompatibleClassChangeError: Expected static method org.hibernate.cache.internal.DefaultCacheKeysFactory.createEntityKey(Ljava/lang/Object;Lorg/hibernate/persister/entity/EntityPersister
java.lang.IncompatibleClassChangeError: Expected static method org.hibernate.cache.internal.DefaultCacheKeysFactory.createEntityKey(Ljava/lang/Object;Lorg/hibernate/persister/entity/EntityPersister;Lorg/hibernate/engine/spi/SessionFactoryI
我的pom.xml看起来像:
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.3.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<dependencies>
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<scope>test</scope>
<version>1.4.195</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-ehcache</artifactId>
<version>5.1.0.Final</version>
</dependency>
...
</dependencies>
您是否验证了您的应用程序使用的
hibernate-core
和hibernate-entitymanager
版本与您的hibernate-ehcache
版本相同?您是否验证了您的应用程序使用的hibernate-core
和hibernate-entitymanager
版本与您的应用程序相同休眠ehcache
?
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.H2Dialect
spring.jpa.properties.hibernate.cache.use_second_level_cache=true
spring.jpa.properties.hibernate.cache.provider_class=org.hibernate.cache.EhCacheProvider
spring.jpa.properties.hibernate.hibernate.cache.region.factory_class=org.hibernate.cache.ehcache.SingletonEhCacheRegionFactory