eclipse 配置运行hadoop 2.7 程序例子参考步骤
前提:你搭建好了hadoop 2.x的linux环境,并能够成功运行。还有就是window能够访问到集群。over
1、
<name>dfs.permissions</name>
<value>false</value>
</property>
2、hadoop-eclipse-plugin-2.7.0.jar将插件放到plugins目录下
3、复制linux master已安装好的hadoop目录到windows,然后eclipse 配置定位hadoop的目录,重启eclipse
4、打开配置,hadoop选项,定位hadoop主目录。然后打开mapreduce的view 设置配置属性:其他额外属性不要配置,用户名也不用改,此时可以链接上了。
5、新建MR工程
6、建立wordcount类(自己复制就行)
在src下面直接新建log4j.properties:
内容如下:主要是打印信息:(你可以将info改成debug,内容过多,改成info了)
log4j.rootLogger=info,stdout,R
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%5p - %m%n
log4j.appender.R=org.apache.log4j.RollingFileAppender
log4j.appender.R.File=mapreduce_test.log
log4j.appender.R.MaxFileSize=1MB
log4j.appender.R.MaxBackupIndex=1
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%p %t %c - %m%n
log4j.logger.com.codefutures=DEBUG
7、错误多多啊:
解决方式1)人家提示HADOOP_HOME没有设置,那就配置windows的环境变量,定位到hadoop目录
运行报:
第一项不报了,第二项继续:
2)java.io.IOException: Could not locate executable null\bin\winutils.exe in the Hadoop binaries.
说不能定位,看来是HADOOP_HOME没起作用,那就在main里添加代码,否则不报null:
这次变了,检查目录,的确没有winutils.exe,因为我们是从linux复制下来的
那就增加呗:
运行报:
第二项不报了,又来新的了:
运行 继续报错:
复制麻烦,那就新建类,定位包,然后复制类内容就行了。
继续运行继续报错:
运行 继续报,别报了,出结果了:
对于: WARN - Unable to load native-hadoop library for your platform... using builtin-java classes where applicable这个警告没事,运行在linux就不报了。
8、最后,尝试将wordcount拆成子类的形式,将mapper移出来试试,因为有的时候多个类会提示报错:
9、欢迎访问下hegou.me这个网站。怎么样,只是在本机搭建个测试环境。工作中就不要在正式集群里跑了。还是乖乖测试好代码先。over。
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。