JDK Tomcat MySQL war windows环境一键安装生成exe

大家可以先在虚拟机上进行测试

目录

准备资料

tomcat9免安装版(下载地址
jdk1.8免安装版(下载地址
MySQL5.7免安装版(下载地址
项目war包
打包软件Inno Setup5(下载地址
微软Visual C++运行库组件(2013下载地址

目录统一

1、 桌面新建文件夹Version1.0(名字随意)
2、 将Tomcatcat和MySQL移动到该目录下
3、 将JDK移动到Tomcat的bin目录下
4、 注意:JDK、Tomcat 、MySQL的文件夹名字是可以随意改的,建议修改-----》去掉版本号等东西,便于路径的书写和防止出错。(可改或不改)

创建所需文件(先创建好清楚整体流程)

1、JDK启动脚本AutoJDK.bat-----》在JDK的bin目录下新建文本文档,修改后缀为.bat,取名随意。
2、Tomcat启动脚本AutoTomcat.bat-----》在tomcat的bin目录下新建文本文档,修改后缀为.bat,取名随意。
3、MySQL启动脚本AutoMySQL.bat-----》在MySQL的bin目录下新建文本文档,修改后缀为.bat,取名随意。
4、MySQL修改安装路径配置脚本updatemyini.bat-----》在MySQL目录先直接新建文本文档,修改后缀为.bat,取名随意。
5、MySQL配置文件my.ini-----》此文件为MySQL自带的配置文件。如果你的MySQL下没有此文件,也没有mydefault.ini文件,请直接新建文本文档,修改后缀为.ini,取名必须为my。如果有my.ini则无需创建。如果有mydefault.ini,复制一份改名为my.ini,其中mydefault.ini不需要删除。
6、打包脚本文件adk.iss-----》在根目录下(即MySQL,Tomcat同级目录)新建文本文档,修改后缀为.iss,取名随意。
7、数据库文件夹-----》在MySQL下创建data文件夹。
8、SQL语句文件夹-----》在MySQL下创建sql文件夹。
9、数据库文件databasename.sql-----》导出你的数据库(包含建库语句),以.sql结尾,放入MySQL下的sql文件夹中。
10、数据库文件建库文件-----》请新建文本文档,修改后缀为.sql,取名随意,放入MySQL下的sql文件夹中。(看了其他的博客只用了一个sql文件,但是自动执行的时候MySQL会报错,没有选择数据库,采用此双sql文件的方法可完美解决)
11、war包项目:将项目打包成war包,放在tomcat下的webapps下即可。
注意:确认新建的文本文档后缀.txt没有隐藏

整体结构

桌面文件夹根目录
在这里插入图片描述
tomcat bin目录下
在这里插入图片描述
jdk目录下
在这里插入图片描述
mysql目录结构
在这里插入图片描述
mysql启动bat
在这里插入图片描述
以上就是各bat文件在各配置中的位置

文件内容

JDK启动脚本(其作用是自动配置环境变量)内容如下(复制到AutoJDK.bat即可):
@echo off

echo  ------begin----

rem 返回上一级目录,即jdk根目录
cd ..

echo "%~dp0"
echo "%cd%"
set jdkpath=%cd%
echo %jdkpath%

rem 设置JAVA_HOME环境变量
setx JAVA_HOME "%jdkpath%" -m

rem 设置CLASSPATH环境变量
setx CLASSPATH ".;%%JAVA_HOME%%\lib\tools.jar;%%JAVA_HOME%%\lib\dt.jar" -m

echo %Path%
echo %Path%|find /i "%java_home%" && set IsNull=true || set IsNull=false
echo %IsNull%

if not %IsNull%==true (
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v Path /t REG_SZ /d "%Path%;%%JAVA_HOME%%\bin;%%JAVA_HOME%%\jre\bin" /f

rem 追加path变量
setx Path "%%JAVA_HOME%%\bin;%Path%"

)
exit
tomcat启动脚本(其作用是自动将tomcat配置为服务自动启动,避免黑窗口启动方式关闭黑窗口后tomcat停止运行的问题)内容如下(复制到AutoTomcat.bat即可):
echo  -------tomcat begin--------

rem 执行service.bat脚本
call "%~dp0"%service.bat install tomcat
echo  -------tomcat install end------------------
sc config tomcat start= auto
net start tomcat
exit
MySQL启动脚本(其作用是自动将配置mysql服务,自动创建数据库,创建导入数据表)内容如下(复制到AutoMySQL.bat即可):
cd ..
call updatemyini
cd bin
cd /d %~dp0
"%cd%\mysqld.exe" --initialize-insecure --user=mysql --console
echo -----mysql init succee-----
cd ..
set "MYSQL_HOME=%cd%"
cd bin
mysqld install mysql --defaults-file="%MYSQL_HOME%\my.ini"
echo -----mysql service install succee-----
net start mysql
sc config mysql start= auto
net stop mysql
net start mysql
"%cd%\mysqladmin" -u root password root
echo --password success
cd ..

"%cd%\bin\mysql.exe" -uroot -proot < "%cd%\sql\qudao1.sql"
"%cd%\bin\mysql.exe" -uroot -proot qudao < "%cd%\sql\qudao2.sql"
echo -----create database succee-----
echo -----mysql service command succee-----

注:-u root password root
-uroot -proot
-uroot -proot qudao中root为mysql数据库设置密码,可自行修改
-uroot -proot < “%cd%\sql\qudao1.sql” qudao1.sql为mysql中sql文件夹下导入的sql数据库文件
-uroot -proot qudao < “%cd%\sql\qudao2.sql” qudao数据库名,qudao2.sql为mysql中sql文件夹下新建的sql文件

MySQL修改安装路径配置脚本(其作用是自动修改数据库安装路径,由于无法确定客户安装到那个目录,所以动态修改数据库的路径datadir和basedir)内容如下(复制到updatemyini.bat即可):
@echo off&setlocal ENABLEDELAYEDEXPANSION

set "basedir="%~DP0""
set "datadir="%~DP0data/""
(for /f "tokens=1* delims=:" %%a in ('FINDSTR /n .* "my.ini"') do (
    for /f "delims== " %%i in ("%%b") do (
        if defined %%i (echo;%%i=!%%i:\=/!)else echo;%%b
)))>$
move $ my.ini

my.ini文件(其作用是自动配置mysql)内容如下(复制到my.ini即可):
[client]
port=3306
[mysql]
default-character-set=utf8

[mysqld]
federated 
skip-external-locking 
skip-name-resolve 
skip-grant-tables 

basedir="C:\Users\Administrator\Desktop\mysql"
#Path to the database root
datadir="C:\Users\Administrator\Desktop\mysql\data"

character-set-server=utf8

default-storage-engine=INNODB

sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
max_connections=100
query_cache_size=32M
table_open_cache=256

tmp_table_size=35M

thread_cache_size=8
myisam_max_sort_file_size=100G
myisam_sort_buffer_size=69M
key_buffer_size=50M

read_buffer_size=64K
read_rnd_buffer_size=256K
sort_buffer_size=256K
innodb_flush_log_at_trx_commit=1

innodb_log_buffer_size=1M

innodb_buffer_pool_size=96M

innodb_log_file_size=20M

innodb_thread_concurrency=18


注:**basedir=“C:\Users\Administrator\Desktop\mysql”**修改为自己的mysql路径

**datadir=“C:\Users\Administrator\Desktop\mysql\data”***修改为自己的mysql中data路径

打包脚本文件(其作用是将整个项目打包成exe可执行文件,自动调用三个启动脚本)内容如下(复制到adk.iss即可):
; Script generated by the Inno Setup Script Wizard.
; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES!

#define MyAppName "baidu"
#define MyAppVersion "1.0"
#define MyAppPublisher "baidu"
#define MyAppURL "http://www.baidu.com/"
#define MyAppExeName ""

[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={{FDFD0778-244E-4D04-A78A-F54F3D5D675E}
AppName={#MyAppName}
AppVersion={#MyAppVersion}
AppVerName={#MyAppName} {#MyAppVersion}
AppPublisher={#MyAppPublisher}
AppPublisherURL={#MyAppURL}
AppSupportURL={#MyAppURL}
AppUpdatesURL={#MyAppURL}
DefaultDirName={pf}\{#MyAppName}
DisableProgramGroupPage=yes
OutputBaseFilename=BaiDu
Compression=lzma
SolidCompression=yes

[Languages]
Name: "english"; MessagesFile: "compiler:Default.isl"

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

[Files]
;拷贝tomcat

Source:"C:\Users\hhh\Desktop\Version3.2\tomcat\*";DestDir:"{app}\tomcat";Flags:igNoreversion recursesubdirs createallsubdirs


;拷贝mysql

Source:"C:\Users\hhh\Desktop\Version3.2\mysql\*";DestDir:"{app}\mysql";Flags:igNoreversion recursesubdirs createallsubdirs

[Icons]
Name: "{commonprograms}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"
Name: "{commondesktop}\{#MyAppName}"; Filename: http://localhost:80/adkfp; 

[Run]
;执行三个bat文件

Filename: "{app}\tomcat\bin\java\jdk-8u201\bin\AutoJDK.bat";

Filename: "{app}\tomcat\bin\AutoTomcat.bat";

Filename: "{app}\mysql\bin\AutoMySQL.bat";


注:根据自己实际mysql、Tomcat、jdk路径对上述文件进行修改

测试

1、先检查电脑是否有微软Visual C++ 2013运行库组件(64位为x64,32位为x86)
在这里插入图片描述
没有的话需要先运行
2、安装Inno Setup5打包软件,安装成功后,运行**.iss**文件
在这里插入图片描述
在这里插入图片描述
3、运行成功后在Output中生成.exe;运行.exe进行安装jdk、mysql、Tomcat、war包部署,一切结束后,需要手动启动Tomcat的startup.bat文件。

参考文档:
https://blog.csdn.net/weixin_40573194/article/details/89019105

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值