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

Hibernate初始化异常:hibernate.cfg.xml解编失败与JAXB依赖缺失求助

解决方案:Hibernate配置解析报错(JAXB缺失)

问题根本原因

Java 9及以后版本中,JAXB(Java Architecture for XML Binding)模块被从JDK默认类库中移除,而旧版本Hibernate依赖JAXB解析XML配置文件(如hibernate.cfg.xml、.hbm.xml映射文件),因此会抛出ClassNotFoundException: com.sun.xml.internal.bind.v2.ContextFactory异常。

具体解决步骤

  • 步骤1:确认JDK版本
    打开终端执行java -version,如果是Java 9+,必须手动添加JAXB依赖。

  • 步骤2:添加JAXB依赖

    方式1:Maven项目(推荐)

    在pom.xml中加入以下依赖:

    <!-- JAXB API -->
    <dependency>
        <groupId>javax.xml.bind</groupId>
        <artifactId>jaxb-api</artifactId>
        <version>2.3.1</version>
    </dependency>
    <!-- JAXB 实现 -->
    <dependency>
        <groupId>com.sun.xml.bind</groupId>
        <artifactId>jaxb-impl</artifactId>
        <version>2.3.1</version>
        <scope>runtime</scope>
    </dependency>
    <!-- JAXB 核心模块 -->
    <dependency>
        <groupId>com.sun.xml.bind</groupId>
        <artifactId>jaxb-core</artifactId>
        <version>2.3.0.1</version>
    </dependency>
    <!-- 激活JAXB的依赖 -->
    <dependency>
        <groupId>javax.activation</groupId>
        <artifactId>activation</artifactId>
        <version>1.1.1</version>
    </dependency>
    
    方式2:普通Java项目(Eclipse)

    手动下载以下JAR包,添加到项目的Build Path中:

    • jaxb-api-2.3.1.jar
    • jaxb-impl-2.3.1.jar
    • jaxb-core-2.3.0.1.jar
    • activation-1.1.1.jar
      操作路径:右键项目 → Build Path → Add External Archives,选择上述JAR包。
  • 步骤3:(可选)升级Hibernate版本
    如果使用Hibernate 5.3及以下版本,建议升级到Hibernate 5.4+,新版本已适配Java 9+模块化架构,无需手动添加JAXB依赖(部分场景仍需,但兼容性更好)。

  • 步骤4:验证配置文件路径
    确保hibernate.cfg.xml放在src/main/resources(Maven)或src目录下,HibernateUtil中加载配置的代码正确:

    Configuration configuration = new Configuration().configure();
    // 若文件不在默认位置,可指定路径
    // Configuration configuration = new Configuration().configure("path/to/hibernate.cfg.xml");
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.01 11:40:29