Java项目怎么打成jar包

Python025

Java项目怎么打成jar包,第1张

第一种:在jbuilder中:

首先你要保证Run菜单-->Run Project能顺利运行

然后Wizards菜单-->Native Executable Builder

选中Compress the contents of the archive(产生jar文件的话)

Next-->Next-->选中Always include all classes and resources再Next-->Next-->Next

选中Windows GUI"exe"(产生EXE文件的话)-->Finish

再在项目的文件列表中的Native Executable右击-->Make就可以了

第二种:在cmd 下生成jar文件

abc.txt内容如下:

Manifest-Version: 1.0

Main-Class: main-class-name(回车)

在cmd下:

javac *.java

jar cvfm abc.jar abc.txt *.class

示例——生成能通过鼠标双击就执行的.jar文件

一、编写 Java源程序Test.java如下:

// Test.java

import javax.swing.*

/**

* @(#) Test.java

* Copyleft (c) 2002 RatKing

* @author <a href="[email protected]">RatKing</a>

* @version 0.1, 2002-11-7

* 描述:一个测试用的Java Application

*/

public class Test extends JFrame {

public Test(String title) {

super(title)

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE)

this.getContentPane().add(new JLabel("测试!", JLabel.CENTER), SwingConstants.CENTER)

this.pack()

}

public static void main(String[] args) {

try {

//UIManager.setLookAndFeel(UIManager.getCrossPlatformLookAndFeelClassName())

UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName())

} catch(Exception e) {

e.printStackTrace()

}

Test t = new Test("Test - 测试")

t.setVisible(true)

}

}

二、编译Test.java为Test.class(当然假设你事先已经设置好了JDK的环境变量PATH和CLASSPATH)

在命令行执行编译命令:

javac Test.java

三、用文本编辑器(比如记事本/UltraEdit等 - 甚至用ECHO命令加管道“>>”)编写如下manifest文件,并保存为abc.txt

Manifest-Version: 1.0

Main-Class: Test

【注意】文件abc.txt内必须是3行文本:

第一行的内容依次是:“Manifest”、英文减号、“Version”、英文冒号、英文空格、数字“1”、英文句号、数字“0”

第二行的英文冒号与Test之间必须要有一个英文空格!!!如果有包名一定要带上!!!包名.类名

第三行是一个空行,也就是说,你要在Test之后键入一个回车,然后才可以存盘退出!!!

如果冒号后面没有空格,可以生成jar文件但不能执行;如果Test后没有回车符,则生成jar文件时会报错。

该文件可以放在任何目录下

四、将Test.class打包成.jar文件,并使用abc.txt指明哪一个是带有public static void main()的“主函数”

在命令行执行编译命令:

jar cvfm Test.jar abc.txt *.class

如果有包名可以这样写,如包名为test,一定要在该包的上一层目录执行下面这句

jar cvfm Test.jar abc.txt test

你可以使用WinZip之类的解压软件看一看刚刚生成的Test.jar文件里到底有什么。

五、用鼠标双击Test.jar的图标,应该可以看到Test执行后的窗口。

〖说明〗如果你正确地安装了 Java运行环境(JRE),那么.jar的图标应该是象一页纸并有一个A的形状,就如同写字板的图标。

如果你的.jar文件默认的打开关联不对,可以重新设置:

我 的电脑->查看(Win9x)或工具(Win2k)->文件夹选项->文件类型->选择JAR文件->编辑该类型文件的属 性->操作栏填入[ open ](不填引号和中括号[]),并在“执行操作的应用程序”栏填入[ "C:\Program Files\Java\j2re1.4.1\bin\javaw.exe" -jar "%1" %* ](填两对英文引号,不填[])

并按“确定”、“关闭”退出对.jar文件关联的编辑。

(你的javaw.exe文件是不是位于C:\Program Files\Java\j2re1.4.1\bin\路径下,视你自己电脑的情况而定)

第三种:JB中生成.exe文件

1、菜单中选择【Wizards】-【Native Executable Builder....】弹出对话框

2、在弹出的对话框中第一步(Step 1 of 7)的【Name】输入一个名称,并取消【Always create archive when building the project】点击【Next】

3、根据需要悬着需要的类,再选择【Include class dependencies】,点击【Next】

4、根据需要悬着需要的库文件,再选择下面的4个单选,反复所有的需要的库,点击【Next】

5、默认点击【Next】

6、在(Step 5 of 7)的时候选择一个主类运行点击【Next】

7、在(Step 6 of 7)的时候选择运行平台【Next】

8、默认点击【Finish】,这时候在工程的目录窗口出现了一个在(Step 1 of 7)输入的【Name】目录

9、右击这个目录,选择【Rebuild....】,Jbuilder就开始编译和创建执行文件或是Jar文件了

10、等完成之后,该目录下右几个文件,一般是有至少一个jar文件,或是一个exe文件

11、在Window打开工程所在的目录,就可以看到里面的有几个刚才编译的文件

12、执行jar就是用java -jar ***.jar、执行exe直接双击

---------------------------------------------------------------

1、不建议使用jb,因为打包后可执行文件的图标改不了且jb的可执行文件实际上是可执行的jar文件,可以将其exe扩展名改为jar一样可执行。

2、还是使用jsmooth较好,首先编写menifest文件目的指明main类,使用jar命令打包成可执行jar文件,让后使用开源的jsmooth做成exe。

一、源文件情况

源文件位置为:D:\temp,源文件名(含包名字):com.ldq.WeatherDemo.java

前提:已安装 jdk ,并配置好环境变量。

二、过程

1、编译:

提示符进入 D:\temp 路径下,输入:javac com\ldq\WeatherDemo.java

生成类文件:WeatherDemo.class

2、打包:

提示符进入 D:\temp 路径下,输入:jar cvf WeatherDemo.jar com\ldq\WeatherDemo.class

生成档案文件:WeatherDemo.jar

3、修改 MANIFEST.MF 文件:

由于引用了外部的类,所以要添加引用类的路径,即修改MANIFEST.MF文件。保存如下内容到 D:\temp下,文件名 MANIFEST.MF

Manifest-Version: 1.0

Sealed: true

Main-Class: com.ldq.WeatherDemo

Class-Path: lib/jaxrpc.jar lib/log4j-1.2.8.jar lib/mail.jar lib/saaj.jar lib/tools.jar lib/wsdl4j-1.5.1.jar lib/activation.jar lib/axis.jar lib/axis-ant.jar lib/commons-discovery-0.2.jar lib/commons-logging-1.0.4.jar

注意在后面空两行。

提示符进入 D:\temp 路径下,输入:jar umf MANIFEST.MF WeatherDemo.jar

执行时会提示更新的内容。

4、添加包含引用类的相应文件:

在 D:\temp 路径下,新建 lib 文件夹,讲对应的 jaxrpc.jar ... 拷入其中,此时,即可双击(或在提示符下输入:java -jar WeatherDemo.jar)运行 WeatherDemo.jar 文件了。

三、总结

双击运行 jar 文件时,虚拟机会到 jar 文件中下找 .MF 文件,找到对应的 Main-Class 运行,引入的类在 Class-Path 所指路径。

事实上可以利用 winrar或winzip 工具打开 jar 文件,直接将修改好的 MANIFEST.MF 拷入覆盖,class文件也可以做同样的操作,节省了输入复杂难记的命令。另外,对于 javaME 生成的 jar 文件,限制严格些,MANIFEST.MF 文件中有个文件大小的字段,可以先保存,查看文件大小,再修改保存。

另一种方法是通过 Eclipse - Export - Runnable JAR file 直接生成 jar 文件,此时,所有的引用类都被打包在 jar 文件里了。

两种方式

1,执行java class名字,class是jar里的main class,这种指定了classpath就行,不需要关心路径。

2,java -jar /root/java/test.jar