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

Flink 1.13.2连接Kafka报错AvroSchemaConverter NoSuchMethodError

问题原因

这个报错的核心是类加载冲突,有两个直接诱因:

  • 你的pom.xml中同时引入了flink-table-planner(Flink 旧版 planner)和flink-table-planner-blink(Flink 1.13 默认的新版 planner),两个依赖中都存在AvroSchemaConverter类,旧版的类中没有入参为LogicalType的convertToSchema方法,运行时优先加载了旧版类就会触发方法找不到的错误。
  • 你手动指定了Avro版本为1.8.2,和Flink 1.13.2默认适配的Avro 1.10.0版本不兼容,也会导致方法签名不匹配。
解决方案

按照以下步骤修改配置后重新打包即可:

  1. 删除冲突的旧版planner依赖,移除以下配置段:
<dependency>
    <groupId>org.apache.flink</groupId>
    <artifactId>flink-table-planner_${scala.binary.version}</artifactId>
    <version>${flink.version}</version>
</dependency>
  1. 修正Avro版本适配:
    直接删除你手动添加的org.apache.avro:avro:1.8.2依赖,flink-sql-avro和flink-avro-confluent-registry会自动引入和Flink 1.13.2适配的Avro版本;如果业务必须固定Avro版本,就将版本号改为1.10.0和Flink默认适配版本对齐。
  2. 清理缓存重新打包:
    执行以下命令清理本地maven缓存,重新构建fatjar,避免旧的冲突类残留:
mvn clean package -DskipTests
  1. 可选优化:如果你提交任务的YARN集群已经预置了Flink核心依赖,可以将flink-clients、flink-table-planner-blink等Flink核心组件的依赖scope设置为provided,只保留连接器、自定义依赖的scope为默认的compile,既能减小jar包体积,也能进一步降低集群和本地依赖冲突的概率。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 23:36:02