java.lang.NoSuchMethodError: javax.persistence.Table.indexes()
在配置hibernate的时候出现了如下错误:
java.lang.NoSuchMethodError: javax.persistence.Table.indexes()
错误原因:
@Table("表名")注解出错。hibernate4中hibernate-jpa-2.0-api.jar和ejb3-persistence.jar相重复,有冲突,删除ejb3-persistence.jar即可。 而hibernate-jpa-2.0-api.jarhibernate-jpa-2.1-api.jar相冲突,只能使用其一,如果你使用了jboss,那么jboss自带hibernate-jpa,你不必再配置。
解决方案:
1.去掉@Table注解,直接将表名写在@Entity注解后,如:@Entity("t_user").但这种方式必须要求表名和实体名相同。
2.查找冲突的jar,去掉多余的jar。
心得:在tomcat 发布的项目中删除多余的lib包,重启运行正常