Flink可以与Kotlin一起使用吗?

6

我有一个项目需要实时流传输数据。我已经将流数据写入了kafka主题。现在我需要读取并处理这些数据。为此,我计划使用Flink。
我的困境是我不会Java、Scala或Kotlin。我必须学习其中一种才能使用Flink,由于Kotlin是其中最新的语言,所以我认为我应该学习它,但它是否与Flink兼容呢?
我完全不了解任何数据流方面的内容,所以请原谅我问题中的任何错误,并请务必纠正。


如果Flink是用Java(或Scala或Kotlin)编写的,您可以使用这三种语言中的任何一种,因为它们都在JVM上运行(使用Java字节码)。 - Mibac
Flink既用Java也用Scala编写,但不支持Kotlin。我知道它们都使用相同的JVM进行编译。 - raviabhiram
2
如果某物正在使用JVM,这意味着所有JVM语言都与其兼容(即,如果使用JVM语言编写的代码,则可以使用任何语言)。 - Mibac
目前唯一的问题是,由于Kotlin编译器问题,lambda表达式无法在Kotlin中使用。Bug跟踪器:https://issues.apache.org/jira/browse/FLINK-23979 - frevib
1个回答

13

简而言之,您可以使用任何JVM语言与Flink交互:Java、Kotlin、Scala(甚至可能是Groovy之类的语言)。

然而,如果您遇到问题需要寻求帮助,您可能会在其他语言中遇到困难。Flink官方支持Scala和Java,因此建议从这两种语言入手。

最后,Kotlin作为较新的语言并不代表它更好或更优秀。人们已经成功地使用了这三种语言,这更多取决于个人偏好(除非您有特殊需求)。


3
那篇博客文章并不是在谈论移除Flink中的Scala支持,而是为那些不想使用它的人移除了对Scala的硬依赖。 - Martijn Visser

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接