Ho un problema con 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)
...
la linea con il problema è questa
implicit val regionTypeInformation =
api.scala.createTypeInformation[FlinkDataTypes.FlinkRegionType]
nel FlinkRegionType
ho un Array
di oggetto personalizzato
Ho sviluppato l'app con il plugin Maven nell'IDE e tutto funziona correttamente, ma quando passo alla versione che ho scaricato dal sito ho ricevuto l'errore sopra
Sto usando Flink 0.9
Stavo pensando che alcune librerie potrebbero mancare ma sto usando Maven per gestire tutto. Inoltre eseguendo il codice di ObjectArrayTypeInfo.java non sembra essere il problema
risposte:
3 per risposta № 1UN NoSuchMethodError
indica comunemente una mancata corrispondenza tra la versionelibrerie con il programma Flink e il sistema su cui è eseguito il programma. Soprattutto se lo stesso codice funziona in una configurazione IDE in cui le librerie di compilazione e di esecuzione sono le stesse.
In tal caso, dovresti controllare la versione delle dipendenze di Flink, ad esempio nel file MAVen POM.