2016-08-01 27 views
1

Ich versuche, ein JPA-Projekt mit Maven in Intellij zu erstellen. Ich benutze Eclipse Link und die Datenbank ist SQlite.Eclipselink Maven Kein Persistence Provider für EntityManager namens

Dies ist meine aktuelle pom.xml Datei (nur die Abhängigkeiten):

<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> 

Meine persistence.xml Datei sieht wie folgt aus:

<?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> 

Wenn ich versuche jetzt eine EntityMangerFactory erhalte ich die folgende Ausnahme zu erstellen :

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) 

Der Code t o schaffen die EntityManagerFactory ist:

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

ich es kenne, sind einige Fragen, mit diesem Problem aber nicht von ihnen geholfen. Die persistence.xml Datei ist unter folgendem Pfad:

src/main/java/META-INF/ 

Antwort

2

Die persistence.xml Datei auf src/main/resources/META-INF sein sollte.
src/main/java ist für Java-Quellcode.
src/main/resources ist für Ressourcendateien.

Versuchen Sie es.