侧边栏壁纸
博主头像
lai博主等级

  • 累计撰写 51 篇文章
  • 累计创建 19 个标签
  • 累计收到 2 条评论

目 录CONTENT

文章目录

如何将Spring Boot开发JavaFX应用打包为exe文件

lai
lai
2021-06-28 / 0 评论 / 1 点赞 / 3,358 阅读 / 631 字
温馨提示:
本文最后更新于 2023-01-05,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

前言

使用JavaFX为女朋友开发了一款桌面小应用,最终在打包成exe运行文件时遇到问题,在此记录如何将JavaFX应用打包为exe,常见的打包方法有:

1. Idea自带打包工具:Bulid -> Bulid Artifacts…
2. javafx-maven-plugin
3. spring-boot-maven-plugin + exe4j

经过各种尝试后,最终使用第三种方法完成打包

配置Mavn生成jar包

在pom.xml添加mave打包插件,运行maven打包指令,得到jar包

<build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <configuration>
                    	<!--Spring Boot整合springboot-javafx-support后启动主函数入口-->
			<mainClass>com.laijava.invoice.InvoiceApplication</mainClass>
                </configuration>
            </plugin>
	</plugins>
</build>

Mave package.png

[INFO] Building jar: D:\allWorkplace\idea2017workPlace\invoice\target\invoice-0.0.1-SNAPSHOT.jar
[INFO]
[INFO] — spring-boot-maven-plugin:2.5.2:repackage (repackage) @ invoice —
[INFO] Replacing main artifact with repackaged archive
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 12.993 s
[INFO] Finished at: 2021-06-30T22:03:50+08:00
[INFO] Final Memory: 26M/388M
[INFO] ------------------------------------------------------------------------
Process finished with exit code 0

生成invoice-0.0.1-SNAPSHOT.jar

安装exe4j

exe4j 是一个 Java exe 打包,可将Java应用程序集成到 Windows 操作环境中
百度云盘: https://pan.baidu.com/s/1UPkjdfE4HAMMlgMMeHQ1qA
提取码:qg3j

没有许可证密钥,exe4j 可以不受任何时间限制地进行评估,但可执行文件将显示评估警告,并且服务将在 30 分钟后停止

配置exe4j

1.Welcome可以打开原有配置文件,实现快速配置功能

Welcome.png

2.Project Type 选用“JAR in EXE” Mode

Project type.png

3.Application info 输入应用基本信息

Application info.png

4.Excutable info 输入执行信息

Executable info.png

4.1 Redirection 设置日志输出信息

Redirection.png

4.2 32-bit or 64-bit 根距jvm(jre)运行环境选择32位或64位

32bit.png

5 Java invocation

Java invocation.png

5.1 选择主运行程序,选择 "BOOT-INFxxx"运行时会出现ClassNotFoundException,这里选用JarLuncher

Select Main Class.png

Java invocation final.png

6 Jre 设置最小jre版本

Jre.png

6.1 Configure search sequence 清除原有查询JRE或JDK路径,在exe输出(3配置的Output Directory)目录新增JRE目录,将JRE拷贝到目录下,作为相对引用,不需要用户配置JAVA_HOME或者JDK _HOME等环境变量

Configure search sequence.png

Configure search sequence2.png

9 Compile executable 打包,执行成功

10 Finished Save as 保存配置文件供下次快速配置

Finish.png

后续只需要将applicationOutput 文件夹拷贝到需要运行的机器上即可直接使用

1

评论区