eclipse下使用hadoop插件执行java程序

上一篇文章中介绍了如何生成hadoop-x.xx.x-eclipse-plugin.jar的生成,本章介绍使用插件连接hadoop服务器,执行hadoop下的example程序。

eclipse版本3.4

hadoop本地伪分布式环境

1 将hadoop-x.xx.x-eclipse-plugin.jar 拷贝到eclipse目录下的plugins目录下,重启eclipse

2 启动eclipse后,点击Windows-->Preferrence-->hadoop map/reduce, Brower 选择下载的hadoop所在的路径:


eclipse下使用hadoop插件执行java程序
 
 
 

3 点击菜单window->open perspective->other.. 打开Map/Reduce perspective,如下图:

eclipse下使用hadoop插件执行java程序
 

4 点击左下角红圈,新建一个hadoop location,如下图所示


eclipse下使用hadoop插件执行java程序
 

 eclipse下使用hadoop插件执行java程序

Location name 名称为表示,随便填一个就行

主要修改4个 Map/Reduce Master 的host和port 还有DFS Master的host和port

MR 的host和port的对应hadoop配置文件mapred-site.xml中mapred.job.tracker的ip和端口

而DFS master的host和port则对应 core-site.xml里fs.default.name里面的ip和端口

如果是本地配置,可以使用机器名,如果不是本地,则需要使用ip地址。点击finish即添加上

5 点击eclipse左边Project Explorer下的DFS Locations,将其展开,如下图所示:

6 导入hadoop目录下src下面的example文件夹,配置关联jar包,配置source文件位置,如下图所示


eclipse下使用hadoop插件执行java程序
 

7 启动WordCount前,需要配置执行的参数,run->run open dialog...,配置参数修改为如下:(注意,hdfs下要有对应的目录才行)


eclipse下使用hadoop插件执行java程序
 

碰到的问题:

1 连接的时候,报错连接不上表现为127.0.1.1:9000...等等无法连接,原因是因为ubuntu下会将系统hostname映射为127.0.1.1,如果你没有修改hostname为hadoop使用的机器名,则会报这个错误

解决方法:修改hostname为hadoop master的机器名。

2 连接上以后,出错报找不到Configuration类等信息,原因是因为hadoop plugin 没有将需要的jar包导入,或者导入了没有在MANIFEST.MF 引入。ubuntu下不能直接修改plugin jar包下的MANIFEST.MF,修改了也不起作用,需要在打包的时候修改MANIFEST.MF,然后在打plugin jar包

3 hdfs能够连接上,可以查看,但是运行程序的时候却报错:远程主机强迫关闭了一个现有的连接。主要是因为map/reduce的端口设置的不对,需要修改

相关推荐