Mapper类型不是通用的,hadoop eclipse插件

时间:2011-06-24 22:06:29

标签: hadoop hadoop-plugins

我正在使用eclipse编写mapreduce程序。我导入了hadoop库 (Hadoop的0.13.0-core.jar添加)

我导入了Mapper类导入org.apache.hadoop.mapred.Mapper; 这没有错误,但是当我写这个程序时 这个来源是http://developer.yahoo.com/hadoop/tutorial/module3.html

public class WordCountMapper extends MapReduceBase
    implements Mapper<LongWritable, Text, Text, IntWritable> {

  private final IntWritable one = new IntWritable(1);
  private Text word = new Text();

  public void map(WritableComparable key, Writable value,
      OutputCollector output, Reporter reporter) throws IOException {

    String line = value.toString();
    StringTokenizer itr = new StringTokenizer(line.toLowerCase());
    while(itr.hasMoreTokens()) {
      word.set(itr.nextToken());
      output.collect(word, one);
    }
  }
}

它给了我错误Mapper类型不是通用的;它不可能是  参数化参数

1 个答案:

答案 0 :(得分:1)

您需要使用Hadoop的0.19版本。 API中引入了一些更改,并且该代码适用于较新的版本。虽然不是0.20。