编译:   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. terminology(术语)

    1.declaration:告诉编译器某个标识符的name和type,同时略去具体细节. extern int x;     //对象(object)声明式 std::size_t  numDigit ...

  2. 【UVA 10820】Send a Table(欧拉函数)

    Description When participating in programming contests, you sometimes face the following problem: Yo ...

  3. 解决hibernate产生的id序列或者setXX不能同步到数据库到问题(this.hibernateTemplate.flush();hibernateTemplate.getSessionFactory().getCurrentSession().connection().commit())

    通过WarehouseInventoryPreLog warehouseInventoryPreLog = new WarehouseInventoryPreLog();产生一个id序列 如果不flu ...

  4. FZU-2147-2147 A-B Game,规律题。。

    Problem 2147 A-B Game Time Limit: 1000 mSec Memory Limit : 32768 KB  Problem Description Fat brother ...

  5. 2016阿里校招python研发面试

    一面: 面:说说你们学校的主修课程. 学校开的全是尼玛java课,这个我是想了有一会的. 面:看你简历写了会jquery,来问你个简单的jquery问题 :jQuery支不支持css引入. 呵呵 面: ...

  6. 【贪心】codeforces A. Heidi and Library (easy)

    http://codeforces.com/contest/802/problem/A [题意] 有一个图书馆,刚开始没有书,最多可容纳k本书:有n天,每天会有人借一本书,当天归还:如果图书馆有这个本 ...

  7. 匿名函数--lambda函数

    匿名函数 匿名函数:为了解决一些功能很简单的需求而设计的一句话函数 (python对匿名函数支持有限,只有一些简单的条件下可以用匿名函数) 匿名函数固定格式: func = lambda *args: ...

  8. HDU 6441 费马大定理+勾股数

    #include <bits/stdc++.h> #define pb push_back #define mp make_pair #define fi first #define se ...

  9. 牛客网暑期ACM多校训练营(第九场)D

    链接:https://www.nowcoder.com/acm/contest/147/D来源:牛客网 Niuniu likes traveling. Now he will travel on a ...

  10. java基础语法1

    一:基础语法之--标识符,修饰符,关键字 1.标识符: 定义:类名.变量名以及方法名都被称为标识符.自定义的名字. 注意: ·所有的标识符都应该以字母(A-Z或者a-z),美元符($).或者下划线(_ ...