参考:
http://blog.csdn.net/se7en_q/article/details/47258007
http://blog.csdn.net/uq_jin/article/details/51451995
1、安装Eclipse,安装hadoop插件
(1)下载hadoop 2.7.1的ecplise插件和其他一些搭建环境中所需要的文件,然后解压ecplise,并放置到D盘中
(2)将下载的资源中的Hadoop-ecplise-plugin.jar 插件放到ecplise的插件目录中: D:\ecplise\plugins\ 。然后开启ecplise。
(3)将Hadoop-2.7.1解压一份到D盘中,并配置相应的环境变量 HADOOP_HOME = G:\hadoop\hadoop-2.7.1\,并将%HADOOP_HOME%\bin 文件加添加到Path环境中
2、配置hadoop-eclipse-plugin插件 启动eclipse,window->preferences->hadoop map/reduce 指定win7上的hadoop根目录(即:$HADOOP_HOME) 切换Map/reduce视图 windows->show view->other Map/Reduce Locations Map/Reduce Locations 面板中添加新的LocationLocation name 这里就是起个名字,随便起
Map/Reduce(V2) Master Host 这里就是虚拟机里hadoop master对应的IP地址,下面的端口对应 hdfs-site.xml里dfs.datanode.ipc.address属性所指定的端口 默认 9001 DFS Master Port这里的端口,对应core-site.xml里fs.defaultFS所指定的端口 自己写的 9000 最后的user name要跟虚拟机里运行hadoop的用户名一致,我是用hadoop身份安装运行hadoop的,所以这里填写hadoop,如果你是用root安装的,相应的改成root 这些参数指定好以后,点击Finish,eclipse就知道如何去连接hadoop了,一切顺利的话,在Project Explorer面板中,就能看到hdfs里的目录和文件了 当做完这些,我们就能在Package Exploer 中看到DFS,然后冲中可以看到HDFS上的文件: 可以在文件上右击,选择删除试下,通常第一次是不成功的,会提示一堆东西,大意是权限不足之类,原因是当前的win7登录用户不是虚拟机里hadoop的运行用户,解决办法有很多,比如你可以在win7上新建一个hadoop的管理员用户,然后切换成hadoop登录win7,再使用eclipse开发,但是这样太烦,最简单的办法: hdfs-site.xml里添加 <property> <name>dfs.permissions.enabled</name> <value>false</value> </property> 总而言之,就是彻底把hadoop的安全检测关掉(学习阶段不需要这些,正式生产上时,不要这么干),最后重启hadoop,再到eclipse里,重复刚才的删除文件操作试下,应该可以了。 可以在文件上右击,选择删除试下,通常第一次是不成功的,会提示一堆东西,大意是权限不足之类,原因是当前的win7登录用户不是虚拟机里hadoop的运行用户,解决办法有很多,比如你可以在win7上新建一个hadoop的管理员用户,然后切换成hadoop登录win7,再使用eclipse开发,但是这样太烦,最简单的办法: hdfs-site.xml里添加 <property> <name>dfs.permissions.enabled</name> <value>false</value> </property> 总而言之,就是彻底把hadoop的安全检测关掉(学习阶段不需要这些,正式生产上时,不要这么干),最后重启hadoop,再到eclipse里,重复刚才的删除文件操作试下,应该可以了。因为WordCount是输入一个文件用于统计单词字,然后输出到另一个文件夹下,所以给二个参数,参考上图,在Program arguments里,输入
hdfs://192.168.1.6:9000/user/nub1.txt hdfs://192.168.1.6:9000/user/output 注意的是,如果user/nub1.txt文件没有,请先手动上传(使用eclipse中DFS Location工具的右键),然后/output/ 必须是不存在的,否则程序运行到最后,发现目标目录存在,也会报错。 好了,运行即可