[英]No Persistence provider for EntityManager named (New)
我試圖調用persistence.xml來顯示Netbeans IDE中數據庫中的某些數據。 我已經查看並嘗試了以前用戶提出的不同方法,但是仍然無法解決問題。
我用它來稱呼持久性單元,
EntityManagerFactory emf = Persistence.createEntityManagerFactory("TimeEven DataBasePU");
這是我嘗試運行文件時返回的內容,
Exception in thread "main" javax.persistence.PersistenceException: No Persistence provider for EntityManager named TimeEven DataBasePU
at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:85)
at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:54)
at internal.assesment.TimeTableEventList.main(TimeTableEventList.java:110)
C:\Users\User\Documents\NetBeansProjects\Timetable\nbproject\build-impl.xml:1051: The following error occurred while executing this line:
C:\Users\User\Documents\NetBeansProjects\Timetable\nbproject\build-impl.xml:805: Java returned: 1
這是805行,錯誤似乎源於此
<java classname="@{classname}" dir="${work.dir}" failonerror="${java.failonerror}" fork="true">
如前所述
我已經在持久性單元名稱下添加了提供程序,
<provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
並且我已確保“持久性”為單位位於META-INF文件夾中,
C:\Users\User\Documents\NetBeansProjects\Timetable\src\META-INF\persistence.xml
它在類路徑中,所以我不確定錯誤在哪里。
編輯1.是的,我從xml代碼復制並粘貼(我在那里也拼錯了哈哈)
編輯2。
編輯3。
我認為您發布的異常是在沒有與您在Persistence.createEntityManagerFactory上傳遞的名稱匹配的持久性單元時引起的。 在你的情況下:
<persistence-unit name="TimeEven DataBasePU">
因此,如果您確定持久性單元的名稱與您在代碼中編寫的名稱相同,您是否可以檢查persistence.xml
?
或者,發布您的persistence.xml
可能有助於解決您的問題。
編輯1:您可以檢查您的依賴項嗎?
如果使用maven(pom.xml),則必須具有:
<dependency>
<groupId>org.eclipse.persistence</groupId>
<artifactId>javax.persistence</artifactId>
<version>2.1.1</version>
<scope>provided</scope>
</dependency>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.