制作jar文件,解冻jar文件

JAR是向Web服务器或者企业级Java安装部署类的基础

讲一个Java应用创建为JAR文件,首先进入类所在的目录,然后执行

--------------------
jar cvf test.jar
--------------------

执行完命令后,你会得到app.jar文件了。

 

指定main-calss的JAR文件制作

先制作manifest.mf文件:

----------struts.jar例子-----------------------------------------------------------------------
Manifest-Version: 1.0
Created-By: Apache Ant 1.5.1
Extension-Name: Struts Framework
Specification-Title: Struts Framework
Specification-Vendor: Apache Software Foundation
Specification-Version: 1.1
Implementation-Title: Struts Framework
Implementation-Vendor: Apache Software Foundation
Implementation-Vendor-Id: org.apache
Implementation-Version: 1.1
Class-Path:  commons-beanutils.jar ...
确保文件的最后包括一个空行,否则java不会认可这个清单项。会使倒数第二行的字符丢失。
-------------------------------------------------------------------------------------------------
更详细关于JAR文件的规范请见
http://java.sun.com/j2se/1.3/docs/guide/jar/jar.html

 

但是一般情况我们不需要这么详细:

-----------manifest.mf文件----------
Main-Class: com.test.mainclass
----------------------------------------

指定main-class就可以了。

然后执行以下命令

------------------------------------
jar cvfm test.jar ../manifest.mf test
------------------------------------

【注意】
manifest.mf文件不要放在class路径,不然这个文件也会成为JAR文件的一员。

命令中manifest.mf是一个路径,如[../manifest.mf]表示在当前路径的父目录下的文件。

然后在JAR文件所在路径下执行以下命令

---------------------
java -jar test.jar
---------------------

JAR文件就运行起来了。

 

JAR文件的解冻:

解冻比制作会简单的多。

------------------
jar xvf test.jar
------------------

解冻后的路径为当前路径(就是你cmd窗口或者shell窗口所运行的工作路径)。

比如test.jar在d:/test下,你要解压到d:/temp/aa/ 路径下。

------------------------
cd d:/temp/aa/
cd d:
jar xvf d:/test/test.jar

-----------------------

这样你就可以在d:/temp/aa/下看到test.jar的解冻文件了。

 

下面说明下JAR具体的解释

--------------------------------------------------------------------------------

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

--------------------------------------------------------------------------------

其中

{ctxu}

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

-c 创建新的 JAR 文件包

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

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

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

[vfm0M]

其中的选项可以任选,也可以不选,它们是 jar 命令的选项参数

-v 生成详细报告并打印到标准输出

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

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

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

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

[jar-文件]

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

[manifest-文件]

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

[-C 目录]
表示转到指定目录下去执行这个 jar 命令的操作。它相当于先使用 cd 命令转该目录下

再执行不带 -C 参数的 jar 命令,它只能在创建和更新 JAR 文件包的时候可用。

文件名 ...

指定一个文件/目录列表,这些文件/目录就是要添加到 JAR 文件包中的文件/目录。

如果指定了目录,那么 jar 命令打包的时候会自动把该目录中的所有文件和子目录打入包中。

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值