Hadoop:mapred.LocalJobRunner:MissingResourceException

我正在尝试设置一个简单的MapReduce应用程序,其中包含自定义记录读取器、映射器和还原器。直到(包括)mapper似乎工作了(调用context.write时,我在控制台上写下了键值对以供测试)。
然后我收到消息
“14/03/04 14:25:43信息映射。作业客户端:映射100%减少0%”。
但在那之后我每3秒就进入无限循环
“2004年3月14日14:25:45 info mapred.localjobrunner:”
没有详细的信息或其他任何东西。
当在我的ide中启用日志记录所有异常时,我在上面的每条消息之后都会收到以下异常:
线程中出现异常“java. UTI.MISQuasRealExcel异常”
“通信线程”
Java.UTI.ReaseCube。
我在作业的配置中定义了mapper和reducer,但似乎找不到reducer类(?)。在减速机中设置了断点,程序永远不会到达这一行。
我的POM.XML:

        <dependency>
        <groupId>org.springframework.data</groupId>
        <artifactId>spring-data-hadoop</artifactId>
        <version>1.0.2.RELEASE</version>
        </dependency>

我的工作是:
    Job job = new Job(new Configuration());
    job.setOutputKeyClass(IntWritable.class);
    job.setOutputValueClass(Text.class);
    job.setMapOutputKeyClass(IntWritable.class);
    job.setMapOutputValueClass(IntWritable.class);
    job.setMapperClass(DataFileMapper.class);
    job.setReducerClass(DataFileReducer.class);
    job.setInputFormatClass(HourBlockInputFormat.class);

    FileInputFormat.addInputPath(job, new Path("..."));
    FileOutputFormat.setOutputPath(job, new Path("..."));
    job.submit();

如果你有什么建议,
最好的


最佳答案:

我得到了同样的错误(无限循环)。我通过更新pom.xml文件解决了这个问题。

<dependencies>
    <dependency>
        <groupId>org.apache.hadoop</groupId>
        <artifactId>hadoop-mapreduce-client-common</artifactId>
        <version>2.7.1</version>
    </dependency>
<dependencies>

在my pom.xml文件中添加上述依赖项。也许它会帮助你。对我来说,这解决了问题。
如果你有任何问题,请评论。