前言
最近使用 gui
帮朋友写了一个软件,为了方便他处理工作上的重复性且很麻烦的事情,程序是使用 java
写的,就不得不面对一个问题:我必须将这个程序打包成一个可执行的软件给到他,总不能让他下载个 idea
启动或者去通过 java -jar
这种命令去启动的吧,以下内容就是关于如何将 java
程序做成一个可执行软件的想法与实现
一、情景介绍
先简单的介绍以下这个项目,主要用到的技术就是 gui
,一项很古老的技术,现在应该没有多少人会去用这些技术,我选择这个技术的主要原因就是不用去写那么多的前端代码,上手快,然后没有使用到数据库(我不能要求我朋友去装一个数据库吧),数据全部存在 excel
文件中,使用 easyexcel
去读取数据,poi
去写数据,接着就是使用 maven
去管理我所有的依赖包,这就是这个程序所用到的全部技术了。
在 idea
中我可以直接去启动这个程序,如果不使用这些编程软件去启动这个程序,我也可以通过命令行去启动,所有我先考虑将程序打成 jar
包,然后写一个 bat
脚本通过 java -jar
的方式启动这个 jar
包,再通过 bat_to_exe_converter
将这个 bat
程序转成 exe
的可执行软件即可。
bin
目录下就是这个程序的 jar
包,database
是程序相关的数据库(excel
表格),icon
是图标,temp
是程序产生的临时文件存放目录
这样就能实现双击 djl.exe
打开我的程序,也可以创建一个快捷方式放在桌面上启动
二、实现步骤
1. 打 jar 包
首先我需要将这个程序打成 jar
包,在打包前需要在 maven
的 pom
文件中配置项目的启动入口以及将项目所有依赖都打到一个 jar
包中,配置如下:
<build> <plugins> <plugin> <groupid>org.apache.maven.plugins</groupid> <artifactid>maven-shade-plugin</artifactid> <version>3.2.4</version> <executions> <execution> <phase>package</phase> <goals> <goal>shade</goal> </goals> <configuration> <filters> <filter> <artifact>*:*</artifact> <excludes> <exclude>meta-inf/*.sf</exclude> <exclude>meta-inf/*.dsa</exclude> <exclude>meta-inf/*.rsa</exclude> </excludes> </filter> </filters> <transformers> <transformer implementation="org.apache.maven.plugins.shade.resource.manifestresourcetransformer"> <mainclass>com.mike.gui.start</mainclass> <!-- 替换为你的主类 --> </transformer> </transformers> </configuration> </execution> </executions> </plugin> </plugins> </build>
然后通过 maven
的 install
生成 jar
包
找一个文件夹存放该 jar
包,命名文件夹名称为 bin
2. 编写 bat 批处理文件
创建一个 run.txt
文件,编写以下命令通过 java -jar
命令启动你的 jar
程序
@echo off title your-app-name java -jar bin/djl-gui-1.0-snapshot.jar pause
然后修改 run.txt
为 run.bat
这个时候通过双击 run.bat
批处理文件我们也能直接启动该程序
但是启动文件之后会弹出一个资源管理器的窗口,我不希望它出现,所以就需要将 bat
文件转换成 exe
文件
3. bat 转 exe
我们可以通过 bat_to_exe_converter.exe
软件将 bat
文件 转换成 exe
软件可在官方网址:https://www.f2ko.de/en/applications/bat-to-exe-converter/ 上获取
打开软件,open
选择上一步编写的 run.bat
文件
你可以选择软件的图标,不过这个图标的格式要求是 ico
的文件,可以通过 https://www.bitbug.net/ 在线制作 ico
图标
再点击 convert
选择存放 exe
文件的路径和名称,即可进行转换
如下所示:
这样的话我只要将该可执行文件所在的目录压缩发给别人,别人就能通过双击该 exe
文件来启动我的程序了,但是还有一个问题就是我并没有将 jdk
也放进这个 exe
文件中,所以还得配置 java 环境
,后续需要的话再优化一下
以上便是将 java
应用一步步变成 exe
可执行文件的全过程
以上就是将java应用做成exe可执行软件的流程步骤的详细内容,更多关于java应用做成exe可执行软件的资料请关注代码网其它相关文章!
发表评论