Hadoop 我得到了一个错误;类型作业的addCacheFile(URI)方法未定义;使用CDH4.0

Hadoop 我得到了一个错误;类型作业的addCacheFile(URI)方法未定义;使用CDH4.0,hadoop,mapreduce,cloudera-cdh,distributed-cache,Hadoop,Mapreduce,Cloudera Cdh,Distributed Cache,我发现了错误 类型作业的方法addCacheFile(URI)未定义 在尝试调用addCacheFile(URI)方法时使用CDH4.0,如下所示: import java.net.URI; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.Path; import org.apache.hadoop.io.LongWritable; import org.apache.hadoop.io.Text

我发现了错误

类型作业的方法addCacheFile(URI)未定义

在尝试调用
addCacheFile(URI)
方法时使用CDH4.0,如下所示:

import java.net.URI;

import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.io.LongWritable;
import org.apache.hadoop.io.Text;
import org.apache.hadoop.mapreduce.Job;
import org.apache.hadoop.mapreduce.lib.input.FileInputFormat;
import org.apache.hadoop.mapreduce.lib.input.TextInputFormat;
import org.apache.hadoop.mapreduce.lib.output.FileOutputFormat;
import org.apache.hadoop.mapreduce.lib.output.TextOutputFormat;

public class DistributedCacheDriver {

    public static void main(String[] args) throws Exception {
        String inputPath = args[0];
        String outputPath = args[1];

        String fileName = args[2];
        Configuration conf = new Configuration();
        Job job = Job.getInstance(conf, "TestingDistributedCache");
        job.setJarByClass(DistributedCache.class);


        job.addCacheFile(new URI(fileName)); //Getting error here -The method addCacheFile(URI) is undefined for the type Job

        boolean result = job.waitForCompletion(true);
        System.exit(result ? 0 : 1);
    }
}

是否有消除此错误的建议/提示?

如果选择安装MapReduce版本1,则应将
job.addCacheFile()
命令替换为
distributedCache.addCacheFile()并相应地更改
setup()
方法(称之为
configure()


查找一些官方文档和示例。

是否安装了mapreduce版本1或2?