Java - 解压和打包Jar

解压和打包Jar

本文地址:http://blog.csdn.net/caroline_wendy

简介

1. 压缩包
jar cvf filename.jar a.class b.class: 压缩指定文件;
jar cvf weibosdkcore.jar *: 全部压缩;
2. 解压包
jar xvf test.jar

详解

jar命令生成、查看、更新、解开jar包的作用,包含 META-INF/MANIFEST.MF文件。
它是 jar包生成的时候,自动创建的,主要负责指定jar包的 main文件位置当前文件夹
jar命令的参数详解:
C:\>jar cf lm.jar
'c' 标志要求指定清单或输入文件!
用法: 
jar {ctxui}[vfm0Me] [jar-file] [manifest-file] [entry-point] [-C dir] files ...
选项包括:
    -c  创建新的归档文件
    -t  列出归档目录
    -x  解压缩已归档的指定(或所有)文件
    -u  更新现有的归档文件
    -v  在标准输出中生成详细输出
    -f  指定归档文件名
    -m  包含指定清单文件中的清单信息
    -e  为捆绑到可执行 jar 文件的独立应用程序
        指定应用程序入口点
    -0  仅存储;不使用任何 ZIP 压缩
    -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

在c盘下创建了 Executable Jar File类型的lm.jar包。
C:\>jar cf lm.jar Lm.class Lm.java
 

示例 4

添加v参数显示打包详细过程:
C:\jar>jar cvf lm.jar Lm.class

标明清单(manifest):增加:Lm.class(读入= 410) (写出= 283)(压缩了 30%)
其中c参数表示创建jar包,f参数是指定的jar包文件名。在使用jar命令的时候,要指定必须的参数:
 -c  创建新的归档文件
 -t  列出归档目录
 -x  解压缩已归档的指定(或所有)文件
 -u  更新现有的归档文件

示例 5

运行刚生成的jar包:
 C:\>java -jar lm.jar
Failed to load Main-Class manifest attribute from lm.jar
根据英文错误提示,好像读取lm.jar包的manifest属性失败。

示例 6

创建不包含META-INF/MANIFEST.MF文件的jar包
C:\jar>jar cvfM lm1.jar Lm.class
增加:Lm.class(读入= 410) (写出= 283)(压缩了 30%)

示例 7

显示jar包中的文件
C:\jar>jar tf lm.jar
META-INF/
META-INF/MANIFEST.MF
Lm.class
 

示例 8

由于创建jar包的时候用了M参数,所以就没有META-INF目录和META-INF/MANIFEST.MF文件
C:\jar>jar tf lm1.jar
Lm.class
 

示例 9

显示jar包的文件和文件详细信息
C:\jar>jar tvf lm.jar
     0 Mon Sep 26 23:09:34 CST 2011 META-INF/
    75 Mon Sep 26 23:09:34 CST 2011 META-INF/MANIFEST.MF
   410 Mon Sep 26 22:09:00 CST 2011 Lm.class
这些详细信息包括读入的字节,jar包中读入的时间,目录或文件名

示例 10

解压jar包到当前目录中
C:\jar>jar xf lm.jar
不显示任何信息,但是解压成功
### 回答1: 在Linux命令行下,可以使用以下命令将一个jar解压到指定目录: 1. 首先,打开终端。 2. 切换到要将jar解压到的目录。可以使用`cd`命令来切换目录。例如,要切换到名为`mydir`的目录,可以输入`cd mydir`。 3. 输入以下命令来解压jar包: ``` jar -xvf /path/to/your.jar ``` 请确保将`/path/to/your.jar`替换为你的jar包的完整路径。 上述命令中使用的选项含义如下: - `-x`: 表示解压- `-v`: 表示显示详细的输出信息。 - `-f`: 表示后面紧跟着的参数是要处理的jar包。 执行命令后,jar包将被解压到当前目录。 如果你想解压到指定目录,可以使用以下命令: ``` jar -xvf /path/to/your.jar -C /path/to/your/directory ``` 请确保将`/path/to/your.jar`替换为你的jar包的完整路径,将`/path/to/your/directory`替换为你想要解压到的目录的完整路径。 上述命令中: - `-C`: 表示解压到指定目录。 执行命令后,jar包将被解压到指定目录中。 希望以上回答对你有帮助! ### 回答2: 要在Linux上解压一个jar包并将其解压到指定目录,您可以按照以下步骤进行操作: 1. 打开终端窗口并导航到您想要保存解压后文件的目录。 2. 使用以下命令解压jar文件: ``` unzip /path/to/file.jar ``` 将`/path/to/file.jar`替换为您实际的jar文件路径。 3. 如果要将jar文件解压到不同的目录,可以使用以下命令: ``` unzip /path/to/file.jar -d /path/to/output/directory ``` 将`/path/to/output/directory`替换为您希望将文件解压到的目录路径。 4. 如果您需要将文件压缩为指定的编码格式,可以使用以下命令: ``` unzip -O encoding /path/to/file.jar ``` 将`encoding`替换为您希望使用的实际编码格式,例如UTF-8。 通过按照上述步骤,在Linux上您可以成功解压jar包并将其解压到指定目录中。 ### 回答3: 在Linux系统中,要将一个jar解压到指定目录,可以通过使用命令行下的jar命令来完成。 首先,你需要打开终端窗口,然后使用cd命令切换到包含jar包的目录。 接下来,使用以下命令来解压jar包到指定目录: jar -xf <文件名>.jar -C /指定目录/ 其中,-xf选项表示解压文件,<文件名>.jar是要解压jar包的文件名,-C选项后面跟着指定的目录。 比如,如果你要将名为example.jarjar解压到名为target的目录,你可以使用以下命令: jar -xf example.jar -C /target/ 这将会将example.jar解压到当前目录下的target目录中。 当运行完命令后,你可以在指定目录中找到解压后的文件。 另外,如果你需要查看解压后的文件结构,你可以使用tree命令来显示目录结构。使用以下命令来安装tree命令: sudo apt-get install tree 然后,在指定目录中使用tree命令: tree /指定目录/ 这将会显示出指定目录下的文件目录结构。 通过以上的方法,你可以在Linux系统中将jar解压到指定目录。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ManonLegrand

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值