如何把java代码,打包成jar文件以及转换为exe可执行文件

手把手教你如何把Java代码,打包成jar文件以及转换为exe可执行文件

 

1、背景:

 

    学习java时,教材中关于如题问题,只有一小节说明,而且要自己写麻烦的配置文件,最终结果却只能转换为jar文件。实在是心有不爽。此篇博客教你如何方便快捷地把java代码,打包成jar文件以及转换为exe可执行文件吐舌头

 

2、前言:

 

    我们都知道Java可以将二进制程序打包成可执行jar文件,双击这个jar和双击exe效果是一样一样的,但感觉还是不同。其实将java程序打包成exe也需要这个可执行jar文件。

 

3、准备:

 

     eclipse或Myeclipse以及exe4j(网上有软件和帐号下载)

 

4、具体步骤:

 

Step1:将java项目打包成可执行jar文件

 

    首先看一下我的Java project结构,Main.java是程序入口类,里面有main函数,config目录是些配置文件,lib是用到的第三方类库

 

 

开始打包,Simulate(Java项目)-鼠标右键-Export

 

 

弹出窗口,选择“JAR file”,点击“Next”

 

 

取消勾选“config”和“lib”目录,以及eclipse生成的项目配置文件“.classpath”和“.project”,点击“Next”

 

 

一切默认,点击“Next”

 

 

在弹出窗口中,选择我们自己创建的MANIFEST.MF文件,点击“Finish”

 

 

 

我的MANIFEST.MF文件内容为:

 

  
  
Manifest-Version: 1.0 Main-Class: bing.Main Class-Path: . lib/ojdbc14.jar lib/poi-2.5.1.jar lib/jbcl.jar lib/JTattoo.jar lib/liquidlnf.jar Created-By: Kun Sun

 

通过指定“Main-Class”来达到可执行jar文件的目的。其实我们最终是将项目打包成exe,Class-Path可以不指定,在打包exe的时候还要指定classpath的。

 

Step2:将项目打包成exe

 

    这里要明确一点,并不是把所有的文件都打包成一个exe,资源文件是不能包进去的,往下看↓

首先,在任意目录创建一个文件夹,最好命名和项目名相同,我在F盘创建了一个“Simulate”文件夹,之后将所有的资源文件以及我们生成的可执行jar文件(我的Simulate.jar)都拷贝到这个文件夹里,config目录和lib目录,如果你怕执行该程序的机器上没安装jre,那么你需要将自己机器上的jre目录也拷贝进来,我安装的jre5,最后的目录结构:

 

 

打开exe4j,跳过欢迎,直接点击左侧导航的第二项,因为我们已经提前将java项目打包成可执行jar文件了

 

 

在弹出窗口,选择“JAR in EXE mode”,点击“Next”

 

 

在新窗口中,为我们的应用取个名称,之后选择exe生成目录(我的F:\Simulate),点击“Next”

 

 

为我们要生成的exe取名,如果想生成自定义图标,那么选择你的ico文件,如果你不想在一台电脑上运行多个你的程序,你可以勾选“Allow only a single...”,点击“Next”

 

 

点击绿色“+”,设置程序运行的Class Path

 

 

先选择我们自己的可执行jar文件(我的Simulate.jar),点击OK

 

 

我们的Simulate.jar就加到Class Path下了

 

 

之后点击General中的Main Class选择按钮,在弹出窗口中,exe4j会自动搜索当前Class Path下的全部jar中包含main方法的类,并列出,因为当前我只选择了自己项目的jar,而我的项目中只有Main.jar包含了main方法,所以一目了然,直接选择它点击“OK”,程序入口类就设置完成了

 

 

Main Class设置完成后,依次将所有需要的第三方类库加到Class Path下,方法同添加“Simulate.jar”一样,点击“Next”

 

 

输入Java最小Jre版本号,即低于这个版本的Jre无法运行该程序,接着点击“Advanced Options”-“Search sequence”,设置一下我们的JRE,之前说过,如果客户机上没装Jre咋办?,没关系我们捆绑一个进去

 

 

点击绿色“+”来选择捆绑的JRE位置

 

 

在弹出对话框中选择“Directiony”,之后选择JRE的文件夹,注意:这个JRE目录是我们将本机的JRE目录拷贝到当前exe生成目录下的,我的目录是F:\Simulate\jre5,下图程序使用的是相对目录,点击OK,完成JRE的捆绑操作

 

 

JRE捆绑完毕,点击“Next”

 

 

默认,点击“Next”

 

 

默认,点击“Next”

 

 

默认,点击“Next”

 

 

exe生成中

 

 

OK,完成,点击“Exit”即可

 

 

看看成果如何吧!

 

 

    我们的可执行jar以及第三方jar总共还不到5M,可jre5目录就50多M,如果目标机器上有JRE环境就可以把它删掉了,lib目录是第三方jar文件,现已打包到exe中了,所以它也没有存在的理由了,那么最小配置就剩下了“Simulate.exe”和“config”目录了!

 

 5、备注

 

    上述步骤基本上是自己已经尝试过的步骤,其中有些步骤可以省略,比如说Step1中从java代码转换为jar的过程中可以不写配置文件(MANIFEST.MF文件),系统会自动给出,是不是很方便,大笑。再比如Step2中的绑定jre,可以不绑定。至于其余可以更优化及方便地步骤,读者可以自己摸索尝试。大笑

 转自:http://blog.csdn.net/xxyy888/article/details/13169389

========================================================================================================================

生成.JAR 文件的两种方式:

方式一:DOS命令

JDK中自带了jar命令,可以生成jar包,在命令行输入jar可以看到用法。

E:\20121008>jar
用法: jar {ctxui}[vfm0Me] [jar-file] [manifest-file] [entry-point] [-C dir] file
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/ .

方式二: Eclipse 生成

很多人都不知道怎么在Eclipse下生成jar文件,或者生成了jar文件后又老是用不了,总是会收到

Exception in thread "main" Java.lang.NoClassDefFoundError: ******

这样的错误提示。

其实在Eclipse下生成jar文件是非常简单的:

1.在要生成jar的项目上右击,选择菜单上的Export(导出) 

2.导出类型选择Jar File

3.选择或者输入生成路径

 4.manifest文件是默认生成的,你还可以选择把生成后的文件保存到指定路径

程序的切入点点击“浏览”Eclipse会自动检测可以切入的类,选择你要作为切入点的类就行了

(下面这个是本人的示范程序的选项,自动生成manifest文件,并保存到workspace的Triangle文件夹里,文件名为manifest,切入点为clsTriangle)

(生成的jar文件)

 5.运行jar文件,在命令行下输入:

java -jar e:/myTriangle.jar

运行成功,如图:

很多朋友在生成jar文件后,执行时只是简单的输入

Java JAR_File_Path 

这样是无法执行该jar文件的,需要加入参数 -jar 才可以。

转自:http://blog.csdn.net/guanmjie/article/details/4437779


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
第一步,打开你要打包java程序,然后对着那个项目的文件夹右键,选择Export,然后在选择Java文件夹在选择Jar File 在Next,在然后Finish就可以啦,你看你的项目文件的根目录下是不是有个.jar文件?想测试也可以,在Doc下敲入命令 java -jar test.jar 把test.jar你刚打包jar文件名就行了,想要打包exe文件还没完呢,看第二步; 第二步,打开Exe4J工具,是讲jar打包Exe文件的,他的使用方法也很简单,下面是方法; 引用内容 exe4j应用起来倒是相当简单。类似于傻瓜式的,只要一路next,填写和选择个别的参数就ok了。稍微懂点e文的都可以应用自如了。不要说你一点e文都不懂啊!没办法,简单说下流程: 1、打开exe4j,可以输入license,可以打开你以前操作过的config文件。 2、单击NEXT键,选择”JAR in EXE”mod按钮,单击NEXT。 3、填写短名和文件输出的路径然后点击NEXT。 4、在这里你可以选择你要生可执行文件的类型,以及生可执行文件名称、可执行文件的图标等,我们在这里就选择GUI application,名字就根据自己的需要取一个,图标你可以自己在你的图标库里选一个你喜欢的,然后再NEXT。 5、在这里填写Main class的名字,单击绿色+选择所需的.jar文件,如果没有特殊要求我们就可以再继续了。 6、接下来是选择jre版本,填写好jre的最大最小版本然后再继续。 7、下面设一下你的文件执行的片头,增加其美观效果,选择自己喜欢的图片,写自己想写的文字,并可以根据需要调整文字的位置,再继续。 8、下面是一个选择语言版本的界面选好后再继续。 9、下面是一个短暂的等待,然后就大功告了,一个java可执行文件就这样生了。 10、双击一下看看效果,迎面而来的是自己设置的开头效果,感觉怎么样?
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值