6.12.3 关于JAR包的技巧
JAR
文件实际上就是ZIP
文件,所以可以使用一些常见的解压缩工具来解压缩JAR
文件,如Windows
下的WinRAR
、 WinZip
等,以及Linux
下的unzip
等。使用WinRAR
和WinZip
等工具比使用JAR
命令更加直观、方便;而使用unzip
则可通过d选项来指定目标目录。
解压缩一个JAR
文件时不能使用jar
的-C
选项来指定解压的目标目录,因为-C
选项只在创建或者更新包时可用。
jar命令只能解压到当前目录下
如果需要将文件解压缩到指定目录下,则需要先将该JAR
文件拷贝到目标目录下,再使用jar命令进行解压缩。
Linux中使用unzip解压jar包到指定目录
如果使用unzip
,只需要指定一个-d
选项即可指定解压目录。例如:unzip test.jar -d dest/
Windows中通过压缩工具手动创建jar包
如果不喜欢jar
命令的字符界面,也可以使用WinRAR
工具来创建JAR
包。因为WinRAR
工具创建压缩文件时不会自动添加清单文件,所以需要手动添加清单文件,即需要手动建立META-INF
路径,并在该路径下建立一个MANIFEST.MF
文件,该文件中至少需要如下两行:
1 | Manifest-Version: 1.0 |
上面的MANIFEST.MF
文件是一个格式敏感的文件,该文件的格式要求与前面自定义清单的格式要求完全一样。
接下来选中需要被压缩的文件、文件夹和META-INF
文件夹,单击右键弹出右键菜单,单击”添加到压缩文件(A)”,
然后选择压缩成ZIP
格式,并输入压缩后的文件名Test.jar
,然后单击”确定”按钮,即可生成一个JAR
包,与使用jar
命令生成的JAR
包没有区别。
java中的其他压缩包
除此之外,Java
还可能生成两种压缩包:WAR
包和EAR
包。其中WAR
文件是Web Archive File
,它对应一个Web
应用文档;而EAR
文件就是Enterprise Archive File
,它对应于一个企业应用文档(通常由Web
应用和EJB
两个部分组成)。实际上,WAR
包和EAR
包的压缩格式及压缩方式与JAR
包完全一样,只是改变了文件后缀而已。
原文链接: 6.12.3 关于JAR包的技巧