SpringBoot Windows 自启动

Posted VipSoft

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringBoot Windows 自启动相关的知识,希望对你有一定的参考价值。

将 SpringBoot 注册为 Windows Service服务 可实现 SpringBoot 项目在Windows 中随系统自启动。也不用担心被识关闭

SpringBoot 在Windows运行时,有个黑窗体,容易被不小心选中或关闭,或者服务器重启后,不能自动运行,注册为 Windows Service服务 可实现 SpringBoot 项目在Windows 中随系统自启动。也不用担心被关闭

下载 WinSW

https://github.com/winsw/winsw/releases

创建运行目录

创建目录,将有关文件放入目录下,
将 WinSW-x64.exe 重命名为 自己的服务名,如 his-service.exe
如下图:

his-service.xml

<?xml version="1.0" encoding="UTF-8"?>
<service>
  <!-- 服务ID Windows 服务唯一标识 -->
  <id>his-service</id>
  <!-- 服务名称 -->
  <name>his-service</name>
  <!-- 服务描述 -->
  <description>HIS 接口同步服务</description>
  <!-- jar包运行参数,如果没设JAVA_HOME,指定运行程序的jdk位置 C:\\Program Files\\Java\\jdk1.8.0_251\\bin\\java.exe-->
  <executable>java</executable>
  <!-- -jar之后是jar包名称 -->
  <arguments>  -Xms1024m -Xmx2048m -Dfile.encoding=utf-8  -Dloader.path=D:\\HisApi-lib -jar his-service.jar  --server.port=22586 --spring.profiles.active=dev </arguments>
  <!-- 日志配置 -->
  <logpath>D:\\HIS\\logs</logpath>
  <!-- 日志模式,默认为append追加模型,rotate为旋转模式-->
  <logmode>rotate</logmode>
</service>
  • executable:启动可执行文件的全路径,如果配置环境变量,则可以简写,所有这里填写Java
  • arguments:命令执行的参数
  • logpath:配置日志路径
  • logmode:日志输出模式,默认为append,官方文档
  • append:(追加模式,其特点是将日志文件全部输出在一个文件中,这个文件可能会越来越大。
  • rotate:(旋转模式,推荐)当日志文件大小达到10兆(默认值),winsw会将日志重新输出到另外一份日志文件,最多保留8个(默认值)。
  • reset:(重置模式)每次重启服务都会重置日志文件。
  • none:(忽略模式)几乎不会生成日志文件。

安装服务

CMD(管理员模式)
D:\\HIS>his-service.exe install
D:\\HIS>services.msc 安装成功后到 服务中,找到对应的服务,右击启动

更新服务

  • 停止服务
  • 替换目录下的jar文件
  • 启动服务

删除服务

D:\\HIS>sc delete his-service

注意

his-service 替换成自己的应用服务名

以上是关于SpringBoot Windows 自启动的主要内容,如果未能解决你的问题,请参考以下文章

Shiro整合Springboot缓存之Redis实现

Springboot 项目启动后执行某些自定义代码

自定义SpringBoot启动banner

自定义SpringBoot Starter 通过注解启动装配

springboot项目启动之后初始化自定义配置类

自定义SpringBoot启动控制台图标