1.前言
以exe4j_6.0.1为基础,将springboot和java swing开发的jar包,打包为exe文件。最后,会介绍打包过程中的常见问题和解决方式。
2.下载与安装
1.打开exe4j官网,点击“Download”,进入下载页面。
2.通过鼠标滚动条找到文件下载位置,根据电脑位数选择合适的下载版本,下面会以64位应用为基础,介绍打包过程。
3.下载完成后,按照提示一步步安装,安装过程非常简单,这里不介绍了。但是,避免找不到应用,最好修改下默认安装位置。
4.安装完成后,可以找到安装路径,打开“bin”文件夹,里面的exe4j.exe文件就是应用程序。可以和我一样,创建一个桌面快捷方式复制到桌面,方便打开。
3.打包过程
1.Welcome
1.点击“Change License”按钮,弹出对话框,Name(姓名)和Company(公司)可以随便填,License key可以从下面选一个进行填写。
A-XVK258563F-1p4lv7mg7sav
A-XVK209982F-1y0i3h4ywx2h1
A-XVK267351F-dpurrhnyarva
A-XVK204432F-1kkoilo1jy2h3r
A-XVK246130F-1l7msieqiwqnq
A-XVK249554F-pllh351kcke50
A-XVK238729F-25yn13iea25i
A-XVK222711F-134h5ta8yxbm0
注意:因为我已经设置了上述信息,所以按钮变成了“Change License”。第一次进入时,按钮并不叫这个名称,点击相同位置按钮进行设置即可。
2.设置完成后点击“Next”按钮。
2.Project type
选择“JAR in EXE”mode,点击“Next”按钮。
3.Application info
在“short name of your application”后面的输入框中填写应用名称,在“Output directory”后面的输入框中选择exe生成后保存的文件夹。填写完成后,点击“Next”按钮。
4.Executable info
1.根据需要选择Executable type,因为我这是应用程序,会选择默认的GUI application。在Executable name中再次填写应用程序名称。如果有图标,勾选“icon File”,并选择icon文件。因为我只有一个运行主类,我勾选了“Allow only a single running instance of the application”,这个根据实际情况进行选择。
注意:如果是64位系统不要直接点击“Next”按钮,否则会直接调转到下一项配置。
2.选择“32-bit or 64-bit”选项,由于我是64位系统,需要勾选“Generate 64-bit executable”。64位系统不勾选会该报错,32位系统不要进行勾选。完成上述操作,点击“5.Java invocation”选项。
5.Java invocation
1.点击“+”按钮。
2.选择需要打包的jar包,点击“OK”按钮,进行保存。
3.选择jar包启动主类。
4.选择“org. springfr amew ork. boot.loader . JarLauncher”(特殊需要根据实际情况进行选择),点击“OK”按钮,进行保存。
5.点击“Next”按钮。
6.JRE
1.填写实际的java版本,我这里用的是java 1.8,所以都填写了1.8。
2.exe4j会自动获取环境下的jdk、jre,如果没有设置,需要自己进行配置。点击选择“Search sequence”,进行设置。
3.设置完成后,选择“10.Finished”选项。
7.Finished
1.等待生成结束。
2.点击“Click Here to Start the Application”按钮,运行生成的exe文件。
3.成功运行。
4.问题处理
1.未生成成功,并且报错信息为Compilation failes.Reason: java.io.IOException:icon file does not contain icon data,表示icon文件有问题。我是用网站在线的png图片转为ico,报此错误。我重新用wps将png转换为ico文件,重新选择Ececutable info中的ico文件,就不报错了。如果出现此问题,请尝试换个ico转换器。
2.报错信息为This executable was created with an evaluation version of exe4j,表示在“Welcome”中填写License key。
3.报错信息为The JAVA_HOME environment variable does not point to a working 32-bit JDK or JRE,表示64位的系统,没有勾选“Generate 64-bit executable”。
5.飘逸-若依前后端分离版包修改器
这个修改器是用java swing、springboot和intellij.uiDesigner开发的,用来修改若依框架前后端分离版模块名称、包名等信息。如果需要此修改器,可以查看我的文章《若依前后端分离版包名修改器》。