Java程序打包成jar包_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > Java程序打包成jar包

Java程序打包成jar包

 2014/4/3 15:27:08  zhb8015  程序员俱乐部  我要评论(0)
  • 摘要:2014-02-2021:48154人阅读评论(0)收藏举报Java程序打包成jar包下面是jar命令的帮助说明:用法:jar{ctxui}[vfm0Me][jar-file][manifest-file][entry-point][-Cdir]files...选项包括:-c创建新的归档文件-t列出归档目录-x解压缩已归档的指定(或所有)文件-u更新现有的归档文件-v在标准输出中生成详细输出-f指定归档文件名-m包含指定清单文件中的清单信息
  • 标签:程序 Java
class="link_postdate">2014-02-20 21:48?154人阅读?评论(0)?收藏?举报

Java程序打包成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包

输入如下命令即可:

Cmd代码?复制代码?收藏代码
  1. jar?cvf?counter.jar?-C?bin?.??

其中,“-C bin”实际上是告诉jar命令先cd到bin目录下,再在此目录执行没有参数“-C bin”的命令,等价于:

?

Cmd代码?复制代码?收藏代码
  1. cd?bin ??
  2. jar?cvf?counter.jar?.?//?"."代表当前路径??
?

二、打包成可运行的jar包

要打包成可运行的jar包,有两种方法,一是手动创建MANIFEST.MF文件,并在其中指定主类;二是使用jar的-e参数指定可运行jar包的入口点(即main类的完全名称).

Java源代码行数统计程序的打包为例,演示如何打包:

1. 手动创建MANIFEST.MF文件:

1)首先编辑MANIFEST.MF文件,内容如下:

Mf代码??收藏代码复制代码
  1. Manifest-Version:?1.0??
  2. Created-By:?rsljdkt ??
  3. Class-Path:?. ??
  4. Main-Class:?Main??

?

说明:

??第一行指定清单的版本,若无,则JDK默认生成:Manifest-Version: 1.0

??第二行指明创建的作者,若无,则JDK默认生成Created-By: 1.6.0_22(Sun Microsystems Inc.)

??第三行指定主类所在类路径,

??第四行指明程序运行的主类

2)使用jar命令进行打包:

Cmd代码?复制代码?收藏代码
  1. jar?cvfm?counter.jar?MANIFEST.MF?-C?bin?.??

?说明:

??参数f:指定打包后的包名。

??参数m:指定自定义的MANIFEST.MF清单文件,否则,JDK会自动生成不包含Main-Class的默认清单。

??参数c:指定是创建新的归档文件。

??参数v:在标准输出中生成详细输出,该选项是可选的。

?

2. 使用-e参数指定入口点:

执行如下命令即可:

?

Cmd代码?复制代码?收藏代码
  1. jar?cvfe?counter.jar?Main?-C?bin?.??
?

?

方法二:使用Eclipse的Export功能:

一、打包成一般的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按钮,打包完成。

发表评论
用户名: 匿名