簡體   English   中英

沒有命名為EntityManager的持久性提供程序(新)

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM