DreamWorks

Never say Never。
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

eclipse下配置hadoop环境

Posted on 2013-07-09 21:30  _Babyface  阅读(386)  评论(0编辑  收藏  举报

 

写在前面:

 

前面讲的是使用命令行进行hadoop执行,但是由于eclipse是java的主要IDE,而hadoop使用java语言开发,所以则在eclipse上配置hadoop环境是非常必要的

 

==============================================================

 

1、复制 hadoop安装目录hadoop-0.20.2/contrib/eclipse-plugin/hadoop-0.20.2-eclipse-plugin.jar到eclipse安装目录下的plugins目录中。

 

 

 

2、重启eclipse,配置hadoop installation directory。
如果安装插件成功,打开Window-->Preferens,你会发现Hadoop Map/Reduce选项,在这个选项里你需要配置Hadoop installation directory。配置完成后退出。

 

3、配置Map/Reduce Locations。

 


 在Window-->Show View->other...,在MapReduce Tools中选择Map/Reduce Locations。

在Map/Reduce Locations(Eclipse界面的正下方)中新建一个Hadoop Location。在这个View中,点击鼠标右键-->New Hadoop Location。

在弹出的对话框中你需要配置Location name,可任意填,如Hadoop,以及Map/Reduce Master和DFS Master。这里面的Host、Port分别为你在mapred-site.xml、core-site.xml中配置的地址及端口

 

     设置完成后就会在eclipse的左边窗口中出现

=========================================================================================

配置完成后就可以实验之前说过的wordcount.java程序

1、新建项目。
File-->New-->Other-->Map/Reduce Project
项目名可以随便取,如hadoopTest。
复制/home/download/hadoop-0.20.2/src/examples/org/apache/hadoop/examples/WordCount.java到刚才新建的项目下面。

 

2、上传模拟数据文件夹。
为了运行程序,需要一个输入的文件夹和输出的文件夹。输出文件夹,在程序运行完成后会自动生成。我们需要给程序一个输入文件夹。

(1)、在当前目录(如hadoop安装目录)下新建文件夹input,并在文件夹下新建两个文件file01、file02(类似上文中的操作)

  (2)、.将文件夹input上传到分布式文件系统中,在已经启动Hadoop守护进程终端中cd 到hadoop安装目录,运行下面命令:

   $bin/hadoop -fs put input iutput

 

3、运行项目
(1)、在新建的项目hadoop-test,点击WordCount.java,右键-->Run As-->Run Configurations
(2)、在弹出的Run Configurations对话框中,点Java Application,右键-->New,这时会新建一个application名为WordCount


(3)、配置运行参数,点Arguments,在Program arguments中输入“你要传给程序的输入文件夹和你要求程序将计算结果保存的文件夹”,如:

 

Program arguments根据自己实际情况填写

PS:VM arguments改为 -Xms128m -Xmx512m -XX:PermSize=64m -XX:MaxPermSize=256m

 

(4)、点击Run,运行程序。

  点击Run,运行程序,过段时间将运行完成,等运行结束后,可以在终端中用命令如下,查看是否生成文件夹output:

 

  bin/hadoop fs -ls 

  用下面命令查看生成的文件内容:

 

  bin/hadoop fs -cat output/*

然后生成与使用命令行相同的结果