1

我試圖用卡夫卡與斯卡拉 下面是我在Java代碼中,其工作完全正常流流scala代碼會引發編譯錯誤。類型不匹配預期:ForEachAction [>字符串,>字符串],實際((任意,任意),單位) 未發現:價值關鍵 未發現:值值卡夫卡與斯卡拉

有誰知道如何使用流API中scala

回答

4

你的語法錯了:)。 ->是建立對剛剛運營商,所以表達

(key,value)-> { 
    println(key) 
} 

有一個類型((任意,任意),單位),因爲編譯器不能推斷出任何類型的信息(和keyvalue缺失)

如果你是使用Scala的2.12更換->=>應該解決的問題,但如果你使用Scala的舊版本,你將必須實現明確的java雙功能:

textLines.foreach(new BiFunction[T1, T2] { ... }) 
1

您可以使用打印方法直接打印kafkastream。

textlines.print

它將打印卡夫卡流。您甚至可以通過將參數傳遞給打印函數來打印鍵或值。