准备程序:
eclipse-3.3.2 (这个版本号的插件仅仅能用这个版本号的eclipse)
hadoop-0.20.2-eclipse-plugin.jar (在hadoop-0.20.2/contrib/eclipse-plugin文件夹下)
将hadoop-0.20.2-eclipse-plugin.jar 拷贝到eclipse/plugins文件夹下,重新启动eclipse。
Window -> Open Perspective -> Other 选择Map/Reduce,图标是个蓝色的象。
在eclipse下端,控制台旁边会多一个Tab,叫“Map/Reduce Locations”,在以下空白的地方点右键,选择“New Hadoop location...”,如图所看到的:
在弹出的对话框中填写例如以下内容:
Location name(取个名字)
Map/Reduce Master(Job Tracker的IP和port,依据mapred-site.xml中配置的mapred.job.tracker来填写)
DFS Master(Name Node的IP和port,依据core-site.xml中配置的fs.default.name来填写)
经过上一步骤,左側“Project Explorer”中应该会出现配置好的HDFS,点击右键,能够进行新建目录、删除目录、上传文件、下载文件、删除文件等操作。
注意:每一次操作完在eclipse中不能立即显示变化,必须得刷新一下。
Window -> Preferences 选择 “Hadoop Map/Reduce”,点击“Browse...”选择Hadoop目录的路径。
这个步骤与执行环境无关,仅仅是在新建project的时候能将hadoop根文件夹和lib文件夹下的全部jar包自己主动导入。
File -> New -> Project 选择“Map/Reduce Project”,然后输入项目名称,创建项目。插件会自己主动把hadoop根文件夹和lib文件夹下的全部jar包导入。
File -> New -> Mapper 创建Mapper,自己主动继承mapred包里面的MapReduceBase并实现Mapper接口。
注意:这个插件自己主动继承的是mapred包里旧版的类和接口,新版的Mapper得自己写。
Reducer同理。
Run As -> Open Run Dialog... 选择WordCount程序,在Arguments中配置执行參数:/mapreduce/wordcount/input /mapreduce/wordcount/output/1
分别表示HDFS下的输入文件夹和输出文件夹,当中输入文件夹中有几个文本文件,输出文件夹必须不存在。
Run As -> Run on Hadoop 选择之前配置好的MapReduce执行环境,点击“Finish”执行。
控制台会输出相关的执行信息。