gpt4 book ai didi

java - Eclipselink Maven 没有名为 EntityManager 的持久性提供程序

转载 作者:行者123 更新时间:2023-11-29 08:43:05 25 4
gpt4 key购买 nike

我尝试在 Intellij 中使用 Maven 创建一个 JPA 项目。我使用 Eclipse Link,数据库是 SQlite。

这是我当前的 pom.xml 文件(只有依赖项):

<dependency>
<groupId>org.xerial</groupId>
<artifactId>sqlite-jdbc</artifactId>
<version>3.8.11.2</version>
</dependency>

<dependency>
<groupId>org.eclipse.persistence</groupId>
<artifactId>org.eclipse.persistence.jpa</artifactId>
<version>2.6.3</version>
</dependency>

<dependency>
<groupId>org.eclipse.persistence</groupId>
<artifactId>javax.persistence</artifactId>
<version>2.1.1</version>
</dependency>

<dependency>
<groupId>org.eclipse.persistence</groupId>
<artifactId>eclipselink</artifactId>
<version>2.6.3</version>
</dependency>

我的 persistence.xml 文件如下所示:

<?xml version="1.0" encoding="UTF-8"?>
<persistence xmlns="http://xmlns.jcp.org/xml/ns/persistence" version="2.1">
<persistence-unit name="NewPersistenceUnit">
<provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
<class>com.raeste.db.BuchungEntity</class>
<class>com.raeste.db.KategorieEntity</class>
<properties>
<property name="eclipselink.jdbc.url" value="jdbc:sqlite:/home/raeste/programmierung/haushaltsbuch.db"/>
<property name="eclipselink.jdbc.driver" value="org.sqlite.JDBC"/>
</properties>
</persistence-unit>
</persistence>

如果我现在尝试创建一个 EntityMangerFactory,我会得到以下异常:

Exception in thread "main" javax.persistence.PersistenceException: No Persistence provider for EntityManager named NewPersistenceUnit
at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:85)
at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:54)

创建 EntityManagerFactory 的代码是:

EntityManagerFactory emf = Persistence.createEntityManagerFactory("NewPersistenceUnit");

我知道这个问题有几个问题,但没有一个有帮助。persistence.xml 文件位于以下路径下:

src/main/java/META-INF/

最佳答案

persistence.xml 文件应该位于 src/main/resources/META-INF
src/main/java 用于Java源代码。
src/main/resources 是资源文件。

试一试。

关于java - Eclipselink Maven 没有名为 EntityManager 的持久性提供程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38694075/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com