准备材料:
1.java文件:
Helloworld.java
package com.ray;
public class HelloWorld{
public static void main(String[] args) {
System.out.println("Hello!jar");
}
}
2.指定目录:建一个目录,来存放.class文件和.jar文件。 本文指定目录为 E:\myclass 。
一.命令行形式
1.将java文件编译到指定目录:
语法格式为:javac -d 指定目录 java文件
编译到 E:\myclass: javac -d e:\myclass HelloWorld.java
若出现乱码异常则可以指定字符编码: javac -encoding UTF-8 -d e:\myclass HelloWorld.java
2.指定Main-Class:
编译完成后,myclass目录下生成了com文件夹。此时,在myclass文件目录下,建一个文件A(如1.txt)。
文件内容:Main-Class:(空格)全类名(回车)
1.txt文件内容为:Main-Class: com.ray.HelloWorld 回车
3.cmd进入指定目录(E:\myclass),使用jar命令打包
语法格式:jar -cvfm (jar名) 文件A 包的顶级目录
c m f
参数c:指定是创建新的归档文件。
参数v:在标准输出中生成详细输出,该选项是可选的。
参数f:指定打包后的包名。
参数m:指定自定义的MANIFEST.MF清单文件,否则,JDK会自动生成不包含Main-Class的默认清单。
本例: jar -cvfm my.jar 1.txt com
通过上述三个步骤,便在E:\myclass目录下创建了my.jar。当然这三个步骤,也可酌情省略。
另:附上在cmd中运行jar包的命令: java -jar jar包名,如 java -jar my.jar
二.在Eclipse中
1.打包成一般jar包
(1)要打包的项目上右击—> Export—> Java —> JAR File—>next
(2)在JAR File Specification窗口中,设置打包成的文件名和存放位置,点击两侧next
(3)在JAR Manifest Specification窗口中,设置MANIFEST.MF清单文件的配置,
若仅仅打包成单纯的jar包的话,不用做任何修改,采取默认即可
若打包成可执行jar包的话,可以使用已存在的MANIFEST文件或者直接选择Main class
(4)点击Finish按钮,完成打包。
2.打包成可运行的jar包
(1)要打包的项目上右击—>Export—>Java —>Runnable JAR File—>next
(2)在Runnable JAR File Specification窗口中,选择Launch configuration和Export destination
(3)点击Finish按钮,打包完成。