当前位置: 首页 > article >正文

Javafx程序开发-如何制作exe程序及制作安装包

1.开发工具

开发用到如下工具,如下表1所示:

表1 开发工具

名称

版本

说明

IDEA

2021.3.2(Community Edition)

开发工具

JDK

jdk1.8.0_202

Java JDK环境

EXE4J

5.0.1

Jar包转Exe工具

Inno Setup Compiler

6.2.2

安装包制作工具

开发工具IDEA、exe制作工具EXE4j,安装包制作工具Inno Setup Compiler截图如下表2所示:

2. 制作步骤

2.1 加载程序源码

图1为java工程目录浏览窗口,可以看到**Tool这个就是主工程,另一个是**api是api接口工程,是用来和设备通信的客户端Thrift接口,主工程依赖此api接口。

图1 工程目录浏览窗口

2.2 制作构件

Artifact定义了如何将项目打包成可部署JAR(Java Archive)。它指定了项目编译后的输出目录、依赖库的管理方式以及需要包含在打包中的其他文件和资源。通过Artifact,可以将项目打包成一个独立的可执行文件,方便部署应用服务器上。

在IDEA中通过路径File>>Project Structure>>Artifacts打开构件设置界面,如下图2所示:

图2 Artifacts界面

如下截图4所示,点击+》JAR》From modules with dependencies 可以新建构建:

图3 新建构建的路径

弹出Create JAR from Modules对话框,如下图4所示:

图4 Create JAR from Modules对话框

选择Modules为**Tool,如图5Modules选择所示:

图5 Modules选择

选择主程序入口类,如图6**ToolMain类:

图6 Main类选择

构建设置完成效果如下图7,默认构件生成路径即可。

图7构建设置完成效果图

按如下图8步骤构建构件,点击IDEA菜单蓝Build,在下拉菜单中选择Build Artifacts。

图8 构建构件菜单路径

IDEA此时弹出图9所示快捷菜单,点击**Tool:jar》Build开始构建,状态栏会提示构建结果。

图9 Build Artifact快捷菜单

至此,构建构件完毕,可以在输出目录中查看到构件**Tool.jar。

2.3 用exe4j生成EXE文件

exe4j是一款功能强大的Java应用程序打包工具,它允许开发者将Java应用程序转换成Windows操作系统下的原生可执行文件(EXE文件)。通过使用exe4j,用户可以轻松地创建独立的Windows可执行文件,不需要为运行Java应用程序安装Java运行环境。这对于分发Java应用程序非常有帮助,特别是对于不熟悉Java体系的最终用户。

2.3.1配置Application info

如图10所示,

Short name of your application:应用程序的简称,这里填写**Tool。

Output directory:指定生成exe文件的目录,这里选择D:\output\exe4jOut\**Tool。

点击Next按钮。

图10 Configuration application

2.3.2配置 Executable info

如图11所示,

Executable name:生成exe文件的名称

Icon File:生成exe文件的图标,该图标类型只能是ico结尾的图片

点击Next按钮

图11 Configure executable

2.3.3 配置Java invocation

Class path:Jar包路径; Main class:入口类(程序含有main方法的类)。

图12  Configure Java invocation

2.3.4 配置JRE

配置JAVA 运行环境JRE

图13 Configure JRE

 完成以上步骤后,最后点击Finished,就完成了转换工作,点击Click here to Start the Application按钮,就可以测试下是否能正常运行了。

图14 exe4j has finished

此时可以在输出目录中查看exe程序**Tool.exe。

2.4生成安装包

Inno Setup是一个免费的安装制作软件,小巧、简便、精美是其最大特点,支持pascal脚本,能快速制作出标准Windows2000风格的安装界面,足以完成一般安装任务。

界面如下:

图15Inno Setup 界面

 这个比较简单,就不一一列出具体步骤了。

上面程序可以保存好配置,下次可以直接打开配置文件就可以运行了,非常方便。比如我这里之前保存过一个配置pstool.iss。脚本内容如下:

; Script generated by the Inno Setup Script Wizard.
; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES!
#define MyAppName "XXXXXXTool2.0"
#define MyAppVersion "2.0"
#define MyAppPublisher "XXXXXX, Inc."
#define MyAppURL "http://en.XXXXXX.com/"
#define MyAppExeName "XXXXXXTool.exe"[Setup]
; NOTE: The value of AppId uniquely identifies this application. Do not use the same AppId value in installers for other applications.
; (To generate a new GUID, click Tools | Generate GUID inside the IDE.)
AppId={{22B437D4-A788-480B-823F-2A1DFCD1CBC6}
AppName={#MyAppName}
AppVersion={#MyAppVersion}
;AppVerName={#MyAppName} {#MyAppVersion}
AppPublisher={#MyAppPublisher}
AppPublisherURL={#MyAppURL}
AppSupportURL={#MyAppURL}
AppUpdatesURL={#MyAppURL}
DefaultDirName={autopf}\{#MyAppName}
DisableProgramGroupPage=yes
; Uncomment the following line to run in non administrative install mode (install for current user only.)
;PrivilegesRequired=lowest
OutputDir=D:\output\innosetupOut
OutputBaseFilename=PrismtokenToolSetup2.0
Password=wellsun
Compression=lzma
SolidCompression=yes
WizardStyle=modern[Languages]
Name: "english"; MessagesFile: "compiler:Default.isl"[Tasks]
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked[Files]
Source: "D:\output\exe4jOut\XXXXXXTool\{#MyAppExeName}"; DestDir: "{app}"; Flags: ignoreversion
Source: "D:\output\exe4jOut\XXXXXXTool\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs
; NOTE: Don't use "Flags: ignoreversion" on any shared system files[Icons]
Name: "{autoprograms}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"
Name: "{autodesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: desktopicon[Run]
Filename: "{app}\{#MyAppExeName}"; Description: "{cm:LaunchProgram,{#StringChange(MyAppName, '&', '&&')}}"; Flags: nowait postinstall skipifsilent

点击File加载脚本文件pstool.iss,再点击工具栏的Run按钮就可以打包生成安装包了。如图22所示

 感谢观看,希望对您有帮助!

http://www.lryc.cn/news/2419281.html

相关文章:

  • arp病毒查杀:手动查杀ARP病毒
  • 朴素贝叶斯法(Naive Bayes,NB)(结合例子推公式,通俗易懂)
  • 高等数学:极限与连续
  • python docx页面设置_如何在pythondocx中将页面大小更改为A4
  • LoadRunner常用的C语言原生函数
  • eXtreamDb安装启动篇
  • 硬件工程师实用工具网站
  • 国产电脑系统中,哪一款在安全防护功能上体现了对用户的关怀?
  • 稻城亚丁 旅游主题网页设计 html源码
  • 尝试Ping百度域名后的思考
  • 聚富网助力股民摆脱经济压力,实现财富自由
  • 论文修改技巧与步骤 快码论文
  • Android Recovery具体工作原理
  • 常用网页广告代码全集
  • BT没死!305个国外BT资源聚合站点大全
  • boost linux 串口,boost 串口编程 | 求索阁
  • WebLogic JNDI 编程
  • Response.Cookies 和 Request.Cookies
  • Ubuntu下使用Wine安装QQ
  • Java中static作用及用法详解
  • java httpclient4_httpclient4使用说明
  • componentsJoinedByString和componentsSeparatedByString的使用
  • PHP中用header(Location: test.php)进行跳转时应注意的问题
  • Linux服务器防御最全教程
  • 杀毒软件 对应的进程名称
  • 龙将加速浏览器_《看门狗:军团》即将开启预载,迅游加速器支持下载和联机加速 18183手机游戏网...
  • VC 界面编程总结
  • 交换机基础配置-新版(4)
  • 没事也研究一下外挂--C#简单游戏外挂制作(以Warcraft Ⅲ为例)
  • 【MATLAB】等高线的绘制