Linux下打包压缩war、解压war包和jar命令 – DBA

环境

RedHat Linux 9 + VWWare 8.0 + SSH 3.2.9 + Putty 0.62

问题

Linux下打包压缩war、解压war包和jar命令

解决

把project_a文件夹下的文件打包成project.war

1. 打包

jar -xvf project.war /project_a

-c 创建war包

-v 显示过程信息

-f 指定 JAR文件名,通常这个参数是必须的

-M 不产生所有项的清单(MANIFEST〕文件,此参数会忽略 -m参数

-0 这个是阿拉伯数字,只打包不压缩的意思

2. 解压

jar -xvf project.war

解压到当前目录

jar 命令详解

使用不带任何的 jar 命令我们可以看到 jar 命令的用法如下:

jar {ctxu}[vfm0M] [jar-文件] [manifest-文件] [-C目录]文件名 …

其中 {ctxu} 是 jar 命令的子命令,每次 jar命令只能包含 ctxu中的一个,它们分别表示:

-c 创建新的 JAR文件包

-t 列出 JAR文件包的内容列表

-x 展开 JAR文件包的指定文件或者所有文件

-u 更新已存在的 JAR文件包 (添加文件到 JAR文件包中)

特别注意,在参数的下达中, c/x/t/u仅能存在一个!不可同时存在!

因为不可能同时压缩与解压缩。

-z :是否同时具有 gzip的属性?亦即是否需要用 gzip压缩?

-j :是否同时具有 bzip2的属性?亦即是否需要用 bzip2压缩?

-v :压缩的过程中显示文件!这个常用,但不建议用在背景执行过程!

-f 指定 JAR文件名,通常这个参数是必须的

请留意,在 f 之后要立即接档名喔!不要再加参数!

   例如使用『 tar -zcvfP tfile sfile』就是错误的写法,要写成

   『 tar -zcvPf tfile sfile』才对喔!

-p :使用原文件的原来属性(属性不会依据使用者而变)

-P :可以使用绝对路径来压缩!

-N :比后面接的日期(yyyy/mm/dd)还要新的才会被打包进新建的文件中!

–exclude FILE:在压缩的过程中,不要将 FILE打包!

-m 指定需要包含的 MANIFEST清单文件

-0 只存储,不压缩,这样产生的 JAR文件包会比不用该参数产生的体积大,但速度更快

-M 不产生所有项的清单(MANIFEST〕文件,此参数会忽略 -m参数

[jar-文件]即需要生成、查看、更新或者解开的 JAR文件包,它是 -f参数的附属参数

[manifest-文件]即 MANIFEST清单文件,它是 -m参数的附属参数

[-C 目录]表示转到指定目录下去执行这个 jar命令的操作。它相当于先使用 cd命令转该目录下再执行不带 -C参数的 jar命令,它只能在创建和更新 JAR文件包的时候可用。  

文件名 … 指定一个文件/目录列表,这些文件/目录就是要添加到 JAR文件包中的文件/目录。如果指定了目录,那么 jar命令打包的时候会自动把该目录中的所有文件和子目录打入包中。

参考资料

http://blog.163.com/wenming_126@126/blog/static/19654138200852092835744/

http://blog.csdn.net/wearegouest/article/details/5844591

望着它们,我睡着了。今天已经过去——我生命中所有天中的一天,

Linux下打包压缩war、解压war包和jar命令 – DBA

相关文章:

你感兴趣的文章:

标签云: