java 编译hadoop jar包_有关hadoop执行包含外在jar包的jar包程序 | 学步园

一般来说hadoop命令执行jar包需要在hadoop的bin路径下执行命令如下:

./hadoop jar xx.jar mainclassname inputpath outputpath

对于XX.jar包中本身编译需要外部jar包的情况,则需要在封装成xx.jar包时候把所有外部jar包都包括进来,具体以本人执行的包括json包的程序为例。首先在xx.java路径下创建/lib路径,将所有外部jar包包含进去,再在manifest.mf中写明支持库的路径。

1、书写manifest.mf文件

manifest-Version:1.0

Class-Path: ./lib/json-lib-2.3-jdk15.jar ./lib/commons-lang-2.6.jar xx

Main-Class:LightDarkSituation

2、编译java成.class文件

javac -cp ./lib/json-lib-2.3-jdk15.jar:./lib/hadoop-0.20.2-core.jar:./lib/opencsv-2.3.jar *.java

3、封装成包含外部库的jar包

jar -cvf LightDarkSituation.jar *.class ./lib

4、hadoop命令执行jar包程序

./hadoop jar ./LightDarkSituation.jar LightDarkSituation /user/dayin/input /user/dayin/output

即可,也不需要最开始进行HADOOP_CLASSPATH的设定了,非常简单~借鉴自http://www.blogjava.net/soddabao/archive/2007/01/08/92455.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值