首先我来介绍一下如何打一个可运行的JAR包方法如下:
这里说的运行是指用 命令: java -jar *.jar 来运行jar包中的java程序
第一步:我们只有一个Hello源文件,内容如下:
public class Hello
{
public static void main(String[] args)
{
System.out.println("Hello");
}
}
第二步:把它编译成class文件 ,这个大家应该都会,呵呵
命令如下,在cmd提示符下输入:
javac Hello.java
这样,就生成了一个Hello.class文件
第三步(重点):编辑一个清单文件a.txt,内容如下:
Manifest-Version: 1.0
Created-By: 1.5.0_05 (Sun Microsystems Inc.)
Main-Class: Hello
重点说明:
1.清单文件的文件名起什么都行,扩展名写什么都行,扩展名不写也行,不分大小写。就叫a.txt吧
2.Manifest-Version:后有一个空格,一定要有,我试了近百次了,没有不行。
3.Created-By:后有一个空格。
4.Main-Class:不分大小写。后有一个空格。
第四步(重点啊):
Hello.class和a.txt两个重要文件,都在d:\abc\目录下
在cmd中执行(d:\abc\目录下):jar cvfm rr.jar a.txt Hello.class
OK了,包打完了,运行一下试试
在cmd中执行 java -jar rr.jar
结果:Hello 呵呵,这就OK了
重点说明:
1.rr.jar文件名自己起,扩展名一定要是jar
2.要想打包多个文件,这就样jar cvfm rr.jar a.txt Hello.class a.class 或jar cvfm rr.jar a.txt ×
如果.class文件在包中,情况如下:
第一步:
我们只有一个Hello源文件,内容如下:
package org;//这是多了org包
public class Hello
{
public static void main(String[] args)
{
System.out.println("Hello");
}
}
第二步:
把它编译成class文件 ,这个大家应该都会,呵呵
命令如下,在cmd提示符下输入:
javac Hello.java
这样,就生成了一个Hello.class文件
第三步:编辑一个清单文件a.txt,内容如下:
Manifest-Version: 1.0
Created-By: 1.5.0_05 (Sun Microsystems Inc.)
Main-Class: org.Hello
6666666666
重点说明:这里多了org
第四步:
Hello.class在d:\abc\org下 , a.txt文件在d:\abc\目录下
在cmd中执行(d:\abc\目录下):jar cvfm rr.jar a.txt org
OK了,包打完了,运行一下试试
在cmd中执行 java -jar rr.jar
结果:Hello 呵呵,这就OK了
在这里我们如果要将一些用的别的JAR也加入进去怎么做呢?
假设我们要将msutil.jar mssqlserver.jar msbase.jar dbswing.jar jbcl.jar 这五个JAR也写入到刚才打的JAR中去,怎么做呢?
1。编辑一个清单文件a.txt,内容如下:
Manifest-Version: 1.0
Created-By: 1.5.0_05 (Sun Microsystems Inc.)
Main-Class: Hello Class-Path: dbswing.jar jbcl.jar msutil.jar msbase.jar mssqlserver.jar
2.把那五个JAR包 和那个a.txt Hello.class(所要打包的class文件,这里用Hello.class举例) 放在同一个目录下,然后按照前面讲的办法重新打包,就可以把那五个包导入到了刚才打的JAR包中啦!
评论