3

我有 Flink 的问题

java.lang.NoSuchMethodError: org.apache.flink.api.java.typeutils.ObjectArrayTypeInfo.getInfoFor(Lorg/apache/flink/api/common/typeinfo/TypeInformation;)Lorg/apache/flink/api/java/typeutils/ObjectArrayTypeInfo;
    at LowLevel.FlinkImplementation.FlinkImplementation$$anon$6.<init>(FlinkImplementation.scala:28)
    at LowLevel.FlinkImplementation.FlinkImplementation.<init>(FlinkImplementation.scala:28)
    at IRLogic.GmqlServer.<init>(GmqlServer.scala:15)
    at it.polimi.App$.main(App.scala:20)
    at it.polimi.App.main(App.scala)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    ...

有问题的线是这个

implicit val regionTypeInformation = 
         api.scala.createTypeInformation[FlinkDataTypes.FlinkRegionType]

FlinkRegionType我有一个Array自定义对象

我在 IDE 中使用 maven 插件开发了该应用程序,一切正常,但是当我移至从网站下载的版本时,出现上述错误

我正在使用 Flink 0.9

我在想可能缺少一些库,但我正在使用 Maven 来处理所有内容。此外,运行ObjectArrayTypeInfo.java的代码似乎不是问题

4

1 回答 1

3

ANoSuchMethodError通常表示编译 Flink 程序的库与执行程序的系统之间的版本不匹配。特别是如果相同的代码在编译和执行库相同的 IDE 设置中工作。

在这种情况下,您应该检查 Flink 依赖项的版本,例如在 Maven POM 文件中。

于 2015-05-08T12:06:14.607 回答