您好我需要帮助来解决这个问题。当尝试在intellij上运行我的java Web应用程序时,我收到以下消息:
javax.persistence.PersistenceException:没有持久性提供程序 EntityManager命名为持久性
for (int i = file_content.Count - 1; i > -1; i--)
{
// Remove initial tabs...
int size = 0;
for (int j = 0; j < file_content[i].Length; j++)
{
if (file_content[i][j] != '\t')
{
break;
}
else
{
size = j + 1;
}
}
if (size > 0)
{
file_content[i] = file_content[i].Remove(0, size);
}
}
这是-- src
|-- main
| |-- java
| | `-- service
| | `-- dao
| | `-- mapping
| | |--
| | |--
| | `--
| `-- resources
| `-- META-INF
| `-- persistence.xml
persistence.xml
文件
resources/META-INF/
我的gradle build
<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.0">
<persistence-unit name="persistence">
<provider>org.hibernate.jpa.HibernatePersistenceProvider</provider>
<mapping-file>Dao/mapping/user.xml</mapping-file>
<class>Dao.mapping.UserEntity</class>
<properties>
<property name="toplink.jdbc.url" value="jdbc:mysql://localhost:3306/test"/>
<property name="toplink.jdbc.driver" value="com.mysql.jdbc.Driver"/>
<property name="hibernate.connection.url" value="jdbc:mysql://localhost:3306/test"/>
<property name="hibernate.connection.driver_class" value="com.mysql.jdbc.Driver"/>
<property name="openjpa.ConnectionURL" value="jdbc:mysql://localhost:3306/test"/>
<property name="openjpa.ConnectionDriverName" value="com.mysql.jdbc.Driver"/>
<property name="eclipselink.jdbc.url" value="jdbc:mysql://localhost:3306/test"/>
<property name="eclipselink.jdbc.driver" value="com.mysql.jdbc.Driver"/>
</properties>
</persistence-unit>
谢谢。
答案 0 :(得分:0)
一个选项是错误是由引用的实体不存在引起的。
你在persistence.xml中有“Dao.mapping.UserEntity”,但目录显示它应该是“service.dao.mapping.UserEntity”。
完整的堆栈跟踪可以帮助解决问题。