我在写Kafka的flink申请
FlinkKafkaConsumer<MyPojo> consumer = new FlinkKafkaConsumer(TOPIC, new MyPojoDes(), prop)
StreamExecutionEnvironment env = new StreamExecutionEnvironment ();
env.addSource(consumer).print();
在高层次上,这个应用程序使用来自kafka主题的消息并打印它。但当我运行它时,我得到以下例外
原因:java.lang.nullpointerexception:null位于org.apache.flink.streaming.runtime.tasks.operatorchain$copyingchainingoutput.pushtooperator(operatorchain)。java:577)在org.apache.flink.streaming.runtime.tasks.operatorchain$copyingchainingoutput.collect(operatorchain。java:554)在org.apache.flink.streaming.runtime.tasks.operatorchain$copyingchainingoutput.collect(operatorchain。java:534)位于org.apache.flink.streaming.api.operators.abstractstreamoperator$countingoutput.collect(abstractstreamoperator)。java:718)
我试着在代码中调试,发现operatorchain类中有一个序列化程序变量,它是空的,不知道为什么
1条答案
按热度按时间hujrc8aj1#
我发现在反序列化程序中调试时,返回的是null而不是实际的类型信息,因此operatorchain中的序列化程序变量为null。