Exception in thread "main" org.apache.flink.api.common.InvalidProgramException: This type (GenericType<com.atguigu.apitest.beans.SensorReading>) cannot be used as key.
at org.apache.flink.api.common.operators.Keys$ExpressionKeys.<init>(Keys.java:330)
at org.apache.flink.streaming.api.datastream.DataStream.keyBy(DataStream.java:340)
at com.atguigu.apitest.transform.TransformTest3_Reduce.main(TransformTest3_Reduce.java:33)
出现中问题的原因是flink支持的Java的POJO类中的属性或构造函数没写对,或是没写。
解决方式:
Java的POJO类属性修饰符应该为public,并且必须含有无参构造方法。