命令打可执行jar包:
1.将源文件拷贝到d:\jartest;
2.在cmd命令下进入jartest该目录;
配置:
set path=C盘下jdk1.5.0_05\bin所在的目录 --你自己的jdk安装目录
set classpath=. --当前路径
执行命令javac -d . 类.java -----(编译class文件)
3.删除源文件;
4.jar -cvf tt.jar ./ -----(此处打包成不可执行jar包 tt为打包后的名字 ./为整个当前目录 指定要打包的文件)
5.jar -xvf tt.jar -----解压
6.删除tt.jar
7.修改META-INF下的MAMFEST.MF文件,追加一句
Main-Class: 包路径.类名 -----此包路径为package后的路径 以.隔开
(如果有第三方的jar文件 再加上 classpath:lib/a.jar lib/b.jar lib目录下面放要第三方jar文件)
8.jar -cvfM tt.jar * -----打包
9.java -jar tt.jar -----命令运行jar包 也可双击击运行
我们在打包时,只要不在当前路径下进行打包,对其它路径下的一个目录进行打包,往往含他自己的路径,可以用下面的命令去掉那些路径:
第一种:jar cvfm test.jar c:\manifest.mf -C c:\test \ 注意:后面的 \ 可以换成点
第二种:jar cvf test.jar -C c:\test \ 注意:后面的 \ 可以换成点
第三种:jar -cvf test.jar -C c:\test \ 注意:后面的 \ 可以换成点
打包可执行jar文件的一些注意事项:
jar cvfm [目标.jar] [MANIFEST文件名] [应用程序所在目录]
MANIFEST文件名随便,但jar参数中的"m"不可少,否则在jar文件中你会看到一个只有版本号的MANIFEST.MF文件。
MANIFEST文件,也叫标明文件,清单文件,用来记录jar文件的相关信息。为了打包可执行jar文件,必须创建带jar文件主类的信息的MANIFEST文件。在任意位置,如:E:\temp,创建名为myManifest的文件,用文本编辑器编辑该文件,加入下行:
Main-Class: 应用程序主类的路径名+回车
回车是必须的,否则MANIFEST.MF中只有版本号。主类的路径名如:com.AppMain (假设在E:\temp\中有个com 目 录,com中有个属于com包的AppMain.class)
应用程序所在目录,当然就是com啦,如果我们在e:\temp下打包,则可以输入:
jar cvfm AppMain.jar myManifest com
#压缩java文件, 打成war包
1.打开要打包的文件夹(cd 目录)
2.配置
set path=C盘下jdk1.5.0_05\bin所在的目录 --你自己的jdk安装目录
set classpath=. 当前路径
3.jar cvf tt.war ./ --(./表示当前文件下所有文件,要有 命令格式:java cvf 打包文件名称 要打包的目录 打包文件保存路径)
4.解压自然就是: jar xvf temp.war
在包涵第三方jar包情况下在eclipse下打jar包:
在你的项目文件夹下建一个META-INF文件夹里面新建一个
MANIFEST.MF的文件内容大至如下
Manifest-Version: 1.0
Ant-Version: Apache Ant 1.6.2
Created-By: 1.5.0_06-57 ("Apple Computer, Inc.")
Main-Class: com.opensymphony.workflow.designer.Launcher
Class-Path: looks.jar forms.jar syntax.jar jgraph.jar foxtrot.jar osworkflow-2.8.0.jar oscore-2.2.5.jar
Main-Class就是你要运行的类。
Class-path:就是你要引入的包
用eclipse export导出jar文件里,选择
user existing manifest from workspace
manifest file:/你的项目名/src/META-INF/MANIFEST.MF
点击完成。这样应该就可以了