No Persistence provider for EntityManager named persistence(没有名为持久性的EntityManager的持久性提供程序)
本文介绍了没有名为持久性的EntityManager的持久性提供程序的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
您好,我需要帮助来解决这个问题。当尝试在IntelliJ上运行我的Java Web应用程序时,我收到以下消息:
异常:没有持久化提供程序 名为持久性的实体管理器
-- src
|-- main
| |-- java
| | `-- service
| | `-- dao
| | `-- mapping
| | |--
| | |--
| | `--
| `-- resources
| `-- META-INF
| `-- persistence.xml
这是resources/META-INF/
中的persistence.xml
文件
<?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>
我的Gradle版本
group 'com.test'
version '1.0-SNAPSHOT'
apply plugin: 'java'
apply plugin: 'war'
sourceCompatibility = 1.5
repositories {
mavenCentral()
}
dependencies {
testCompile group: 'junit', name: 'junit', version: '4.11'
compile group: 'org.hibernate', name: 'hibernate-core', version: '5.2.4.Final'
compile group: 'mysql', name: 'mysql-connector-java', version: '6.0.5'
compile group: 'org.apache.tomcat', name: 'tomcat-catalina', version: '9.0.0.M13'
compile group: 'org.hibernate', name: 'hibernate-validator', version: '5.3.3.Final'
compile group: 'org.hibernate.javax.persistence', name: 'hibernate-jpa-2.1-api', version: '1.0.0.Final-redhat-1'
}
谢谢。
推荐答案
一个选项是错误是由引用的实体不存在引起的。
您在sistence.xml中有"Dao.mapping.UserEntity",但目录建议它应该是"service.dao.mapping.UserEntity"。
完整的堆栈跟踪可以帮助解决问题。
这篇关于没有名为持久性的EntityManager的持久性提供程序的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
沃梦达教程
本文标题为:没有名为持久性的EntityManager的持久性提供程序
基础教程推荐
猜你喜欢
- 首次使用 Hadoop,MapReduce Job 不运行 Reduce Phase 2022-01-01
- Spring Boot Freemarker从2.2.0升级失败 2022-01-01
- 在螺旋中写一个字符串 2022-01-01
- 如何在不安装整个 WTP 包的情况下将 Tomcat 8 添加到 Eclipse Kepler 2022-01-01
- 由于对所需库 rt.jar 的限制,对类的访问限制? 2022-01-01
- Java 中保存最后 N 个元素的大小受限队列 2022-01-01
- 如何对 HashSet 进行排序? 2022-01-01
- 如何使用 Eclipse 检查调试符号状态? 2022-01-01
- 如何使用 Stream 在集合中拆分奇数和偶数以及两者的总和 2022-01-01
- 如何强制对超级方法进行多态调用? 2022-01-01