概述
jar命令解析
文章目录
- jar命令解析
- 1、什么是jar
- 2、命令格式
- 3、用法示例
- 3.1、用处
- 3.2、解压jar
- 3.3、打包jar
- 3.4、列出jar包内的文件
- 3.5、替换jar包文件
- 3.6、运行jar包
1、什么是jar
JAR(Java Archive)是Java的归档文件,它是一种与平台无关的文件格式,它允许将许多文件组合成一个压缩文件。
JAR文件(Java归档,英语:Java Archive)是一种软件包文件格式,通常用于聚合大量的Java类文件、相关的元数据和资源(文本、图片等)文件到一个文件,以便开发Java平台应用软件或库。
2、命令格式
用法: jar {ctxui} [vfmn0PMe] [jar-file] [manifest-file] [entry-point] [-C dir] files …
{ctxu},这四个参数必须选选其一。
{v f m e 0 M i},这几个是可选参数,
文件名也是必须的。
查看 jar 命令用法
$ jar --help
选项:
-c 创建新档案
-t 列出档案目录
-x 从档案中提取指定的 (或所有) 文件
-u 更新现有档案
-v 在标准输出中生成详细输出
-f 指定档案文件名
-m 包含指定清单文件中的清单信息
-n 创建新档案后执行 Pack200 规范化
-e 为捆绑到可执行 jar 文件的独立应用程序
指定应用程序入口点
-0 仅存储; 不使用任何 ZIP 压缩(此处为零,非O)
-P 保留文件名中的前导 ‘/’ (绝对路径) 和 “…” (父目录) 组件
-M 不创建条目的清单文件
-i 为指定的 jar 文件生成索引信息
-C 更改为指定的目录并包含以下文件
如果任何文件为目录, 则对其进行递归处理。
清单文件名, 档案文件名和入口点名称的指定顺序
与 ‘m’, ‘f’ 和 ‘e’ 标记的指定顺序相同。
示例 1: 将两个类文件归档到一个名为 classes.jar 的档案中:
jar cvf classes.jar Foo.class Bar.class
示例 2: 使用现有的清单文件 ‘mymanifest’ 并将 foo/ 目录中的所有文件归档到 ‘classes.jar’ 中:
jar cvfm classes.jar mymanifest -C foo/ .
3、用法示例
3.1、用处
当在服务器上需要修改某些 fatjar的时候这些命令会非常有帮助,避免了直接上传大文件,可以直接将jar包解压后,替换自己的业务代码jar包,然后在重新压缩,会提高很多效率。
3.2、解压jar
# 解压jar包到该目录中
$ jar -xvf demo.jar
# 有时候我们需要解压jar包到指定目录,这时候用unzip反而更方便
$ unzip demo.jar ./demo
3.3、打包jar
# (M)不生成清单文件,(0)零不压缩,指定打包目录
$ jar -cvfM0 demo.jar BOOT-INF/ META-INF/ org/
# 打包当前目录所有
$ jar -cvfM0 demo.jar *
3.4、列出jar包内的文件
# 列出jar包内文件
$ jar -tf demo.jar
# 列出jar包内文件及详细信息
$ jar -tvf demo.jar
3.5、替换jar包文件
# 直接替换jar包里的文件,例如业务jar
# 将要替换的文件放到与jar包中同样的位置上
$ jar -uvf0 business.jar BOOT-INF/lib/cube-core.jar
3.6、运行jar包
$ java -jar demo.jar
# 运行jar包并输入日志到指定文件中
$ java -jar demo.jar > log.log 2>&1 &
最后
以上就是酷酷大炮为你收集整理的jar命令解析的全部内容,希望文章能够帮你解决jar命令解析所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复