我知道有关这个问题的其他问题,但是没有一个解决方案对我有用.我正在使用maven在
eclipse中构建一个
java项目,我的persistence.xml文件在src / main / resource / Meta_INF文件夹中.但是当我尝试安装mvn时,我总是得到这个错误:
No Persistence provider for EntityManager named plasma.persistence
看看控制台的输出似乎是由此引起的:
[org.hibernate.jpa.boot.internal.PersistenceXmlParser] - HHH000318: Could not find any meta-inf/persistence.xml file in the classpath
这是我的persistence.xml文件:
<persistence xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd" version="2.0"> <persistence-unit name="plasma.persistence" transaction-type="RESOURCE_LOCAL"> <properties> <property name="hibernate.dialect" value="org.hibernate.spatial.dialect.postgis.PostgisDialect"/> <property name="hibernate.connection.driver_class" value="org.postgresql.Driver"/> <property name="hibernate.connection.url" value="jdbc:postgresql://localhost:5432:xxxxx"/> <property name="hibernate.connection.username" value="xxxxx"/> <property name="hibernate.connection.password" value="xxxxx"/> <property name="hibernate.connection.pool_size" value="5"/> <property name="hibernate.show_sql" value="true"/> <property name="hibernate.format_sql" value="true"/> <property name="hibernate.max_fetch_depth" value="5"/> <property name="hibernate.hbm2ddl.auto" value="update"/> </properties> </persistence-unit>
我已经尝试右键单击项目并将Meta_INF文件夹添加到构建路径,并且仍然不起作用.有任何想法吗?
解决方法
持久性文件的正确的home应该是src / main / resources / meta-inf.在这个问题中,你提到src / main / resource / Meta_INF.注意,在meta-inf中的资源和破折号( – )中应该有一个’s’,而不是一个下划线.那些只是打错了问题?如果没有,修复路径,它应该工作.