编译:   javac  -classpath     hadoop的路径下面/hadoop-0.20.0-core.jar       -d     .class文件存放的路径     XXXX.java

打成jar包:   jar  -cvf   要生成的Jar包的名字.jar    *.*       (这个命令是把当前文件下所有的class文件都打如jar包里面去)

运行jar包:      hadoop   jar       xxxx.jar        jar包的入口类名     已存在的文件名字      结果文件名字

如果打jar包的时候漏掉了几个class文件没打进去,则会出现classnotfoundexception的错误!!!!

1.jar打包命令

jar -cvf xx.jar *.*

说明一下:*.*表示把当前目录下面以及子目录的所有class都打到这个xx.jar里。

-cvf的含义,可以自己去用jar命令去查看

如果要单独对某个或某些class文件进行打包,可以这样:

jar -cvf xx.jar Foo.class Bar.class

2.运行jar

java -jar xx.jar

要运行一个jar,则此jar内部的META-INF\MANIFEST.MF文件里必须指明要执行的main方法类

具体格式如:

Manifest-Version: 1.0

Created-By: 1.6.0_03 (Sun Microsystems Inc.)

Main-class: Test

如果此处的Test.class在com.xx包下面,则需要指明。

如果在运行时报了invalid or corrupt jarfile错误,则需要检查Main-class: Test 之间是不是缺少了空格。

3.指定运行jar里面的class

java -cp xx.jar com.xx.Test

4.编译某个java文件,但是依赖某个jar

javac -cp xx.jar Test.java

(Test.java里面import了xx.jar里面的某个class)

5.运行某个java文件,但是依赖某个jar

java -cp .;xx.jar Test

注意:引用xx.jar的时候,不要漏掉.;(这个表示当前目录)

hadoop打jar包的更多相关文章

  1. Hadoop运行jar包报错java.lang.Exception: java.lang.ArrayIndexOutOfBoundsException: 1

    错误信息: java.lang.Exception: java.lang.ArrayIndexOutOfBoundsException: 1    at org.apache.hadoop.mapre ...

  2. 修改hadoop的jar包运行时候分配的jvm内存

    在hadoop-env.sh中修改参数添加 export HADOOP_HEAPSIZE="4096" 设置分配的最大jvm内存为4096,一般用于jar包里面除了执行map和re ...

  3. 为Hadoop创建JAR包文件Creating a JAR for Hadoop

    We've seen the internals of MapReduce in the last post. Now we can make a little change to the WordC ...

  4. Hadoop 运行jar包时 java.lang.ClassNotFoundException: Class com.zhen.mr.RunJob$HotMapper not found

    错误如下 Error: java.lang.RuntimeException: java.lang.ClassNotFoundException: Class com.zhen.mr.RunJob$H ...

  5. hadoop运行jar包报错

    执行命令:[root@hadoop102 mapreduce]# hadoop jar mapreduce2_maven.jar Filter 错误信息:Exception in thread &qu ...

  6. hbase 2.0.2 分布式安装配置/jar包替换

    环境 zk: 3.4.10 hadoop 2.7.7 jdk8 hbase 2.0.2 三台已安装配置好的hadoop002,hadoop003,hadoop004 1.上传并解压hbase-2.1. ...

  7. Spark&Hadoop:scala编写spark任务jar包,运行无法识别main函数,怎么办?

    昨晚和同事一起看一个scala写的程序,程序都写完了,且在idea上debug运行是ok的.但我们不能调试的方式部署在客户机器上,于是打包吧.打包时,我们是采用把外部引入的五个包(spark-asse ...

  8. hadoop:将WordCount打包成独立运行的jar包

    hadoop示例中的WordCount程序,很多教程上都是推荐以下二种运行方式: 1.将生成的jar包,复制到hadoop集群中的节点,然后运行 $HADOOP_HOME/bin/hadoop xxx ...

  9. 【Hadoop需要的Jar包】Hadoop编程-pom.xml文件

    JDK版本的要求 Hadoop 2.7 以及之后的版本,需要JDK 7: Hadoop 2.6 以及之前的版本,支持JDK 6: 对于Hadoop1.x.x版本,只需要引入1个jar: hadoop- ...

随机推荐

  1. perl学习之:use & require

    相同: 都可以用来引用module(.PM). 不同: 1) 区别在于USE是在当前默认的@INC里面去寻找,一旦模块不在@INC中的话,用USE是不可以引入的,但是require可以指定路径: 2) ...

  2. 项目:开发->测试->上线:流程规范

    1) 项目分析 2) 项目经理分工协作 程序就具体流程: 1: 按项目名称: 建git, 数据库, 线上测试虚拟机 2: 按项目经理分配的大的模块. 自行划分工作阶段 a: 划分为小的模块 b: 预估 ...

  3. 「问题思考」python的递归中return返回none

    代码: #求最大公约数 def gcd(x,y): if x < y: swap = x x = y y = swap if x%y == 0: return y else: gcd(y,x%y ...

  4. 剑指Offer(书):重建二叉树

    题目:输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树.假设输入的前序遍历和中序遍历的结果中都不含重复的数字.例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2, ...

  5. MySQL存储过程中一直困扰的 の 变量中的@

    在声明变量中CREATE function Get_StrArrayLength ( @str varchar(1024), --要分割的字符串@split varchar(10) --分隔符号)re ...

  6. Idea中配置svn时报 Can't use Subversion command line client: svn.Errors found while svn working copies detection.

    https://www.cnblogs.com/wqh17/p/6881483.html

  7. CDOJ 1217 The Battle of Chibi

    The Battle of Chibi Time Limit: 6000/4000MS (Java/Others)     Memory Limit: 65535/65535KB (Java/Othe ...

  8. Oracle 释放过度使用的Undo表空间

    故障现象:UNDO表空间越来越大,长此下去最终数据因为磁盘空间不足而崩溃: 问题分析:产生问题的原因主要以下两点: 1. 有较大的事务量让Oracle Undo自动扩展,产生过度占用磁盘空间的情况: ...

  9. NOIP2013D1T3货车运输(最大生成树+倍增lca)

    传送门 这道题,先用kruskal求一遍图中的最大生成树. 然后,倍增求lca,求lca的同时求出边权的最小值. #include <cstring> #include <cstdi ...

  10. captcha库报错"OSError: cannot open resource"

    问题描述 在win平台上python虚拟环境下使用captcha库生成验证码报错OSError: cannot open resource 代码 from captcha.image import I ...