需求
客户设备为Windows系统,需要部署公司产品,因此将Tomcat、JDK、MySQL、Java.war 打包整合成exe文件,Windows下一键部署安装。
最佳实践
1、下载免安装的mysql、tomcat、jdk
2、下载Inno Setup 打包工具
3、我在D盘建了个文件夹,命名为dabao ; D:dabao
4、把下载好的mysql、tomcat一起复制到“D:dabaot”下;
5、把下载好的jdk放在“D:dabao omcatin”下。
6、必须熟悉Windows手动安装时的流程,配置文件的配置,添加程序为系统服务。
Tomcat
JDK
2.1 写jdk的批处理脚本,放在“D: estapache-tomcat-8.0.29inJavajdk1.8.0_151in”下
========autoInstallJDK.bat start========
> 设置JDK环境变量,并验证是否成功,如果设置失败,则 reg 操作注册表,添加相应环境变量
```
@echo off echo cd .. echo "%~dp0" echo "%cd%" set jdkpath=%cd%apache-tomcat-8.0.29inJavajdk1.8.0_151 echo %jdkpath% setx JAVA_HOME "%jdkpath%" -m setx CLASSPATH ".;%%JAVA_HOME%%lib ools.jar;%%JAVA_HOME%%libdt.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_MACHINESYSTEMCurrentControlSetControlSession ManagerEnvironment" /v Path /t REG_SZ /d "%Path%;%%JAVA_HOME%%in;%%JAVA_HOME%%jrein" /f setx Path "%%JAVA_HOME%%in;%Path%" ) exit
MySQL
1.下载的免安装MySQL没有my.ini文件,需要创建
2.需要导入sql数据库
3.配置MySQL
初始化数据库
添加到系统服务:将MySQL服务配置到Windows服务列表,可以进行服务的管理
启动MySQL服务,net start mysql
MySQL 批处理脚本,位置 “D: estmysql-5.5.40-winx64in”下
> mysqld 初始化数据库,使用自己的my.ini安装数据库,并启动。
> 连接数据库设置密码,导入.sql文件。
```
cd /d %~dp0 "%cd%mysqld.exe" --initialize-insecure --user=mysql --console echo -----mysql init succee----- pause; mysqld install mysql --defaults-file="D: estmysql-5.5.40-winx64my.ini echo -----mysql service install succee----- pause; net start mysql sc config mysql start=auto net stop mysql net start mysql echo 安装完毕 pause; "%cd%mysqladmin" -u root password root echo 修改密码完毕 pause; cd .. "%cd%inmysql.exe" -uroot -proot < "%cd%datassm_work.sql" echo 建表完毕 pause; echo 建立新用户完毕
Inno setup
1、在“D: est”下创建一个.iss后缀的文件,然后复制我下面给出的文件内容,修改并执行它,工具就会在当前目录创建一个名为“Output”文件夹,里面存有一个.exe的安装包。
> 至此,整合全部结束,可以分发一键部署新项目。
## 总结
可能会遇到的问题,如何去解决:
1、安装包没安装成功,根据弹出的错误提示,去看是从哪里出错,然后再到那一个点来解决它;
2、安装成功后启动程序出现mysql、tomcat或者jdk有问题,可以根据日志去找找失败的原因,英文不懂可以找翻译软件翻译,这很关键。