错误:java.lang.NoSuchMethodError: javax.persistence.Table.indexes()[Ljavax/persistence/Index

1.问题描述

今天在公司给旧项目升级,从Spring2.5+Hibernate3升级到Spring4.3.13+Hibernate4.3.11,升级过程中遇到了一些问题。

其中就出现了错误java.lang.NoSuchMethodError: javax.persistence.Table.indexes()[Ljavax/persistence/Index

2.解决方法

在网上说是因为需要将旧的jpa升级为2.1版本的,于是我将自己的jpa升级成了2.1(hibernate-jpa-2.1-api-1.0.0.Final),很遗憾的是我的问题并非是因为这个原因,而且我特意看了2.1版本的Table类中的indexes()方法,发现该方法确实存在,但项目依然报找不到该方法的错误。一时间不知道该如何处理,后来又经过多方查找,发现了关键词jar包冲突。于是我在本项目中寻找,忽然发现ejb3-persistence-1.0.2.GA.jar中的内容和hibernate-jpa-2.1-api-1.0.0.Final几乎一样,从而发现了这两个jar包冲突。于是删除ejb3-persistence-1.0.2.GA.jar后问题得到解决

你可能感兴趣的:(SSH整合,Hibernate框架,Spring)