jar包 小结

什么是jar包?

        JAR 文件就是 Java Archive File,是 Java 的一种文档格式。JAR 文件非常类似 ZIP 文件.准确的说,它就是 ZIP 文件,所以叫它文件包。

JAR 文件与 ZIP 文件唯一的区别就是在 JAR 文件的内容中,包含了一个 META-INF/MANIFEST.MF 文件,这个文件是在生成 JAR 文件的时候自动创建的。MANIFEST 是 JAR 文件包的特征。

        Java 程序是由若干个 .class 文件组成的。这些 .class 文件必须根据它们所属的包不同而分级分目录存放;把已经做好了一些功能相关的java文件编译后的class文件打成一个包,就是jar包,这样你可以把它加入到你的工程中去,就可以在你的工程里面调用jar中相关的类了,而不用自己重写。


如何制作jar包?

有两种方法:

方法一 在命令行打包

        先打开命令提示符输入jar –help,然后回车,看到如下:

==================================
用法: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/ .


一、操作零散的单个或几个class文件

    jar cvf ibstool.jar com/cn/ibs/TurnD.class com/cn/ibs/TurnB.class  

二、把一个文件夹下面的所有class文件打成jar包

 首先:  进入到 \bin\classes\ 目录下
 然后:jar cvf wanghai.jar com\tarena\utils\    #结果 会把 com\tarena\utils\ 目录下的 所有 class文件 打包,

方法二 在eclipse里打包(推荐):

选中  具体的类,右击 选择  export  -> java -> JAR file ->next -> 选择 保存位置 -> finish


在eclipse里的android项目里使用jar包,首先 在项目的顶层目录里 创建文件夹 libs/ ,并且把用到的jar包拷贝到 里面,

接着 在 eclipse 里点击 具体的jar包,右击 选择 Build Path -> Add to Build Path,这样就ok了。



原文地址:https://www.cnblogs.com/liulaolaiu/p/11744720.html