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 自启动 - 通过 Windows Service 服务实现的更多相关文章

  1. [开发笔记]-Windows Service服务相关注意事项

    注意一:报错:“本地计算机上的 *** 服务启动后停止.某些服务在未由其他服务或程序使用时将自动停止.” 该问题主要的原因是 Service服务程序中有错误. 遇到这个问题时,无论是重新安装服务,还是 ...

  2. C# Windows Service服务的创建和调试

    前言 关于Windows服务创建和调试的文章在网络上的很多文章里面都有,直接拿过来贴在这里也不过仅仅是个记录,不会让人加深印象.所以本着能够更深刻了解服务项目的创建和调试过程及方法的目的,有了这篇记录 ...

  3. .Net Windows Service(服务) 调试安装及System.Timers.Timer 使用

    Windows Service(服务)  是运行在后台的进程 1.VS建立 Windows 服务(.NET Framework) 2.添加Timer 双击Service1.cs可以拖控件(System ...

  4. Windows 7 系统中开启 ASP.NET State Service 服务的方法

    控制面板 -> 程序和功能 -> “打开或者关闭 Windows 功能”对话框 -> Internet 信息服务 -> 万维网服务 -> 应用程序开发功能 -> A ...

  5. quartz.net结合Topshelf实现windows service服务托管的作业调度框架

    topshelf可以很简单方便的实现windows service服务,详见我的一篇博客的介绍 http://www.cnblogs.com/xiaopotian/articles/5428361.h ...

  6. vmware无法安装vmware authorization&windows无法启动VMware Authorization Service服务

    在vmware安装过程中或更新时,时常遇到vmware无法安装vmware authorization&windows无法启动VMware Authorization Service服务的情况 ...

  7. Windows Service 服务搭配FluentScheduler实现定时任务调度

    Windows Service 服务 创建Windows Service 项目 创建一个Windows Service项目,并将项目名称改为 TaskWindowService 在解决方案资源管理器内 ...

  8. 震惊!Windows Service服务和定时任务框架quartz之间原来是这种关系……

    过场CG:   接到公司领导的文件指示,“小熊”需要在6月底去海外执行一个行动代号为[定时任务]的营救计划,这个计划关系到公司某个项目的生死(数据安全漏洞),作战部拟定两个作战方案: 方案一:使用务定 ...

  9. [开发笔记]-控制Windows Service服务运行

    用代码实现动态控制Service服务运行状态. 效果图: 代码: #region 启动服务 /// <summary> /// 启动服务 /// </summary> /// ...

  10. 试验Windows Embedded Standard 7 Service Pack 1 Evaluation Edition

    =========================================== 是否支持再使用 RT 7 Lite 精简 ? ================================= ...

随机推荐

  1. @Scheduled不执行

    今天发现@Scheduled不执行,注释掉netty的初始化事件就能正常执行了 原因是@PostConstruct是在主线程执行,@PostConstruct不能堵塞,堵塞会导致整个应用挂起不可用

  2. java.io.IOException: Cannot run program "phantomjs": CreateProcess error=2, 系统找不到指定的文件

    一.问题 运行该指令的程序找不到phantomjs这个指令 二.解决 1.配置全局变量 注意!!! 要配置系统变量,只配置用户变量,可能还会出现该错误.ps:我就是只配置用户变量,导致一直出错... ...

  3. nginx启动命令

    启动加载配置文件 [root@172 sbin]#/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf 检查配置信息是否正确 ...

  4. Java8中Stream的用法

    Java8中Stream的用法 1.概述 Stream APl ( java.util.stream)把真正的函数式编程风格引入到Java中.这是目前为止对Java类库最好的补充,因为Stream A ...

  5. 纯css实现卡券式半圆及阴影(整理)

    <!-- html部分 --> <div class="a"> <!-- a这个大卡片里边分上下两个卡片,对应上边灰色和下边白色部分 --> & ...

  6. NodeJS - XSS

    首先进入/skf-labs-master/XSS文件夹下,执行命令: $ npm install $ npm start 抓包看看内容 查看源码 app.post("/home", ...

  7. C/S 架构 和 B/S 架构

    C/S架构的理解: 官方称:clinet-server 客户端需要下载的软件: 今日头条,爱奇艺等  能在手机和浏览器打开的软件 B/S架构的理解: 官方称:web-server 客户端为浏览器的: ...

  8. jjencode|JS混淆手工解析编码过程以及自定义混淆变体改装

    此前发布过关于aaencode的混淆编码,此篇文章继续说同作者的jjencode混淆编码的具体过程. 介绍 首先是jjencode的作者提供的编码测试页:http://utf-8.jp/public/ ...

  9. C语言和C++的区别与联系(详细)

    文章转自:https://blog.csdn.net/cherrydreamsover/article/details/81835976 在学习了C语言和C++之后,这两者之间的区别我们需要仔细的捋一 ...

  10. postman打开白屏

    1.打开高级系统设置:2.在"高级"选项卡中,单击"环境变量":3.添加一个新的系统变量:POSTMAN_DISABLE_GPU=true4.关闭Postman ...