Win7运行MapReduce

环境:windows7(64)+intelidea2017+hadoop8+jdk8.0

遇到的主要报错:

0、第一次用jdk9.0,编译时提示json的一个类没有,卸载,安装jdk8.0,问题解决

1.Exception in thread “main” java.lang.RuntimeException: java.io.FileNotFoundException: java.io.FileNotFoundException: HADOOP_HOME and hadoop.home.dir are unset
解决办法:下载Hadoop到本地,解压,配置环境变量Hadoop_HOME ,并在path中加上%hadoop_home%/bin
然后在main函数中添加一行代码:
System.setProperty(“hadoop.home.dir”,”c:\hadoop”)

2.could not locate Hadoop executale
解决办法:下载hadoop版本和位数对应的wintuils.exe和hadoop.dll文件,将这两个文件放入hadoop的bin目录下

3.Exception in thread “main” java.lang.UnsatisfiedLinkError: org.apache.hadoop.io.nativeio.NativeIO$Windows.access0
解决办法:将hadoop.dll放在system32目录下

4、解决完上述几个报错后,运行,会在项目目录下生成一个output目录,里面记录有生成的结果文件

具体intelidea配置如下:
1、配置project setting
Win7运行MapReduce_第1张图片

2、配置Artifacts
Win7运行MapReduce_第2张图片

3、配置一个Application
Win7运行MapReduce_第3张图片

其中Program arguments:中第一行为jar包路径,也就是在Artifacts配置的路径,第二行为带有main函数的类,三四行为输入输出
Win7运行MapReduce_第4张图片

4、新建一个目录input,将分析文本文件拷贝进去
Win7运行MapReduce_第5张图片

5、运行,成功后,会在项目目录下生成一个output目录,里面的文件如下:

Win7运行MapReduce_第6张图片

7、三个类就是hadoop权威指南书上的天气例子,由于编辑器使用不好,
代码贴上排版很糟糕,所以没贴,网上有很多。

你可能感兴趣的:(Win7运行MapReduce)