1.原因:没有控制语句导致的迭代器的越界,使得map中的数据无法传入reduce,从而无法把结果传入目标文件中。

在进行Mapreduce实例——WordCount实验时遇到的错误,开始以为是lib包导入和读取源文件格式的问题,后来无论怎么修改都会报这个错误,报错如下:

java.lang.Exception: java.util.NoSuchElementException
at org.apache.hadoop.mapred.LocalJobRunner$Job.runTasks(LocalJobRunner.java:491)
at org.apache.hadoop.mapred.LocalJobRunner$Job.run(LocalJobRunner.java:551)
Caused by: java.util.NoSuchElementException
at java.util.StringTokenizer.nextToken(StringTokenizer.java:349)
at mapreduce.WordCount$doMapper.map(WordCount.java:43)
at mapreduce.WordCount$doMapper.map(WordCount.java:1)
at org.apache.hadoop.mapreduce.Mapper.run(Mapper.java:146)
at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:793)
at org.apache.hadoop.mapred.MapTask.run(MapTask.java:341)
at org.apache.hadoop.mapred.LocalJobRunner$Job$MapTaskRunnable.run(LocalJobRunner.java:270)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:473)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:622)
at java.lang.Thread.run(Thread.java:748)
18/11/16 00:25:39 INFO mapreduce.Job: Job job_local1205845239_0001 failed with state FAILED due to: NA
18/11/16 00:25:39 INFO mapreduce.Job: Counters: 0

错误根源:

2.解决方案:

解决方案1

if(tokenizer.hasMoreTokens())
{
this.word.set(tokenizer.nextToken());
context.write(this.word, one);
}

解决方案2

if(!value.toString().equals(""))
{
word.set(tokenizer.nextToken());
context.write(word, one);
}

最新文章

  1. phpstrom正则替换
  2. MOB 短信验证
  3. WinForm界面布局控件WeifenLuo.WinFormsUI.Docking"的使用 (二)
  4. 学习Hadoop不错的系列文章
  5. Hbase常用操作
  6. session之退出登陆
  7. ubuntu系统内核替换
  8. Java学习笔记——Linux下安装配置MySQL
  9. VFP 实验参考答案
  10. WebSocket 结合 Nginx 实现域名及 WSS 协议访问
  11. AtCoder Grand Contest 017
  12. BZOJ_3174_[Tjoi2013]拯救小矮人_贪心+DP
  13. C# 通俗说 哈希表
  14. 【STM32H7教程】第2章 STM32H7的开发环境搭建
  15. 微信小程序支付开发之申请退款
  16. Spring Boot功能实战
  17. erc721-165学习
  18. SOLR缓存调优
  19. Spark记录-官网学习配置篇(一)
  20. Navicat MySql乱码解决

热门文章

  1. 【TensorFlow篇】--反向传播
  2. Eureka服务下线后快速感知配置
  3. 【Java】几道让你拿offer的知识点
  4. SmartSql 介绍
  5. 爸爸又给Spring MVC生了个弟弟叫Spring WebFlux
  6. SLAM+语音机器人DIY系列:(一)Linux基础——2.安装Linux发行版ubuntu系统
  7. JDK源码分析(2)之 Array 相关
  8. PyTorch入门(一)向量
  9. 为 Eureka 服务注册中心实现安全控制
  10. tomcat 控制台中文乱码问题