Apache flink ververica平台| Flink所需的上下文属性不匹配

Apache flink ververica平台| Flink所需的上下文属性不匹配,apache-flink,flink-streaming,flink-sql,Apache Flink,Flink Streaming,Flink Sql,我正试图向部署在Kubernates的ververica平台提交作业,但我得到了以下消息,我向Flink standalone提交了相同的代码,其工作正常!!我使用的是Flink 1.10.1和Scala 2.12的代码 Caused by: org.apache.flink.client.program.ProgramInvocationException: The main method caused an error: Could not find a suitable table fac

我正试图向部署在Kubernates的ververica平台提交作业,但我得到了以下消息,我向Flink standalone提交了相同的代码,其工作正常!!我使用的是Flink 1.10.1和Scala 2.12的代码

Caused by: org.apache.flink.client.program.ProgramInvocationException: The main method caused an error: Could not find a suitable table factory for 'org.apache.flink.table.factories.TableSinkFactory' in
the classpath.

Reason: Required context properties mismatch.

The following properties are requested:

connector.driver=com.mysql.jdbc.Driver
connector.password=****** 
connector.table=***** 
connector.type=jdbc
connector.url=jdbc:mysql://********** 
connector.username=******** 
schema.0.data-type=VARCHAR(255) 
schema.0.name=********** 
schema.1.data-type=BIGINT 
schema.1.name=**** 
schema.2.data-type=VARCHAR(255)
schema.2.name=***** 
schema.3.data-type=DATE
schema.3.name=****** 
schema.4.data-type=BIGINT
schema.4.name=****** 
schema.5.data-type=VARCHAR(255)
schema.5.name=************ 
schema.6.data-type=DATE
schema.6.name=*********

The following factories have been considered:
org.apache.flink.table.sinks.CsvBatchTableSinkFactory
org.apache.flink.table.sinks.CsvAppendTableSinkFactory
        at org.apache.flink.client.program.PackagedProgram.callMainMethod(PackagedProgram.java:335)
        at org.apache.flink.client.program.PackagedProgram.invokeInteractiveModeForExecution(PackagedProgram.java:205)
        at org.apache.flink.client.program.OptimizerPlanEnvironment.getPipeline(OptimizerPlanEnvironment.java:80)
        at org.apache.flink.client.program.PackagedProgramUtils.getPipelineFromProgram(PackagedProgramUtils.java:108)
        at org.apache.flink.client.program.PackagedProgramUtils.createJobGraph(PackagedProgramUtils.java:58)
        at org.apache.flink.container.entrypoint.ClassPathJobGraphRetriever.retrieveJobGraph(ClassPathJobGraphRetriever.java:104)
        ... 9 more
Caused by: org.apache.flink.table.api.NoMatchingTableFactoryException: Could not find a suitable table factory for 'org.apache.flink.table.factories.TableSinkFactory' in
the classpath.

错误消息表明Flink没有找到TableFactory来生成要写入MySQL表的连接器


您应该将JDBC表/SQL连接器与您的程序JAR绑定。

我尝试使用命令
sbt assembly
生成JAR,但仍然得到相同的错误您可以解压缩生成的JAR文件以检查是否包含所需的类。是的,我检查了JAR和类是否存在。谢谢Fabian它修复了我的问题,我在代码中还提到,我没有使用BlinkPlanner,这也会在TableSource中生成一个错误