在Windows系统上以服务的形式部署SpringBoot项目
1.前提条件:安装好mysql,JDK 2.下载部署工具winsw winsw是一个可以将任何应用程序注册成服务的软件 下载地址:https://github.com/winsw/winsw/releases 3.将GitHub中下载的WinSW.NET4.exe和sample-minimal.xml文件及springboot项目的jar包放在同一个文件夹中。 4.需要将winsw执行程序跟xml改成同样的名字,推荐使用项目名+Service的命名方式,比如:WinSW.NET4.exe改成ace-startService.exe,sample-minmal.xml改成ace-startService.xml。 5.编辑ace-startService.xml文件,内容如下
<configuration> <!--安装成Windows服务后的服务名--> <id>ace-startServiceID</id> <!--显示的服务名称--> <name>ace-startServiceName</name> <!--对服务的描述--> <description>此处可填写该服务的描述</description> <!--这里写java的路径,如何配置了环境变量直接写"java"就行--> <executable>java</executable> <!--Xmx256m 代表堆内存最大值为256MB -jar后面的是项目名--> <arguments>-Xmx256m -jar ace-start.jar</arguments> <!--日志模式--> <logmode>rotate</logmode> </configuration>
6.打开系统服务功能:运行——输入cmd,,以管理员身份运行cmd,然后进入到ace-startService.exe所在文件夹,然后执行命令安装服务命令:ace-startService.exe install 7.启动服务:net start ace-startServiceName 8.打开系统服务功能:运行–输入services.msc,即可看见自己命名的服务ace-startServiceName。 9.测试 :重启电脑后该服务会自动启动,执行第6步可检查是否成功。
10.删除服务分为两步:1停止服务;2删除服务 停止运行服务:net stop ace-startServiceName 删除服务:ace-startService.exe uninstall 11.上面所有的命令都可以写在批处理文件中,部署的时候就可以实现一键部署了。
例如ace-startStart.bat内容如下: ace-startService.exe install net start ace-startServiceName 例如ace-startStop.bat内容如下: net stop ace-startServiceName ace-startService.exe uninstall