0
我写我的第一个Hibernate项目完全一样一样的我的老师没有,但我得到这个异常:java.lang.NoSuchMethodError:javax.persistence.Table.indexes()[Ljavax/persistence/Index;
> Exception in thread "main" java.lang.ExceptionInInitializerError
> Caused by: javax.persistence.PersistenceException: No Persistence
> provider for EntityManager named Sharif: Provider named
> org.hibernate.jpa.HibernatePersistenceProvider threw unexpected
> exception at create EntityManagerFactory: java.lang.NoSuchMethodError
> java.lang.NoSuchMethodError:
> javax.persistence.Table.indexes()[Ljavax/persistence/Index;
,我在persistence.xml文件中写道持久性单元名称
<persistence-unit name="Sharif" transaction-type="RESOURCE_LOCAL">
<provider>org.hibernate.jpa.HibernatePersistenceProvider</provider>
,我也在我的实体类中使用实体注释(Person) 我检查几乎所有与我的问题有关的问题,但我无法解决它。 项目依赖:
[没有提供给EntityManager的持久性提供者的可能的副本](https://stackoverflow.com/questions/1158159/no-persistence-provider-for-entitymanager-named) – Jakob
错误消息说'Provider named > org .hibernate.jpa.HibernatePersistenceProvider抛出意外的';这导致我相信提供者被正确地指定了,并且问题在其他地方。 我敢打赌,你的类路径中存在冲突的hibernate/jpa提供者版本。你可以显示你所有的项目依赖项列表吗? – Andrei
@Jakob,这不是你提到的问题的重复。至多,我认为这是一个重复/轻微变化的这一个: https://stackoverflow.com/questions/20734540/nosuchmethoderror-in-javax-persistence-table-indexesljavax-persistence-index 如果你看看错误消息您会看到它正确检测到指定的提供程序;该消息有点误导。 – Andrei