You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

升级hibernate-c3p0至6.1.0Final报无持久化提供者错误如何解决

问题根因

抛出no persistence provider for unit错误的核心原因是Hibernate依赖配置错误,正确版本的持久化实现包没有被加载到类路径,你的pom中存在三个明确的配置问题:

  • 错误给hibernate-core、hibernate-c3p0两个依赖添加了<type>pom</type>声明:这两个依赖默认打包类型为jar,指定为pom类型后Maven只会引入依赖的描述文件,不会下载实际包含功能代码的jar包,类路径下自然找不到Hibernate实现的JPA PersistenceProvider服务类。
  • Hibernate组件版本严重不统一:你仅将hibernate-c3p0、hibernate-core升级到6.1.0.Final,但hibernate-entitymanager保留了5.6.9.Final版本、hibernate-envers保留了5.4.10.Final版本,跨大版本的依赖混装会触发类冲突、SPI服务加载失败。另外从Hibernate 5.2版本开始,hibernate-entitymanager的所有功能已经合并到hibernate-core中,6.x版本不需要单独引入hibernate-entitymanager依赖,单独引入旧版本反而会传递引入旧版hibernate-core,覆盖高版本的实现。
  • 冗余引入独立c3p0依赖:hibernate-c3p0已经自带了适配当前Hibernate版本的c3p0包,单独引入0.9.5.5版本的独立c3p0可能出现版本不兼容问题。
修复步骤
  1. 替换pom中persistence相关的依赖块,删除错误的type声明、移除冗余的旧版依赖、统一所有Hibernate组件版本为6.1.0.Final,配置参考如下:
<!-- persistence -->
<!-- Hibernate Core 包含JPA实现、原entitymanager所有功能 -->
<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-core</artifactId>
    <version>6.1.0.Final</version>
</dependency>
<!-- Hibernate c3p0连接池适配 -->
<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-c3p0</artifactId>
    <version>6.1.0.Final</version>
</dependency>
<!-- Hibernate envers 版本与core保持一致 -->
<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-envers</artifactId>
    <version>6.1.0.Final</version>
</dependency>
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>8.0.29</version>
</dependency>
  1. 注意Hibernate 6.x全面切换到Jakarta EE包命名,所有javax.persistence包下的JPA注解、类都迁移到了jakarta.persistence包下,你需要将项目代码、配置中所有引用javax.persistence的路径替换为jakarta.persistence。如果暂时不想做Jakarta命名空间迁移,就把所有Hibernate组件版本统一回退到5.4.x系列,不要跨大版本升级。
  2. 配置修改完成后,执行Maven命令清理本地缓存、重新拉取依赖构建项目:
mvn clean install -U
  1. 构建完成后可以执行以下命令检查依赖树,确认没有5.x版本的Hibernate包被传递引入:
mvn dependency:tree | grep hibernate

如果存在残留的旧版本Hibernate依赖,在引入对应依赖的位置添加exclusion规则排除即可。

内容的提问来源于stack exchange,提问作者JAlways

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.28 09:22:01