分类: Java
2013-06-29 18:01:11
jar命令的用法:
下面是jar命令的帮助说明:
用法:jar {ctxui}[vfm0Me] [jar-file] [manifest-file] [entry-point] [-C dir] files ...
选项包括:
-c 创建新的归档文件
-t 列出归档目录
-x 解压缩已归档的指定(或所有)文件
-u 更新现有的归档文件
-v 在标准输出中生成详细输出
-f 指定归档文件名
-m 包含指定清单文件中的清单信息
-e 为捆绑到可执行 jar 文件的独立应用程序
指定应用程序入口点
-0 仅存储;不使用任何 ZIP 压缩
-M 不创建条目的清单文件
-i 为指定的 jar 文件生成索引信息
-C 更改为指定的目录并包含其中的文件
如果有任何目录文件,则对其进行递归处理。
清单文件名、归档文件名和入口点名的指定顺序
与 "m"、"f" 和 "e" 标志的指定顺序相同。
示例 1:将两个类文件归档到一个名为 classes.jar 的归档文件中:
jar cvf classes.jar Foo.class Bar.class
示例 2:使用现有的清单文件 "mymanifest" 并
将 foo/ 目录中的所有文件归档到 "classes.jar" 中:
jar cvfm classes.jar mymanifest -C foo/ .
下文假设编译后的class文件在bin目录下
一、打包成一般的jar包
输入如下命令即可:
其中,“-C bin”实际上是告诉jar命令先cd到bin目录下,再在此目录执行没有参数“-C bin”的命令,等价于:
二、打包成可运行的jar包
要打包成可运行的jar包,有两种方法,一是手动创建MANIFEST.MF文件,并在其中指定主类;二是使用jar的-e参数指定可运行jar包的入口点(即main类的完全名称).
以Java源代码行数统计程序的打包为例,演示如何打包:
1. 手动创建MANIFEST.MF文件:
1)首先编辑MANIFEST.MF文件,内容如下:
说明:
第一行指定清单的版本,若无,则JDK默认生成:Manifest-Version: 1.0
第二行指明创建的作者,若无,则JDK默认生成Created-By: 1.6.0_22(Sun Microsystems Inc.)
第三行指定主类所在类路径,
第四行指明程序运行的主类
2)使用jar命令进行打包:
说明:
参数f:指定打包后的包名。
参数m:指定自定义的MANIFEST.MF清单文件,否则,JDK会自动生成不包含Main-Class的默认清单。
参数c:指定是创建新的归档文件。
参数v:在标准输出中生成详细输出,该选项是可选的。
2. 使用-e参数指定入口点:
执行如下命令即可:
一、打包成一般的jar包:
步骤如下:
1)在要打包的项目上右击,选择Export
2)在弹出的窗口中,选择Java -> JAR File,然后点击next按钮
3)在JAR File Specification窗口中,设置打包成的文件名和存放位置,点击两侧next
4)在JAR Manifest Specification窗口中,设置MANIFEST.MF清单文件的配置,
若仅仅打包成单纯的jar包的话,不用做任何修改,采取默认即可
若打包成可执行jar包的话,可以使用已存在的MANIFEST文件或者直接选择Main class
5)点击Finish按钮,完成打包。
二、打包成可运行的jar包
步骤如下:
1)在要打包的项目上右击,选择Export
2)在弹出的窗口中,选择Java -> Runnable JAR File,然后点击next按钮
3)在Runnable JAR File Specification窗口中,选择Launch configuration和Export destination
4)点击Finish按钮,打包完成。
========================================================
========================================================
使用的工具及环境:
MyEclipse 7.5 Java Enterprise、JDK1.6.0
打包JAR文件:
首先,创建一个Java的项目,点击菜单栏File --> New --> Java Project --> Web Project Details ---> Project Name 填写好项目名称后(如:MyJaPro),点击Finish按钮(其他都是默认)。
第二步,鼠标右击,刚才创建项目名称(MyJaPro)之下的src文件夹,创建一个类步骤为:New ---> Class 会弹出一个New Java Class 窗口 :
1、填写一下”Package“的文本框,如:Test。
2、填写一下“Name“的文本框,如:TestMain。
3、勾选“Which method stubs would you like to create?” 的子项“public static vodi main(String[] args)”。
4、点击按钮 “Finish”。
第三步,编写好TestMain.java的文件,点击菜单栏的”Run“ ---> ”Run" 运行成功 (程序一定要运行成功)。
第四步,在导出(Export)之前,先引用所需包到项目下:
1、 鼠标右键点击MyJaPro项目,点击Properties菜单,会弹出一个“Properties MyJaPro”窗口。
2、选择“Java Build Path”中的“Libraries”选项卡添加相应的包。
3、再选择“Order and Export”选项卡,鼠标单击“Select All”按钮,再点击“OK”按钮
4、这个步骤是将引用的包,导到JAR里面(java.lang.ClassNotFoundException)。
第五步,鼠标右键点击项目名称(MyJaPro),选择"Export"菜单按钮,会弹出一个"Export“窗口,在窗口中选择”Java“ ----> ”Runnable JAR file" ,点击"Next >“按钮。
第六步,在”Launch configuration"下拉框中选择:TestMain - MyJaPro 的项。
第七步,在"Export destination:“下,点击”Browse. . .“按钮,保存到桌面,填写文件名(如:MyJaPro.JAR),然后点击保存。
第八步,点击”Finish“按钮,文件被导出到桌面。
注意(好处):
1、可以生成JAR文件,下次无需开启编译器,也可以运行TestMain的程序,也就是双击MyJaPro.JAR文件(JDK1.6一定要安装才能运行)。
2、可以把你的项目中的引用包(*.JAR)也生成到MyJaPro.JAR的包中,就不会出现java.lang.ClassNotFoundException等的异常信息,也就是找不到你的引用包,好比是jdbc.jar包的一些的驱动包。