编写hadoop程序并打成jar包上传到hadoop集群运行

Posted 秦时明月0515

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了编写hadoop程序并打成jar包上传到hadoop集群运行相关的知识,希望对你有一定的参考价值。

准备工作:

    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-src\\hadoop-mapreduce-project\\hadoop-mapreduce-examples\\src\\main\\java\\org\\apache\\hadoop\\examples\\WordCount.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.3\\share\\hadoop\\下的文件的下一层的jar包(如果有的话),以及hadoop-2.7.3\\share\\hadoop\\common\\lib的里的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应用程序)

以上是关于编写hadoop程序并打成jar包上传到hadoop集群运行的主要内容,如果未能解决你的问题,请参考以下文章

java项目打成jar包并部署到Linux服务器,以及在shell脚本中启动java程序

我爱java系列---idea把实体类打成jar包并上传到私服最详细的教程

用eclipse怎样将本地的项目打成jar包上传到maven仓库

工作经验使用IDEA将SpringBoot项目打成Jar包

工作经验使用IDEA将SpringBoot项目打成Jar包

项目部署