我正在使用Springboot编写批处理,并且在读取阶段使用HibernateItemReaderHelper。我在依赖项中也有hibernate 5.2.x的依赖。在执行过程中,我收到以下错误:
java.lang.NoSuchMethodError: org.hibernate.StatelessSession.createQuery(Ljava /郎/字符串;)Lorg /休眠/查询;
我很惊讶因为在Maven存储库中这是最后一个版本,它与Hibernate 5.1或者更高版本没有兼容性,因为它不会返回org.hibernate.query.Query类的Object,而是org.hibernate.Query。
我遗漏了一些东西才能使用Spring Batch和Hibernate 5.2 ??
提前致谢。
答案 0 :(得分:1)
SpringBatch 3.x不支持Hibernate 5.x.您需要升级到Spring Batch 4才能获得支持。
答案 1 :(得分:0)
正如迈克尔所说,版本4.0.0或更高版本应该可行。在我的情况下使用Spring启动问题是Spring Batch 4.0.0不在标准的Maven存储库中。添加Alfresco存储库解决了我的问题。
<repositories>
<repository>
<id>Alfresco Public</id>
<url>https://artifacts.alfresco.com/nexus/content/repositories/public/</url>
</repository>
</repositories>