命令选项:
-c 在标准输出上创建新归档或空归档。
-C 在执行 jar 命令期间更改目录。例如:“jar -uf foo.jar -C classes *”将classes目录内的所有文件加到foo.jar中,但不添加类目录本身。
-f 第二个参数指定要处理的jar文件(文件列表中的第一个元素是要创建或访问的存档文件名字)。在-c(创建)情形中,第二个参数指的是要创建的jar文件的名称(不是在标准输出上)。在-t(表(或-x(抽取)这两种情形中,第二个参数指定要列出或抽取的jar文件。
-i 应提供的索引信息
-m 包括指定的现有清单文件中的清单信息(文件列表的第二个元素是外部的清单文件名)。用法举例:“jar cmf myManifestFile myJarFile *.class”
-M 不创建项目的清单文件。
-t 在标准输出上列出内容表(存档文件的内容应制成表格)。
-u 通过添加文件或更改清单来更新现有的 JAR 文件。例如:“jar -uf foo.jar foo.class”将文件 foo.class 添加到现有的JAR文件foo.jar中,而“jar umf manifest foo.jar”则用manifest中的信息更新foo.jar的清单。
-v 在标准错误输出设备上生成长格式的输出结果(当工具执行时显示的详细信息)。
-x[file] 从标准输入提取所有文件,或只提取指定的文件。如果省略了file,则提取所有文件;否则只提取指定文件。
-0 只储存,不进行 ZIP 压缩。
示例:
转自:http://hi.baidu.com/lck0502/item/043c15251fc2814446996261
1:将当前目录下所有CLASS文件打包成新的JAR文件:jar cf file.jar *.class *.gif(创建一个名为file.jar文件包含当前目录下的所有.class和.gif文件)
2:显示一个JAR文件中的文件列表:jar tf file.jar
3:将当前目录下的所有文件增加到一个已经存在的JAR文件中 :jar cvf file.jar *
4:“jar –cvf m n” :将文件打包成jar压缩包
m: 要生成jar包的名字
n: 要压缩文件的文件名(可以是多个文件或一个目录)
生成的jar文件实际上就是一个普通的zip压缩文件
unzip *.jar :解包的命令
5: 如果存在一个可用的清单文件如file.mf,使用时用下面命令:jar cfm file.jar file.mf *.class *.gif
6:展开一个jar文件:jar xf file.jar(展开file.jar的内容,并存放在当前目录下)
7:更新一个存在的jar文件:将file1.class存放到file.jar文件:
jar -uf file.jar file1.class
8:递归目录:将dirx目录下面的文件存放到file.jar中:jar -uf file.jar -C dirx *