博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[Android Pro] Java进阶学习:jar打包详解
阅读量:7090 次
发布时间:2019-06-28

本文共 2622 字,大约阅读时间需要 8 分钟。

jar文件听说过吗,没有?或者陌生!好,没关系,这就是我们的第一站:打包发布。  

   为什么会有这个玩意呢,首先,这是jar的全称:JavaTM Archive (JAR) file,是的,就是java存档文件。这有点类似zip文件,想一想它是干什么的用的呢,压缩!?没错就是要压缩,将我们原先零散的东西放到一下,重新 组织,所有这些目的只有一个:方便!好了,不用管他是怎么压缩的,我们的重点是哪些是我们要压缩的(输入),还有压缩成了什么(输出),进而将它发布(部 署)。   

  那我们的输入(要压缩的东西)主要是class文件,还有辅助的资源(这其中可能有图片,jsp文件,html文件等等)。 Jar技术在jdk1.1版本中就已存在,在1.2中又有了增强。接下来说说jar的好处吧,这是官方的描述:安全,快速下载,压缩,猎取包,版本化包, 可携。  

  说了这么多,我们现在开始实施。   

  先打开命令提示符(win2000或在运行框里执行cmd命令,win98为DOS提示符),输入jar Chelp,然后回车(如果你盘上已经有了jdk1.1或以上版本),看到什么:   

  用法:jar {ctxu}[vfm0Mi] [jar-文件] [manifest-文件] [-C 目录] 文件名 ...   

  选项:   

  -c 创建新的存档

  -t 列出存档内容的列表

  -x 展开存档中的命名的(或所有的〕文件

  -u 更新已存在的存档

  -v 生成详细输出到标准输出上

  -f 指定存档文件名

  -m 包含来自标明文件的标明信息

  -0 只存储方式;未用zip压缩格式

  -M 不产生所有项的清单(manifest〕文件

  -i 为指定的jar文件产生索引信息

  -C 改变到指定的目录,并且包含下列文件:  

  如果一个文件名是一个目录,它将被递归处理。   

  清单(manifest〕文件名和存档文件名都需要被指定,按'm' 和 'f'标志指定的相同顺序。   

  示例1:将两个class文件存档到一个名为 'classes.jar' 的存档文件中:

jar cvf classes.jar Foo.class Bar.class  

     示例2:用一个存在的清单(manifest)文件 'mymanifest' 将 foo/ 目录下的所有文件存档到一个名为 'classes.jar' 的存档文件中:

  

jar cvfm classes.jar mymanifest -C foo/A.txt -C foo/B.txt
jar cvf ${baseDir}/plugin.jar  -C ${baseDir} com  -C ${baseDir} assets

 jar基本操作:   

  1. 创建jar文件  

    jar cf jar-file input-file(s) 
c---want to Create a JAR file. 
f---want the output to go to a file rather than to stdout. 
eg: 1)jar cf myjar.jar query_maintain_insert.htm 
2)jar cvf myjar.jar query_maintain_insert.htm 
v---Produces verbose(详细的) output.
    3)jar cvf myjar.jar query_maintain_insert.htm mydirectory 
4)jar cv0f myjar.jar query_maintain_insert.htm mydirectory 
0---don't want the JAR file to be compressed. 
5)jar cmf MANIFEST.MF myjar.jar yahh.txt 
m---Used to include manifest information from an existing manifest file. 
6)jar cMf MANIFEST.MF myjar.jar yahh.txt 
M---the default manifest file should not be produced. 
7)jar cvf myjar.jar * 
*---create all contents in current directory. 

  2. 察看jar文件   

    jar tf jar-file 
t---want to view the Table of contents of the JAR file. 
eg: 1)jar vft yahh.jar 
v---Produces verbose(详细的) output.  

  3. 提取jar文件  

    jar xf jar-file [archived-file(s)] 
x---want to extract files from the JAR archive. 
eg: 1)jar xf yahh.jar yahh.txt(仅提取文件yahh.txt)

  2)jar xf yahh.jar alex/yahhalex.txt(仅提取目录alex下的文件yahhalex.txt)  

  3)jar xf yahh.jar(提取该jar包中的所有文件或目录)  

  4. 修改Manifest文件  

    jar cmf manifest-addition jar-file input-file(s) 
m---Used to include manifest information from an existing manifest file.  

  5. 更新jar文件  

    jar uf jar-file input-file(s) 
u---want to update an existing JAR file.
分类:  ,
本文转自demoblog博客园博客,原文链接http://www.cnblogs.com/0616--ataozhijia/p/5648438.html如需转载请自行联系原作者
demoblog
你可能感兴趣的文章
Struts2 漏洞分析及如何提前预防
查看>>
Python Pandas merge 的使用
查看>>
SVN版本库的迁移
查看>>
gRPC Windows编译应用
查看>>
设置 Linux 的 LD_LIBRARY_PATH 变量
查看>>
内核中的链表彻底分析与运用
查看>>
C#线程运行的机制和原理
查看>>
ecshop 导入自定义css
查看>>
Linux常用命令
查看>>
新版TeamTalk完整部署教程
查看>>
java实现泛域名解析,附SpringMVC源码示例
查看>>
mysql 导出 csv格式数据
查看>>
从Exchange 通往Office 365系列(十五)配置ADRMS与Exchange结合
查看>>
好用的软件之Xmind
查看>>
elasticsearch rpm安装以及配置修改
查看>>
Javascript获取元素的坐标
查看>>
使用 lsof 查找打开的文件
查看>>
Linkwedo 提升信息在决策中的力量
查看>>
雨林木风GhostXP_SP3装机版YN11.6_2011.06更新
查看>>
我的友情链接
查看>>