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

hibernate-core 6.0.2为何移除javax.persistence-api依赖

依赖移除原因

这不是版本依赖缺失的bug,是Hibernate 6.x版本的官方主动调整:

  • Hibernate 6.0是首个完全适配Jakarta Persistence 3.0规范的正式大版本,由于Oracle将Java EE商标所有权移交Eclipse基金会后,Jakarta EE 9及以上版本所有原javax.*命名空间的企业级API全部统一重命名为jakarta.*,因此Hibernate 6.x直接移除了旧的javax.persistence-api依赖,替换为适配新命名空间的jakarta.persistence-api。
  • 5.6.x是Hibernate最后一个兼容旧Java EE javax.persistence命名空间的维护分支,因此该版本仍然保留了对javax.persistence-api的传递依赖。
升级注意事项
  • 不要手动添加javax.persistence-api依赖:Hibernate 6.x内部所有类、方法签名都已经完全适配jakarta命名空间,强行引入旧的javax.persistence-api会触发类冲突、方法找不到等运行时异常,无法正常工作。
  • 正确适配方式:将代码中所有javax.persistence开头的导入语句全部替换为jakarta.persistence即可,例如将import javax.persistence.Entity;修改为import jakarta.persistence.Entity;。Hibernate-core 6.0.2.Final已经默认传递引入了对应版本的jakarta.persistence-api,无需额外手动添加持久化相关API依赖。
  • 如果项目存在大量强依赖javax.persistence命名空间的历史组件、无法快速完成包名替换,建议继续使用Hibernate 5.6.x分支版本,不要贸然升级到6.x系列。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.03 03:42:30