下面的文章是介绍如何将本身编写的swing应用程序打包为.exe的可执行程序,进而编译为.exe的安装程序。相信有这样经历的朋友确定能够理解我为何还要将已经编译好的.exe程序更进一步的编译为安装程序,由于通常而言本机打包的是基本不会出现什么问题的,可是一旦拿到服务器上使用或者在其余机器上使用的时候很容易出现jre或者版本问题致使程序不能正常运行,那么最简单的办法就是让程序本身附带jre运行,那样在什么地方运行他都是使用本身附带的jre来运行,这样就能够大大下降故障率了。java
须要注意的地方,我当前使用的IDE为MyEclipse8.6,编译环境为jdk1.6,系统编码UTF-8web


新建java Project 命名为SwingTest,选择jre为1.6,而后直接finish服务器

在src下创建包com.swing.test
而且在该包下新建类Start
而后书写以下代码:
而后右键 Run as-------Java Application
能够看到,这个简单的例子是能够跑起来的
接下来将此项目导出为可执行jar,
在项目名上右键---Export..
而后选择java--Runnable JAR file 而后选择next
而后在Launch configuration下选择当前的项目,这里显示的格式是[包含有main函数的类名 - 项目名]
而后在下面选择输出文件夹,这里咱们选择Browse..
而后选择桌面,在桌面上新建一个文件夹src1
将生成的可执行jar输出到此文件夹
其余保持不变,finish便可
这个时候src1下面就有了可运行jar文件
=======================
接下来打开exe4j(个人版本是4.5.2,文章末尾我会附加改版本软件下载地址),若是是未注册的话建议注册一下,百度exe4j注册码,而后点击change license,
公司和姓名均可以随便填,将注册码放入最后一行,若是不注册会有讨厌的弹框。
我这里附上一组注册码
A-XVK258563F-1p4lv7mg7sav函数
A-XVK209982F-1y0i3h4ywx2h1编码
A-XVK267351F-dpurrhnyarvaspa
A-XVK204432F-1kkoilo1jy2h3r3d
A-XVK246130F-1l7msieqiwqnqorm
A-XVK249554F-pllh351kcke50blog
A-XVK238729F-25yn13iea25i教程
A-XVK222711F-134h5ta8yxbm0
A-XVK275016F-15wjjcbn4tpj
A-XVK275016F-15wjjcbn4tpj
打开后直接选择Next

这里选择“JAR in EXE" mode
若是选择regular mode会致使最终的结果报java.lang.ClassNotFoundException: com.swing.test.Start
这里填写本次相对于exe4j的项目名称,随意了,这时在桌面新建文件夹src2
而后这里选择src2,这个是你EXE程序生成的文件夹。
接下来只须要在Executable name中填写你生成好以后,后缀名为.exe的程序叫什么名字
我这里写Start,即会生成Start.exe
其余均不改动,保持默认,下面的一项Icon File能够定义程序图标,不能将其余图片直接
更改后缀名后选择,必须使用图标软件生成后缀名为ico的文件,或者选择原本就是ico的文件,
这里暂且不选
而后点击右侧小加号,
Entry type选择为Archive
Detail选择为src1下面的start1.jar
而后ok
在Main class这里栏选择启动类,这里固然是com.swing.test.Start
接下来配置程序运行要求最低jre版本和最高jre版本
这个时候须要准备一个jre,之因此单独准备jre是为了考虑有些用户点上可能没有jre,
也为了程序具有最高兼容性,因此咱们让咱们的程序使用本身的jre
将准备好的jre文件夹放入src2文件夹
选择下面的Advanced Options---Search sequence
默认会看到一些配置,将这些配置所有删除,一个都不留
而后点击右边的加号,
Entry type选择Directory
而后选择src2下的jre7
结果以下
而后选择Next--选择VM无论,默认便可--Next--下一个界面继续Next----
这个时候再点击next就开始将jar打包为exe了
完成后选择exit,弹出的框选NO
这个时候EXE程序就能够直接运行了,继续下一步
==================
打开 Inno Setup 5(个人版本是5.5.2,文章末尾我会附加该版本的下载连接)
选择 下一步
这里我只更改了”应用程序名称“为Start,
其余信息随本身喜爱,这里暂不更改,选择下一步
接下来的这一步不作任何更改,继续选择下一步
这一步应用主执行文件选择刚刚生成在src2下的Start.exe, 而后添加文件夹,
选择src2,会询问你是否包含子文件夹,选择是,包含全部文件夹,继续下一步
这里我不作什么更改
继续下一步
通常程序在安装的时候都会有一些安装提示、或者版权声明,用户赞成才继续安装程序,
这里就是用来将你想要显示的信息打包进程序,我在src1下面新建了三个文本文档
1.txt
2.txt
3.txt
里面随便写一句话便可,继续下一步
这一步默认不作改变,继续下一步,
在桌面新建文件夹 outexe
而后将编译器输出文件夹选择为outexe
其余不作改变,
对下面三个参数稍做说明:
编译器输出基本文件名,即本次打包后在outexe文件夹中生成的文件名
自定义安装图标,这里跟前面同样,要ico文件,固然你选了就会是你这个图标,若是你不选生成
后的图标也不会是你在exe4j里选的图标
安装密码通常不使用,设置了的话,要想安装本程序就须要输入安装密码
继续下一步
这一步默认选中,继续下一步
这里选择完成
这里选择是
这里我通常选选择 否
如今就开始打包安装程序了
等待一会,安装程序就制做好了,就跟你平时见到的那些安装程序同样。
看到这个说明打包完成,好了,去看看本身制做的安装程序吧!
================================================
PS:
一、JRE的大小通常在80M左右,打完包后大概有20多M,我我的还算是能够忍受,网上有不少精简JRE的教程,
能够尝试精简本身的JRE来缩小最终程序的大小,我比较笨,就不精简了。