准备工作:
1. hadoop集群(我用的是hadoop-2.7.3版本),这里hadoop有两种:1是编译好的hadoop-2.7.3;2是源代码hadoop-2.7.3-src;
2. 自己的机器可以是任何系统,只要支持JVM,自己的主机上必须有eclipse,以及hadoop-2.7.3和hadoop-2.7.3-src。(我用的是windows系统,为了方便Linux系统传输数据,我选用了FileZilla,一款ftp工具,具体见www.cnblogs.com/NongSi-Net/p/6744321.html; 如果是linux系统,可以用ssh,ssh能实现 linux系统相互传输数据)
开始:
1. 打开eclipse,点击File -> New -> Java Project
2. 编写Hadoop程序。这里我们以hadoop本身自带的WordCount.java为例,在hadoop-2.7.3-srchadoop-mapreduce-projecthadoop-mapreduce-examplessrcmainjavaorgapachehadoopexamplesWordCount.java。
把WordCount.java复制到WC的src里面。它会显示错误。删除package org.apache.hadoop.examples; 保存
结果还是报错。解决办法如3,引入所需jar包。
3. 右键WC项目,Build Path -> Configure Bulid Path... -> Libraries -> Add External Jars... 添加所需jar包。hadoop编程所需的jar包在hadoop-2.7.3sharehadoop下的文件的下一层的jar包(如果有的话),以及hadoop-2.7.3sharehadoopcommonlib的里的jar包。
然后就没有错误了。
4. 打jar包。右键WC项目,Export -> Java -> JAR file
5. 上传到hadoop集群。(其中windows<->linux交互,用ftp工具FileZilla。linux<->linux交互,用ssh)
6. 在hadoop集群中,在上传的hadoop节点上,运行我们编写的hadoop程序:
hadoop jar wc.jar WordCount zc/input/ zc/output
(还可以看一下另外不同的方式,这种方式需要本机部署好hadoop: eclipse想要开发Hadoop程序,还要引入一个jar包,在 eclipse/plugins/下引入hadoop-eclipse-plugin-2.7.2.jar, 没有找到hadoop-eclipse-plugin-2.7.3.jar. 参考Linux下使用Eclipse开发Hadoop应用程序)