一:简单的打包:
先将要打包的文件整理好,拷贝到一个目录中。然后打开命令行窗口,进入到这个目录下面,执行以下命令即可:
jar cvf SanyDemo.war */.
这里指定文件名为SanyDemo.war,“*/.”表示要打包的文件为当前目录下的所有文件。
以下为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/ .
二:使用Eclipse 打包应注意的问题
如果项目有依赖的jar,那么要注意:
可把jar包打到War包里,但jar包不能打到Jar包里去。
“MANIFEST.MF”文件内容
Manifest-Version: 1.0
Main-Class:A
Class-Path: lib/commonsapi.jar
假设打包后名为A.jar
然后整理成如下目录结构
A.jar
lib
-commonsapi.jar
将所有依赖包都放入lib文件夹中,双击A.jar,程序就可以运行了。
三:打包成WAR文件:
在CMD下,当我们敲下jar -help时,系统给我们提供了如下的jar命令以及jar打包:
用法: jar {ctxui}[vfm0Me] [jar-file] [manifest-file] [entry-
s ...
选项包括:
-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/ .
现在我们用jar命令来进行war打包:
运行cmd 进入命令提示行,定位到工程的路径,如你工程名是"classes" 放在d盘要路径下,
你就可以运行到d:/classes
然后运行Jar cvf classes.war */ . (此处有一个点,包含了此文件夹下的所有文件)即可。
“D:/JCY2007>d:/java1.5/bin/jar cvf JCY2007.war *”把D:/JCY2007目录下所有的文件都打包到JCY2007.WAR中