jdk+tomcat+mysql 打包成exe 的windows 安装文件教程

背景

        最近公司因为项目需要,需要把web 的项目做成一个window 安装软件给到客户。我在网络上搜索了很多零零散散的教程,大多都不是很详细很全面。在此我进行总结成博文来分享出来,希望帮助到更多的人。

一:下载Inno steup 用于制作windows 上的exe文件

Inno steup 工具的使用我就不在这里详细的介绍了,网络上很多的教程可以参考

配置文件供大家参考

; Script generated by the Inno Setup Script Wizard.
; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES!

;软件相关信息描述如下
#define MyAppName "xxxx"
#define MyAppChineseName "xxxxx"
#define MyAppVersion "v 1.0"
#define MyAppPublisher "xxxx公司"
#define MyAppURL "http://www.xxxx.xxx"

[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={{D39EB2EE-1636-4DC1-81AC-96D914DAE712}
AppName={#MyAppName}
AppVersion={#MyAppVersion}
;AppVerName={#MyAppName} {#MyAppVersion}
AppPublisher={#MyAppPublisher}
AppPublisherURL={#MyAppURL}
AppSupportURL={#MyAppURL}
AppUpdatesURL={#MyAppURL}
DefaultDirName=D:\Program Files\{#MyAppName}
DefaultGroupName={#MyAppName}
AllowNoIcons=yes
; Uncomment the following line to run in non administrative install mode (install for current user only.)
;PrivilegesRequired=lowest
OutputBaseFilename=tdtavic
Compression=lzma
SolidCompression=yes
WizardStyle=modern
SetupLogging=true
;配置中文包 需要ChineseSimplified.isl这个东西,可以百度下,也可以找我要 ,然后放在innosetup的Languages目录下就好

[Languages]
Name: "chinesesimp"; MessagesFile: "compiler:Default.isl"
;Name: "chinesesimplified"; MessagesFile: "compiler:Languages\ChineseSimplified.isl"
[Files]
;拷贝项目所需文件
Source:".\app\*";DestDir:"{app}\app";Flags:igNoreversion recursesubdirs createallsubdirs
;拷贝mysql jdk tomcat
Source:".\software\*";DestDir:"{app}\software";Flags:igNoreversion recursesubdirs createallsubdirs
; NOTE: Don't use "Flags: ignoreversion" on any shared system files
Source:".\other\*";DestDir:"{app}\";Flags:igNoreversion recursesubdirs createallsubdirs

[Tasks]
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked
Name: quicklaunchicon; Description: "{cm:CreateQuickLaunchIcon}"; GroupDescription: "{cm:CreateQuickLaunchIcon}"; Flags: unchecked

;创建打开快捷方式
[Icons]
Name: "{group}\{cm:ProgramOnTheWeb,{#MyAppName}}"; Filename: "{app}\app\client\配置工具.exe"
Name: "{group}\{cm:UninstallProgram,{#MyAppName}}"; Filename: "{uninstallexe}"
Name: "{commondesktop}\{#MyAppChineseName}"; Filename: "{app}\app\client\配置工具.exe"; Tasks: desktopicon;WorkingDir: "{app}"

[INI]
;修改数据库配置文件
Filename:"{app}\software\mysql\my.ini";Section:"mysqld";Key:"basedir"; String:"{app}\software\mysql"
Filename:"{app}\software\mysql\my.ini";Section:"mysqld";Key:"datadir"; String:"{app}\software\mysqldata"

[Run]
;修改服务配置文件
Filename:"{app}\initMysqlconf.bat";Description:"正在启动或配置相关程序";
Filename:"{app}\install.bat";Description:"正在启动或配置相关程序";

[UninstallRun]
Filename:"{app}\uninstall.bat";

 文件目录说明,如图

app :主要放置代码,和可执行程序

other:服务安装,文件配置以及环境变量配置批处理文件

output: Inno steup的编译输出文件位置

software:放置mysql,jdk, tomcat等服务文件,将所需文件拷贝至当前目录

project.iss: 编译脚本

initMysqlconf.bat 

@echo off
set "pth=%~dp0"
set "pth=%pth:\=/%"
set "pth=%pth:~,-1%"
(for /f "tokens=1,2* delims=:=" %%a in ('findstr /n .* my.ini') do (
  if "%%c" neq "" (
    if /i not "%%b"=="basedir" (
      if /i not "%%b"=="datadir" (echo,%%b=%%c
      ) else echo,%%b="%pth%/software/mysqldata/"
    ) else echo,%%b="%pth%/software/mysql"
  ) else echo,%%b
))>$
move $ my.ini

 install.bat

@echo off
title 软件配置安装中,请不要手动关闭
color 0a
cd /d %~dp0
echo 配置Java、MySQL、Tomcat环境中...
set XXX_APP_HOME=%~dp0%
set XXX_MYSQL_HOME=%XXX_APP_HOME%software\mysql
set CATALINA_HOME=%XXX_APP_HOME%software\tomcat
set XXX_JAVA_HOME=%XXX_APP_HOME%software\jdk
echo 环境变量配置成功

echo MySQL安装中...
xcopy "%XXX_APP_HOME%\my.ini" "%XXX_MYSQL_HOME%" /y
del "%XXX_APP_HOME%\my.ini"
call "%XXX_MYSQL_HOME%\bin\mysqld.exe" install XXX-mysql --defaults-file="%XXX_MYSQL_HOME%\my.ini"
call "%XXX_MYSQL_HOME%\bin\mysqld.exe"  --defaults-file="%XXX_MYSQL_HOME%\my.ini"  --initialize
echo 开始启动MYSQL...
sc config XXX-mysql start=auto
net start XXX-mysql

echo Tomcat安装中...
call "%CATALINA_HOME%\bin\service.bat" install tomcat-XXX
echo 开始启动Tomcat...
sc config tomcat-XXX start=auto
net start tomcat-XXX
echo 安装完成,祝使用愉快~

my.ini 

[mysql]
#设置mysql客户端默认字符集
default-character-set=utf8

[mysqld]
#设置mysql的安装目录
basedir=D:\\test\\software\\mysql
#设置mysql数据库的数据存储目录,必须是data,或者是\\xxx\\data
datadir=D:\\test\\software\\mysqldata
#服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
#设置端口
port = 3306
#允许最大连接数
max_connections=200
#创建新表时将使用的默认存储引擎
default-storage-engine=INNODB

[client]
port=13306
default-character-set=utf8

uninstall.bat 

@echo off
title 删除环境配置中,请不要手动关闭
color 0a
echo 删除Java、MySQL、Tomcat中...
echo ??关闭Tomcat
net stop tomcat-xxx
sc delete tomcat-xxx
echo ??关闭MySQL
net stop xxx-mysql
sc delete xxx-mysql
echo 删除完成

 文件准备成功就可以开始打包程序了,Inno steup打开project.iss文件,点击绿色三角就可以编译,编译成功后会在output文件夹下生成,

 耐心等待,大致15分钟可以生成

 安装文件,双击output下的文件就可以安装了

安装效果:

 等待安装完成即可

卸载:

控制面板-卸载程序或者直接在安装目录下双击 uninstall.bat

  • 4
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值