类型不匹配:无法从JavaRDD <object>转换为JavaRDD <string>

时间:2017-03-24 16:31:09

标签: java apache-spark

我刚开始学习Apache Spark并做一个项目。第一项任务是读取包含多行文本的文件并获取字典。根据我的理解,我写了以下代码:

JavaRDD<String> lines = spark.sparkContext().textFile("tokens.txt",10).toJavaRDD();
JavaRDD<String> dictionary = lines.flatMap(l -> l.split(" "));

我也试过

JavaRDD<String> dictionary = lines.flatMap(l -> Arrays.asList(l.split(" ")));

然而Eclipse给了我这个错误:

  

类型不匹配:无法转换为JavaRDD&lt; Object&gt;至   JavaRDD&LT;字符串&GT;

我做错了什么?

1 个答案:

答案 0 :(得分:0)

我只是想通了。需要在最后调用iterator()。

JavaRDD<String> dictionary = lines.flatMap(l -> Arrays.asList(l.split(" ")).iterator());