常用jar命令
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命令的更多相关文章
- jar命令的用法详解
本文详细讲述了JAR命令的用法,对于大家学习和总结jar命令的使用有一定的帮助作用.具体如下: JAR包是Java中所特有一种压缩文档,其实大家就可以把它理解为.zip包.当然也是有区别的,JAR包中 ...
- 转:linux下jar命令与jar包
原文链接:http://blog.chinaunix.net/uid-692788-id-2681136.htmlJAR包是Java中所特有一种压缩文档,其实大家就可以把它理解为.zip包.当然也是有 ...
- Java中jar命令详解
做项目的时候我们肯定接触过很多jar包,那么jar包是什么呢?笔者了解到jar是java archive file 的简写.从名字就可以知道,它的应用与Java息息相关.下面就详细介绍如何自己生成ja ...
- Android 常用 adb 命令总结
Android 常用 adb 命令总结 针对移动端 Android 的测试, adb 命令是很重要的一个点,必须将常用的 adb 命令熟记于心, 将会为 Android 测试带来很大的方便,其中很多命 ...
- oracle rac常用的命令
oracle rac常用的命令 节点层:olsnodes 网络层: oifcfg 集群层:crsctl,ocrcheck,ocrdump,ocrconfig 应用层:srvctl,onsctl,crs ...
- 【转】Android 常用 adb 命令总结
原文地址:http://testerhome.com/topics/2565 针对移动端 Android 的测试, adb 命令是很重要的一个点,必须将常用的 adb 命令熟记于心, 将会为 Andr ...
- 常用Hadoop命令(bin)
**** bin 是二进制文件的意思,sbin....据说是superbin(管理员的bin) HDFS命令 某个文件的blocks信息 hadoop fsck /user/xx -files -bl ...
- java基础基础总结----- 常用DOS命令(一)
常用DOS命令 dir(directory):列出当前目录下的文件以及文件夹 mkdir (make directory) : 创建目录 rd (remove directory): 删除目录 cd ...
- Hadoop集群-HDFS集群中大数据运维常用的命令总结
Hadoop集群-HDFS集群中大数据运维常用的命令总结 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本篇博客会简单涉及到滚动编辑,融合镜像文件,目录的空间配额等运维操作简介.话 ...
随机推荐
- 如何在Visual Studio(VS)2012里使用libsvm工具箱
原文:http://blog.csdn.net/u014691453/article/details/40393137 软件版本: Visual Studio版本:VS2012 (注:使用方法在 VS ...
- C# int与string转化
1.int-->string ; string s1 = a.ToString(); string s2 = Convert.ToString(a); 2.string -->int &q ...
- Mysql5.7.22版本,插入中文乱码的问题
首先,mysql5.7.22版本的免安装版本的,需要自己配置信息,而且容易出现问题,这里还是建议下载安装版本.msi,按照安装教程进行安装:安装成功后会在数据存储的data文件下找到参数配置文件my. ...
- iOS tabbar 图片,最佳大小方式
iOS tabbar 图片,最佳大小方式 文档大小 30 *30 retaina 60 *60 最佳大小 48 *32 参考:http://stackoverflow.com/questions/15 ...
- Docker随笔:Hyper-V PowerShell Module is not available报错解决方法
当在win10使用docker-machine创建Hyper-v虚拟机时,返回了一个错误”Error with pre-create check: "Hyper-V PowerShell M ...
- zuul源码分析-探究原生zuul的工作原理
前提 最近在项目中使用了SpringCloud,基于zuul搭建了一个提供加解密.鉴权等功能的网关服务.鉴于之前没怎么使用过Zuul,于是顺便仔细阅读了它的源码.实际上,zuul原来提供的功能是很单一 ...
- QtGui.QComboBox
The QtGui.QComboBox is a widget that allows a user to choose from a list of options. #!/usr/bin/pyth ...
- 排序算法及其java实现
各种排序算法:冒择路(入)兮(稀)快归堆,桶式排序,基数排序 冒泡排序,选择排序,插入排序,稀尔排序,快速排序,归并排序,堆排序,桶式排序,基数排序 一.冒泡排序(BubbleSort) 1. 基本思 ...
- taro 打包微信小程序运行失败(二)
1.报错信息 thirdScriptError sdk uncaught third Error Cannot read property 'dispatch' of null TypeError: ...
- Maven + Apache Felix + CXF + DOSGi series
This is a blog series on how to combine Maven + Apache Felix + CXF + DOSGi. The information presente ...