Java 对未排序的组进行排序不起作用-无法访问MyClass类型的封闭实例
我试图通过参数对数据集进行分组,然后通过应用Java 对未排序的组进行排序不起作用-无法访问MyClass类型的封闭实例,java,apache-flink,Java,Apache Flink,我试图通过参数对数据集进行分组,然后通过应用sortGroup函数对结果进行排序。最后,我想应用一个reduceGroup函数来获得一个转换后的数据集 DataSet<SlicedTile> slicedTilesSorted = stitchedTimeSlices.flatMap(new sliceDetailedBlocks(detailedBlockSize, blockSize)) .groupBy(new KeySelector<SlicedTile, Tu
sortGroup
函数对结果进行排序。最后,我想应用一个reduceGroup函数来获得一个转换后的数据集
DataSet<SlicedTile> slicedTilesSorted = stitchedTimeSlices.flatMap(new sliceDetailedBlocks(detailedBlockSize, blockSize))
.groupBy(new KeySelector<SlicedTile, Tuple2<Integer, Integer>>() {
public Tuple2<Integer, Integer> getKey(SlicedTile s) {
return s.getPositionInTile();
}
})
.sortGroup(new SlicedTileTimeKeySelector<SlicedTile>(), Order.ASCENDING)
.reduceGroup(new approxInvalidValues());
DataSet slicedTilesSorted=stitchedTimeSlices.flatMap(新的SlicedDetailedBlocks(detailedBlockSize,blockSize))
.groupBy(新密钥选择器(){
公共元组2 getKey(切片文件s){
返回s.getPositionInTile();
}
})
.sortGroup(新的SlicedFileTimeKeySelector(),Order.升序)
.reduceGroup(新的approxInvalidValues());
但是Eclipse在sortGroup行中显示了一个错误,该错误表示:
无法访问MyClass类型的封闭实例。必须
使用类型为的封闭实例限定分配
MyClass(例如x.new A(),其中x是
MyClass)
有谁能告诉我我做错了什么以及如何解决这个问题吗?的可能重复项换句话说,
SlicedFileTimeKeySelector
似乎是MyClass
中的一个内部类。要解决此问题,您应该将其声明为static
(static class SlicedTileTimeKeySelector
)。感谢您的帮助,这解决了此问题。的可能重复项换句话说,SlicedTileTimeKeySelector
似乎是MyClass
中的一个内部类。若要解决此问题,应将其声明为静态
(静态类SlicedTileTimeKeySelector
)。感谢您的帮助,此问题得以解决。