flink Exception in thread “main“ org.apache.flink.api.common.functions.InvalidTypesException:

我们在写flink程序的时候,我们会用到元祖(Tuple)当上游算子用到Tuple时,下游用keyby(tuple->tuple.f0)就会报如下错误:

解决办法:如下图必须用匿名内部类不能用lambda方法,因为不能为自动类型提取提供足够的信息。

.keyBy(new KeySelector<Tuple2<Tuple8<String,String,String,String,String,String,String,String>,String>, Tuple8<String,String,String,String,String,String,String,String>>() {
                    @Override
                    public Tuple8<String, String, String, String, String, String, String, String> getKey(Tuple2<Tuple8<String, String, String, String, String, String, String, String>, String> tuple) throws Exception {
                        return tuple.f0;
                    }
                })

猜你喜欢

转载自blog.csdn.net/zhangyupeng0528/article/details/110929273