Flink SerializationSchema 序列化错误
Flink 使用自定义 SerializationSchema 提交任务后报错:
Object org.apache.flink.streaming.util.serialization.KeyedSerializationSchemaWrapper@15639440 is not serializable
org.apache.flink.api.java.ClosureCleaner.ensureSerializable(ClosureCleaner.java:108)
org.apache.flink.streaming.connectors.kafka.FlinkKafkaProducerBase.<init>(FlinkKafkaProducerBase.java:147)
org.apache.flink.streaming.connectors.kafka.FlinkKafkaProducer09.<init>(FlinkKafkaProducer09.java:190)
org.apache.flink.streaming.connectors.kafka.FlinkKafkaProducer010.<init>(FlinkKafkaProducer010.java:197)
org.apache.flink.streaming.connectors.kafka.FlinkKafkaProducer010.<init>(FlinkKafkaProducer010.java:122)
...
解决方案
自定义 SerializationSchema
类中的所有非 transient
及 非 static
对象字段均需要实现 Serial