EclipseLink JPA - persistence.xml的位置

时间:2011-11-26 04:00:33

标签: java eclipse jpa eclipselink persistence.xml

我正在将JPA用于java类,并且无法将持久性XML文件放在应有的位置。

我使用的IDE是Eclipse Helios。 Eclipselink jar文件已下载并添加到我的JRE系统库和所有文件中。在收到以下错误后,我用标签写了persistence.xml:

Exception in thread "main" javax.persistence.PersistenceException: No Persistence provider for EntityManager named customers

提供商代码:

<provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>

该程序仍然没有运行,所以我想知道我应该在哪里放置persistence.xml(即src / main / resources,或lib / META-INF ......等)

2 个答案:

答案 0 :(得分:20)

persistence.xml应该放在类路径根目录下名为META-INF的目录中。

在eclipse中右键单击您的项目==&gt;属性==&gt; Java构建路径。假设您将其中一个构建路径配置为/src/main/resources,那么您应该将persistence.xml置于/src/main/resources/META-INF/persistence.xml

答案 1 :(得分:0)

这是一个非常常见的问题,所以我决定将这个答案变成a guide which explains how you can set the persistence.xml file

JPA持久性XML文件位置

传统上,persistence.xml位于META-INF文件夹中,该文件夹需要位于Java类路径的根目录中。如果您使用的是Maven,则可以将其存储在resources文件夹中,如下所示:

src/main/resources/META-INF/persistence.xml