Apache Flinkで単純なhello world型プログラムを実行しようとしています。コードはApache Kafkaからのメッセージを受け取り、 "。"各文字の後に新しい文字列をstdoutに出力します。コードはKafkaからメッセージを正しく取得しますが、マップ関数は "。"を追加します。失敗する。 REPLプロンプトでこの関数を試してみましたが、スカラーコードが正しく機能しています。 Scalaのコード:スカラとApache flinkの新機能、なぜマップ関数がREPLを正しく実行するのですか?Flinkで失敗します
scala> input = "hello"
input: String = hello
scala> val output = input.flatMap(value => value + ".")
output: String = h.e.l.l.o
FLINKプログラム: flink code オフカットラインは
val messageStream = env.addSource(new FlinkKafkaConsumer09("CL", new SimpleStringSchema, properties))
私は私が間違っているつもりだところ、私は無駄にApacheのマニュアルを試してみた把握カントを読み込みます。あなたが私に与えることができるどんな助けもうまく受け取ります。
エラーが何であるかを私たちに語った場合、それが役立つだろう。 cmd-lineでコンパイルしようとしましたか? Scala IDEは誤ったエラーを出すことが知られています。 – pedrofurla
また、flatMapではなく、messageStreamでマップを使用したいと思うかもしれません。 flatMapは 'value'がcharと' + 'であるため 'input'サンプルで動作します。' 'はs Stringに変換します。 – pedrofurla
エラーメッセージにパラメータタイプがありません。私はそれがIDEかもしれないと思ったが、私はコードをデプロイするのを妨げているmavenのコードをコンパイルしようとしたときに同じエラーが出る。フラットマップは両方の環境で同じように動作しないのでしょうか?文字列を一度に1文字ずつ見る? –