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

Hibernate 6.3.1 Final报NoClassDefFoundError:缺失EnumValueConverter类

解决Hibernate 6.3.1与hypersistence-utils兼容导致的NoClassDefFoundError问题

我在使用Hibernate Core 6.3.1 Final和hypersistence-utils-hibernate-62:3.5.3依赖时,遇到了如下NoClassDefFoundError错误:

Caused by: java.lang.NoClassDefFoundError: org/hibernate/type/descriptor/converter/spi/EnumValueConverter
at java.base/java.lang.Class.getDeclaredConstructors0(Native Method)
at java.base/java.lang.Class.privateGetDeclaredConstructors(Class.java:3373)
at java.base/java.lang.Class.getConstructor0(Class.java:3578)
at java.base/java.lang.Class.getDeclaredConstructor(Class.java:2754)
at org.hibernate.internal.util.ReflectHelper.getConstructor(ReflectHelper.java:350)
at org.hibernate.boot.model.TypeBeanInstanceProducer.produceBeanInstance(TypeBeanInstanceProducer.java:34)
at org.hibernate.boot.model.TypeBeanInstanceProducer.produceBeanInstance(TypeBeanInstanceProducer.java:53)
- at org.springframework.orm.hibernate5.SpringBeanContainer.createBean(SpringBeanContainer.java:208)
at org.springframework.orm.hibernate5.SpringBeanContainer.getBean(SpringBeanContainer.java:124)
at org.hibernate.resource.beans.internal.ManagedBeanRegistryImpl.getBean(ManagedBeanRegistryImpl.java:110)
at org.hibernate.mapping.BasicValue.setExplicitCustomType(BasicValue.java:825)
at org.hibernate.cfg.annotations.BasicValueBinder.fillSimpleValue(BasicValueBinder.java:1238)
at org.hibernate.cfg.SetBasicValueTypeSecondPass.doSecondPass(SetBasicValueTypeSecondPass.java:26)

问题原因

hypersistence-utils-hibernate-62:3.5.3是针对Hibernate 6.2.x版本开发的工具库,而Hibernate 6.3.x对内部API做了调整,org.hibernate.type.descriptor.converter.spi.EnumValueConverter类在6.3版本中已被移除或重构,导致依赖该类的hypersistence-utils无法找到对应类,抛出NoClassDefFoundError。

解决方案

  • 方案一:降级Hibernate版本
    将Hibernate Core从6.3.1 Final降级到6.2.x系列版本,确保和hypersistence-utils-hibernate-62:3.5.3的版本完全兼容。

  • 方案二:升级hypersistence-utils版本
    更换为适配Hibernate 6.3.x的hypersistence-utils依赖,使用hypersistence-utils-hibernate-63前缀的包,选择对应兼容6.3版本的版本号(比如3.6.x及以上版本)。

  • 额外排查
    检查项目依赖树,确保没有同时引入不同版本的Hibernate Core或hypersistence-utils,避免依赖冲突引发类加载异常。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.10 00:00:17