java.lang.ClassNotFoundException: org.apache.flink.connector.base.source.reader.RecordEmitter
•
大数据
环境
Flink 1.16.0
mysql-cdc 2.3.0
pom.xml 引用的依赖
com.ververica
flink-connector-mysql-cdc
2.3.0
报错信息
Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Handler dispatch failed; nested exception is java.lang.NoClassDefFoundError: org/apache/flink/connector/base/source/reader/RecordEmitter] with root cause java.lang.ClassNotFoundException: org.apache.flink.connector.base.source.reader.RecordEmitter at java.base/java.net.URLClassLoader.findClass(Unknown Source) ~[na:na] at java.base/java.lang.ClassLoader.loadClass(Unknown Source) ~[na:na] at java.base/java.lang.ClassLoader.loadClass(Unknown Source) ~[na:na] at com.ververica.cdc.connectors.mysql.table.MySqlTableSource.getScanRuntimeProvider(MySqlTableSource.java:177) ~[na:na] at org.apache.flink.table.planner.connectors.DynamicSourceUtils.validateScanSource(DynamicSourceUtils.java:461) ~[flink-table-planner_2.12-1.15.0-stream1.jar:1.15.0-stream1]
解决方案
该问题是由于该jar包中打包的时候未引用该包,在依赖中引用并包含进来即可
修改 pom.xml 加入以下依赖
org.apache.flink
flink-connector-base
${flink.version}
如果使用的 ververica platform 等 flink 计算平台,使用该连接器的时候需要重新下载源码,引入依赖并把该包包含进来,重新编译打包后传到计算平台
org.apache.maven.plugins
maven-shade-plugin
3.2.4
shade-flink
package
shade
false
org.apache.flink:flink-connector-base
本文来自网络,不代表协通编程立场,如若转载,请注明出处:https://net2asp.com/424529c878.html
