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

Hibernate 6与Apache Spark 3.5.0兼容性问题:Antlr4版本冲突

解决Spark 3.5.0与Hibernate 6.2.1.Final的Antlr4版本冲突问题

你遇到的异常是因为Spark 3.5.0依赖的Antlr4 4.9生成的ATN(增强转移网络)序列化版本为3,而Hibernate 6.2.1依赖的Antlr4 4.10要求的序列化版本为4,两者不兼容导致反序列化失败。以下是两种可行的解决方法:

方法1:统一Antlr4版本为兼容的高版本

Antlr4的4.10+版本向下兼容大部分4.9的语法逻辑,我们可以强制整个项目使用Antlr4 4.10.1版本,同时排除Spark依赖中自带的低版本Antlr4。

具体Maven配置

  1. 首先在dependencyManagement中锁定Antlr4版本:
<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.antlr</groupId>
            <artifactId>antlr4-runtime</artifactId>
            <version>4.10.1</version>
        </dependency>
        <dependency>
            <groupId>org.antlr</groupId>
            <artifactId>antlr4</artifactId>
            <version>4.10.1</version>
        </dependency>
    </dependencies>
</dependencyManagement>
  1. 修改Spark的依赖配置,排除其中的Antlr4依赖:
<dependency>
    <groupId>org.apache.spark</groupId>
    <artifactId>spark-core_2.12</artifactId>
    <version>3.5.0</version>
    <exclusions>
        <exclusion>
            <groupId>org.antlr</groupId>
            <artifactId>antlr4-runtime</artifactId>
        </exclusion>
        <exclusion>
            <groupId>org.antlr</groupId>
            <artifactId>antlr4</artifactId>
        </exclusion>
    </exclusions>
</dependency>

<dependency>
    <groupId>org.apache.spark</groupId>
    <artifactId>spark-sql_2.12</artifactId>
    <version>3.5.0</version>
    <exclusions>
        <exclusion>
            <groupId>org.antlr</groupId>
            <artifactId>antlr4-runtime</artifactId>
        </exclusion>
        <exclusion>
            <groupId>org.antlr</groupId>
            <artifactId>antlr4</artifactId>
        </exclusion>
    </exclusions>
</dependency>
  1. 保留原有的Hibernate依赖配置即可。

方法2:检查依赖树并针对性排除

如果方法1出现兼容性问题,先通过Maven命令查看项目的依赖树,确认低版本Antlr4的来源:

mvn dependency:tree | grep antlr

根据输出结果,除了Spark之外,如果还有其他依赖引入Antlr4 4.9,同样对其进行排除操作,确保最终项目依赖的Antlr4版本为4.10.x。

验证

修改配置后,执行mvn clean package重新构建项目,启动应用后检查是否还出现Could not deserialize ATN with version 3 (expected 4)的异常。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.27 01:35:23