我正在尝试在桌面应用程序中使用jpa。我不断收到错误No Persistence provider for EntityManager named <unit>
,我怀疑我的persistence.xml找不到。确定persistence.xml的位置
我已经把它在<project>/src/META-INF/persistence.xml
我有一种感觉,JPA不能找到这个文件,但我不知道如何解决。
如何指定persistence.xml文件的存储位置以及如何检查它是否实际读取?
堆栈跟踪:
javax.persistence.PersistenceException: No Persistence provider for EntityManager named myunit
at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:69)
at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:47)
at myapplication.MyEntity.testAddEntity(HistoryAction.java:85)
您使用哪种JPA持久性提供程序?什么是persistence.xml文件的内容以及异常的堆栈跟踪是什么? –
@JB Nizet:stacktrace只说上面的消息。但即使我在我的.xml文件中输入了非法字符,我也没有收到(其他)错误信息。所以我真的很想知道应用程序是否查找并读取我的persistence.xml文件。 – Roalt
完整的堆栈跟踪将有助于诊断。但如果你不想得到帮助,你可以自由地不回答。您确定具有persistence.xml的META-INF文件夹位于类路径中吗? –