JAR包是Java中所特有一种压缩文档。存储格式格式就是.zip包。
但是与ZIP包不同的地方是,生成JAR包时候,会自动添加一个META-INF\MANIFEST.MF文件

命令参数
jar {c t x u f }[ v m e 0 M i ][-C 目录]文件名...
其中{ctxu}这四个参数必须选选其一。[v f m e 0 M i ]是可选参数,文件名也是必须的。
-c  创建一个jar包
-t  显示jar中的内容列表
-x  解压jar包
-u  添加文件到jar包中
-f  指定jar包的文件名
-v  生成详细的报造,并输出至标准设备
-m  指定manifest.mf文件.(manifest.mf文件中可以对jar包及其中的内容作一些一设置)
-0  产生jar包时不对其中的内容进行压缩处理
-M  不产生所有文件的清单文件(Manifest.mf)。这个参数与忽略掉-m参数的设置
-i    为指定的jar文件创建索引文件
-C  表示转到相应的目录下执行jar命令,相当于cd到那个目录,然后不带-C执行jar命令

使用示例
(1)创建jar包
jar cf hello.jar file1 file2
创建hello.jar,并将file1,file2 (jar命令可以指定多个文件) 添加到hello.jar包中,如hello.jar存在,则覆盖。
创建后的jar包格式如下
hello.jar
├ META-INF
│ └ MANIFEST.MF
├ file1
└ file2

(2)创建并显示打包过程
jar cvf hello.jar test
输出如下(不同操作系统输出可能略有不同)
已添加清单
: test/(输入 = 0) (输出 = 0)(存储了 0%)
正在添加:test/(输出= 0) (输出 = 0)(存储了 0%)
正在添加:test/Test1.class(输出= 1497) (输出= 818)(压缩了 45%)
正在添加:test/Test2class(输出= 1344) (输出= 736)(压缩了 45%)

(3)显示jar包
jar tvf hello.jar
查看hello.jar包的内容
如果jar包不存在,会抛出java.io.FileNotFoundException
如果jar包格式错误(不是ZIP格式),会抛出 java.util.zip.ZipException

(4)解压jar包
jar xvf hello.jar
 解压hello.jar至当前目录
 
(5)jar中添加文件
jar uf hello.jar HelloWorld.java
将HelloWorld.java添加到hello.jar包中

(6)创建不压缩内容jar包
jar cvf0 hello.jar *.class
使用当前目录中所有的.class文件生成一个不压缩jar包
 
(7)创建jar包(指定的MANIFEST.MF文件)
jar cvfm hello.jar manifest.mf file1
创建的jar包时,会使用指定的 META-INF/MANIFEST.MF文件
 
(8)忽略manifest.mf文件
jar cvfM hello.jar test
生成的jar包中不包括META-INF目录及MANIFEST.MF文件
 
(9)加-C应用:
jar cvfm hello.jar mymanifest.mf -C temp/
表示在切换到temp目录下然后再执行jar命令
 
(10)jar文件生成索引列表
jar  i  hello.jar  
在hello.jar包的META-INF文件夹下生成一个名为INDEX.LIST的索引文件。

常用jar命令的更多相关文章

  1. jar命令的用法详解

    本文详细讲述了JAR命令的用法,对于大家学习和总结jar命令的使用有一定的帮助作用.具体如下: JAR包是Java中所特有一种压缩文档,其实大家就可以把它理解为.zip包.当然也是有区别的,JAR包中 ...

  2. 转:linux下jar命令与jar包

    原文链接:http://blog.chinaunix.net/uid-692788-id-2681136.htmlJAR包是Java中所特有一种压缩文档,其实大家就可以把它理解为.zip包.当然也是有 ...

  3. Java中jar命令详解

    做项目的时候我们肯定接触过很多jar包,那么jar包是什么呢?笔者了解到jar是java archive file 的简写.从名字就可以知道,它的应用与Java息息相关.下面就详细介绍如何自己生成ja ...

  4. Android 常用 adb 命令总结

    Android 常用 adb 命令总结 针对移动端 Android 的测试, adb 命令是很重要的一个点,必须将常用的 adb 命令熟记于心, 将会为 Android 测试带来很大的方便,其中很多命 ...

  5. oracle rac常用的命令

    oracle rac常用的命令 节点层:olsnodes 网络层: oifcfg 集群层:crsctl,ocrcheck,ocrdump,ocrconfig 应用层:srvctl,onsctl,crs ...

  6. 【转】Android 常用 adb 命令总结

    原文地址:http://testerhome.com/topics/2565 针对移动端 Android 的测试, adb 命令是很重要的一个点,必须将常用的 adb 命令熟记于心, 将会为 Andr ...

  7. 常用Hadoop命令(bin)

    **** bin 是二进制文件的意思,sbin....据说是superbin(管理员的bin) HDFS命令 某个文件的blocks信息 hadoop fsck /user/xx -files -bl ...

  8. java基础基础总结----- 常用DOS命令(一)

    常用DOS命令 dir(directory):列出当前目录下的文件以及文件夹 mkdir (make directory) : 创建目录 rd (remove directory): 删除目录 cd ...

  9. Hadoop集群-HDFS集群中大数据运维常用的命令总结

    Hadoop集群-HDFS集群中大数据运维常用的命令总结 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本篇博客会简单涉及到滚动编辑,融合镜像文件,目录的空间配额等运维操作简介.话 ...

随机推荐

  1. (转)scala中map与flatMap浅析

    在函数式语言中,函数作为一等公民,可以在任何地方定义,在函数内或函数外,可以作为函数的参数和返回值,可以对函数进行组合.由于命令式编程语言也可以通过类似函数指针的方式来实现高阶函数,函数式的最主要的好 ...

  2. C#应用视频教程1.4 实现完整以太网通讯

    对于事件和委托机制不够理解的读者可以参考本节提供的委托相关的范例程序,这个是控制台的程序,比较简洁(书店发布一本书的事件注册到某个读者A身上,原理跟前面一小节讲的是一致的,只不过没有通过委托对外发送数 ...

  3. .NET破解之繁星代码生成器

    本教程只能用于学习研究,不可进行任何商业用途.如有使用,请购买正版,尊重他人劳动成果和知识产权! 对象:繁星代码生成器0.96 环境:Win7 x64 工具:exeinfoPE(查壳).de4dot ...

  4. Flutter 动画使用

    旋转动画  透明度变换动画  在Android中,可以通过View.animate()对视图进行动画处理,那在Flutter中怎样才能对Widget进行处理 在Flutter中,可以通过动画库给wid ...

  5. [转发]using的几种用法

    1.using指令.using + 命名空间名字,这样可以在程序中直接用命令空间中的类型,而不必指定类型的详细命名空间,类似于Java的import,这个功能也是最常用的,几乎每个cs的程序都会用到. ...

  6. Java 同步器

    CyclicBarrier是什么 CyclicBarrier也叫同步屏障,在JDK1.5被引入,可以让一组线程达到一个屏障时被阻塞,直到最后一个线程达到屏障时,所以被阻塞的线程才能继续执行.Cycli ...

  7. Learn X in Y minutes Where X=c++

    http://learnxinyminutes.com/docs/c++/ C++ is a systems programming language that, according to its i ...

  8. Unix 网络编程 I/O 模型 第六章

    前提,也是重点是, 当接收收据.或者读取数据时,分两步 1 等待数据准备好. 2 从内核拷贝数据到进程. 对于一个network IO 即 socket(这里我们以read举例),它会涉及到两个系统对 ...

  9. 在Form中调用请求并直接打印结果

    请求打印,一般都是需要提交请求,然后在请求界面查看输出,将打印内容显示在浏览器上 现可在通过调用请求后直接打印到浏览器上, 实现步骤如下:   ---设置请求打印模板      l_req_bool ...

  10. Tomcat 改服务器编码(Java 修改字符串编码格式)

    对于客户端发来的汉字,我们一般需要转码: ------------------------------------------------------------------------------- ...