Java jar (SpringBoot-Jar)转为win可执行的exe程序


将java项目Jar工程转换成win平台可执行的exe程序,并封装继承jre运行环境


打包Jar工程

将java项目打包成jar工程,可以是文章以SpringBoot为例
pom文件下的packaging改为jar, 之后执行package打包获得项目jar文件

    <groupId>com.voidm</groupId>
    <artifactId>maven-spring-boot</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>jar</packaging>

$: mvn package

测试Jar

打包完毕后,执行java -jar springboot-demo.jar.jar,启动测试该项目

浏览器访问http://127.0.0.1:8080/web 测试

页面响应成功, jar工程是没有问题的,执行下一步,打包成exe


打包成exe

打开exe4j软件,点击Next按钮,配置相关参数

随便写一个name,并选择exe生成路径, 这块要注意在该路径下将jre Copy到该目录下,如下图(必须)

如果不是GUI的,这块选择Console,控制台输出
这里 如果运行系统64位 请打钩, 否则取消勾选

这里先选择要打包的jar,下方选择Main方法入口
如果是SpringBoot项目,请选择JarLauncher这个Main,否则启动会报错 !
选择JDK版本号,这里我的运行环境为1.8,之后点击Advanced Options 选择Search Sequence

选择之前copy的jre文件夹名 ,注意Directory后面文件夹是相对路径,直接输入文件夹名即可
之后一直Next,知道打包完毕,exe4j has finishied!

打包成功后的目录结构

测试exe

测试之前,先把之前的测试jar进程关闭, 以免端口冲突

双击springboot-demo.exe运行,

浏览器再次访问http://127.0.0.1:8080/web 测试

测试成功, 此时以及成功一半了!!
特意挑了一台没有java环境的电脑运行,
注意看下方的运行动态链接库,执行的Java Library为我们copy的Jre路径.

但是此时还有一个问题 , 整个文件夹180MB,太大,下一步压缩封装jre

封装jre环境

最好一部是将exe跟jre打包,让程序 可以在没有java运行环境下运行

打开InnoSetup,新建

随便填

上面浏览选择exe4j生成的exe文件, 下面添加文件夹选择之前out目录(该文件夹包含jre)
配置新的输出文件夹,其他配置按默认来,然后一直下一步,直到打包完毕

打包完毕
此时安装包仅为60MB,这个包可以发给没有java运行环境的人,直接安装后就可以运行了
安装后的目录结构

voidm

在黑暗中支撑和平的无名者

留下你的评论

*评论支持代码高亮<pre class="prettyprint linenums">代码</pre>

相关推荐