把Spring boot jar作为Windows服务运行
当你用Spring boot时,通过Java -jar就可以启动,但你不能每次开机都这样执行一遍吧?特别是当你把jar包发布给客户的时候,你总不能要求客户每次开机后都手动执行启动。所以,最好的方式就是作为服务,随机器开机启动。
Java Service Wrapper
本文就讲一讲如何把Spring boot做成服务。
笔者最先研究了JavaService,下载地址为:http://forge.ow2.org/projects/javaservice/,按照文档即可配置,比较简单,但是在执行.bat脚本文件的时候需要具有管理员权限才能安装服务,考虑到客户可能存在较难获取管理员权限的情况,遂放弃。
考虑使用Java Service Wrapper,Java Service Wrapper就轻松而简单的为我们解决了这些问题。"Java Service Wrapper"顾名思义,将我们的Java程序包装成系统服务,这样就可以随着系统的运行而自动运行,当然Java Service Wrapper(下面简称Wrapper)的功能绝不仅于此。
以下是官方给出的一些Wrapper的优点:
(1) 使用我们的产品无须在你的程序中添加任何额外的代码。
(2) 当你的程序或JVM出现问题时会自动响应事先定制的策略。
(3) 当出现问题时会及时进行通知。
(4) 完善的日志记录功能可以更好为您提供支持。
(5) 在不同的系统上你可以指定一个标准的流程相同流程,也就是说相同的程序可以不必修改即运行于不同系统。
(6) 可以将你的应用安装成windows或unix的服务或守护进程。
Java Service Wrapper下载
下载地址为 https://wrapper.tanukisoftware.com/doc/english/download.jsp,最新版本为3.5.34,根据自己的情况选择自己对应的操作系统和位数。
通过下载页面我们可以看到Wrapper几乎支持所有的系统环境,Windows32位社区版是免费使用的,Windows 64位没有免费版本。我们这里主要讲Windows系统。
Java Service Wrapper主要目录
解压后的文件目录如下图:
这些目录并不是你做服务必须的,有些可以不不要。各目录的主要作用如下:
1. bin目录下主要的文件有:InstallTestWrapper-NT.bat、TestWrapper.bat、UninstallTestWrapper-NT.bat、wrapper.exe
2. conf目录下主要文件有:wrapper.conf
3. lib目录下主要文件有