![](/img/trans.png)
[英]javax.persistence.PersistenceException: No Persistence provider for EntityManager
[英]JPA with Java SE: javax.persistence.PersistenceException: No Persistence provider for EntityManager
执行Java SE JPA独立应用程序会引发异常:
javax.persistence.PersistenceException: No Persistence provider for EntityManager named test
我发现了几篇类似的文章,但我认为它们都不适合我的EclipseLink,Java SE案例,也没有打包到可部署文件中,因此也没有WEB-INF等。
/src/META-INF/persistence.xml是:
<persistence>
<persistence-unit name="test" transaction-type="RESOURCE_LOCAL">
<provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
<class>SomeEntity</class>
<properties>
<property name="javax.persistence.jdbc.driver" value="org.postgresql.Driver"/>
<property name="javax.persistence.jdbc.url" value="jdbc:postgresql://localhost:5432/somedbname"/>
<property name="javax.persistence.jdbc.user" value="foo"/>
<property name="javax.persistence.jdbc.password" value="bar"/>
</properties>
</persistence-unit>
</persistence>
以下jar位于构建路径上:
您必须将eclipselink jar添加到您的ClassPath中,以检查它是否已经存在:
System.out.println(System.getProperty("java.class.path"));
我必须在xmlns属性的persistence.xml中提供持久性名称空间
<persistence xmlns="http://java.sun.com/xml/ns/persistence" version="1.0">
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.