Java项目打包成exe的详细教程

时间:2022-01-15 14:36:43

Java项目打包成exe的详细教程

把Java项目打包成exe共分为以下两步:

1、 利用Eclipse先把Java项目先打成jar包

2、 利用exe4j工具把jar包转成exe

这里以Java项目(ExeDemo)为例进行讲解

随便在一个位置新建一个文件夹,文件夹的名称也可以随便起,这里我们在桌面上新建一个文件ExeDemo

Java项目打包成exe的详细教程

1、利用Eclipse先把Java项目先打成jar包

(1)找到要转成exe的Java项目

Java项目打包成exe的详细教程

(2)Export相应的Java项目

Java项目打包成exe的详细教程

(3)选择Java->JAR file

Java项目打包成exe的详细教程

(4)按照如下设置,然后点击Finish结束

Java项目打包成exe的详细教程

(5)即可生成相应的jar包(ExeDemo.jar文件)

Java项目打包成exe的详细教程

2、利用exe4j工具把jar包转成exe

(1)把Java项目中引用的jar包lib目录拷贝到ExeDemo目录中

Java项目打包成exe的详细教程

Java项目打包成exe的详细教程

(2)把自己电脑上装的jre环境也拷贝到ExeDemo目录中

Java项目打包成exe的详细教程

(3)在ExeDemo目录中可以新建一个image(名字可以自己随便起)目录,存放JFrame要引用的图标

至于程序中的路径可以参考以下代码:

mainJFrame.setIconImage(newImageIcon(System.getProperty("user.dir")+"\\image\\logo.jpg").getImage());

Java项目打包成exe的详细教程

(4)安装exe4j工具(自己上网下载,我用的是exe4j 5.0)

Java项目打包成exe的详细教程

(5)打开exe4j工具,点击Next

Java项目打包成exe的详细教程

(6)选择JAR in EXE mode

Java项目打包成exe的详细教程

(7)输入exe程序短名称和exe程序输出位置

Java项目打包成exe的详细教程

(8)输入应用程序名称,如果想为程序添加图标ico,可以在这一步的红色方框位置选择图标ico的位置。

Java项目打包成exe的详细教程

(9)这一步是选择产生一个64位的可执行程序exe

Java项目打包成exe的详细教程

(10)这一步是选择要添加的jar包,把Java项目打包成的JAR包【ExeDemo.jar】和Java项目中外部依赖的JAR包【也就是lib文件夹中的JAR包】都添加进来和根据Java项目实际情况选择主类(cn.demo.UIMain)。主类就是你的程序运行的入口

Java项目打包成exe的详细教程

Java项目打包成exe的详细教程

Java项目打包成exe的详细教程

如果是JAVA项目工程是UTF-8,为了防止JAVA项目中的读写中文字符串有乱码产生,可以在这里红框位置添加参数(-Dfile.encoding=utf-8)

如果打包出来出现乱码情况则:打包的时候设置编码:exe4j的Configurejava invocation 的VMParameters

输入:-Dfile.encoding=utf-8 来防止打包后的exe出现乱码

Java项目打包成exe的详细教程

(11)填写JRE最小版本需求

Java项目打包成exe的详细教程

(12)添加并选择JRE Search sequence,也就是JRE环境搜索顺序。

Java项目打包成exe的详细教程

Java项目打包成exe的详细教程

Java项目打包成exe的详细教程

Java项目打包成exe的详细教程

Java项目打包成exe的详细教程

Java项目打包成exe的详细教程

并利用右下角的蓝色小箭头将项目中的jre放在最上面,让exe搜索JRE的时候优先选择ExeDemo文件夹中包含的JRE

Java项目打包成exe的详细教程

Java项目打包成exe的详细教程

(13)选择Next

Java项目打包成exe的详细教程

Java项目打包成exe的详细教程

(14)选择Next

Java项目打包成exe的详细教程

Java项目打包成exe的详细教程

Java项目打包成exe的详细教程

(15)最后即可生成ExeDemo.exe可执行程序

Java项目打包成exe的详细教程

(16)双击即可运行程序。

文章来源:https://blog.csdn.net/youngstar70/article/details/75116227。文章写的实在太详细了,非常感谢博主的分享