目录
一、 使用exe4j将后端jar包打包成exe应用文件
1.创建一个新的工程
2.选择一个你想要存放的路径
3.进入配置界面
4.选择jar转换exe模式
5.自定义名字和选择输出路径
6.配置初始化
7.配置java环境
8.测试运行结果
二、Inno 打包应用文件exe
1.新建一个工程文件
2.自定义应用信息
3.选择保存的exe文件
4.输出配置
三、编写自定义的配置脚本
第一步,点击”否“,选择不立即保存,进入自定义编辑脚本代码
第二步,添加Code部分函数程序代码,判断是否安装过某些引用
使用Inno Setup进行打包的原因有很多。首先,它是一个免费且功能强大的安装程序制作工具,提供了广泛的定制选项和易于使用的脚本语言。其次,它具有用户友好的界面和强大的压缩算法,可以生成小巧但高效的安装程序。此外,Inno Setup还具有良好的兼容性,可在各种Windows平台上稳定运行。
一、 使用exe4j将后端jar包打包成exe应用文件
1.创建一个新的工程
2.选择一个你想要存放的路径
点击next,下一步
等待安装过程
安装完成,点击完成
3.进入配置界面
点击下一步
4.选择jar转换exe模式
点击下一步
5.自定义名字和选择输出路径
点击下一步
6.配置初始化
点击下一步
7.配置Java调用
点击添加按钮
添加你jar包得路径,点击ok;
如上,选择主程序;我这边使用springboot的,选择第一个即可;
7.配置java环境
直接在目录行写入:".\jre"即可,然后使用箭头按钮,将我们新建的这个目录往上挪动;
确保它是第一个;
然后下一步:
下一步:
下一步:
8.测试运行结果
运行结果如下:
最后点击保存即可;
我们就可以在桌面上看到一个我们生成好的exe应用文件了。如下:
二、Inno 打包应用文件exe
1.新建一个工程文件
点击ok;
2.自定义应用信息
点击下一步
3.选择保存的exe文件
这里这个Addfiles的添加其他文件的,最好添加一份桌面一样的exe文件进来即可;
点击下一步
这里不用更改,点击下一步;
这里安装许可证的配置的话,自己安装自己的需求看是否配置即可;
这里我选择默认的语言包(英语),自己可以自行添加中文简体语言包,官网就有!
4.输出配置
一直next下一步,直到完成!
三、编写自定义的配置脚本
第一步,点击”否“,选择不立即保存,进入自定义编辑脚本代码
第二步,添加Code部分函数程序代码,判断是否安装过某些引用
比如判断这台电脑上是否已经安装配好了java环境;
程序如下:
function IsJavaInstalled: Boolean;
var
RegKey: string;
begin
// Java 的注册表键路径
RegKey := 'SOFTWARE\JavaSoft\Java Runtime Environment';
// 检查注册表中是否存在 Java 环境的键
Result := RegKeyExists(HKLM, RegKey) or RegKeyExists(HKCU, RegKey);
end;
我们就饿可以检查注册表中是否存在 Java 环境的键,这个方式来查询是否已经安装过了Java环境,
如果没有安装过的,那就进入到我的安装界面,即code的安装部分:
procedure CurStepChanged(CurStep: TSetupStep);
var
AppInstallerPath: string;
ResultCode: Integer;
begin
if CurStep = ssPostInstall then
begin
// 第一步:检查是否已安装 Java 环境
if not IsJavaInstalled then
begin
// 如果 Java 未安装,执行安装操作,例如下载并安装 Java 的安装程序
AppInstallerPath := ExpandConstant('{app}\jdk-17_windows-x64_bin.msi');
if FileExists(AppInstallerPath) then
ShellExec('', AppInstallerPath, '', '', SW_SHOWNORMAL, ewWaitUntilTerminated, ResultCode);
end;
剩余的其他检测应用是否已经安装过的,都是一样的编辑写法即可,完整代码后续会添加到个人的文件当中!
配置完等待时间下载完成即可!
最后成品:
最后我的这个exe,将我打包的所有文件,其中包括前端,已经在nginx文件夹当中了,启动起来就可以了!
根据自己的安装路径安装即可,也可以将这个exe,文件给别人,别人安装!
运行起来我安装完成的放在桌面的后台快捷键:
这样后台就可以了,然后启动前端界面即可完成!