我想创建一个用scala编写的flink项目。
当我导入时
'flink-scala_2.11',
'flink-streaming-scala_2.11'
'flink-core', 我可以运行如下代码:
val someEventScalaStream = myScalaStreamm.map{x=>x.Part3} (it is using scala map function)但我看到每一个都是这样:
flink-connector-rabbitmq_2.11
flink-connector-filesystem_2.11
flink-clients_2.11所有这些都依赖于'flink-java‘。
因此,当所有这些都导入到我的解决方案中时,项目正在尝试使用java版本的map函数&没有编译。
有什么解决方案吗?
谢谢。
发布于 2017-07-23 23:48:32
通常,java和scala的apis放在不同的包中。所以要确保你使用的是正确的。例如,对于DataStream,您有
Java:
org.apache.flink.streaming.api.datastream.DataStreamScala:
org.apache.flink.streaming.api.scala.DataStream在这种情况下,建议在scala中导入:
org.apache.flink.streaming.api.scala._如果这还不能解决你的问题,你能在使用map函数的java版本时发布一个具体的例子吗?
https://stackoverflow.com/questions/45266641
复制相似问题