将Spring Boot Application设为服务
通过Spring Boot构建的项目,可以在pom中设置,使用maven生成jar包,而非传统的war包。相较war包,jar包简化了实施的难度,但在windows下,需要想办法将jar设置成开机启动,否则重启就是个悲剧了。将ja包装为一个windows 服务是一个很好的办法。下面具体说说怎么做。
如何构建可运行Jar
<packaging>jar</packaging> <!--这里是jar--> |
这样的话通过maven project中的install命令就会输出一个可执行的jar包。
注册服务
在windows下有很多种方法去把一个可执行jar设置成服务,但这里我推荐使用winsw和procrun。不差钱的话,也可以购买java service wrapper,alwaysup这些商业软件。下面以winsw为例说明。
首先,你需要下载winsw的可执行程序。下载。
其次,新建一个xml文件,xml的名字跟你想注册的服务名字相同。比如
leferApi.xml
<service>
<id>leferApi</id> <!--windows服务的唯一标识,只能是字母和数字.不能和其他服务重名-->
<name>leferApi</name> <!--服务名,不能和其他服务重名-->
<description>服务的描述</description>
<env name="MYAPP_HOME" value="C:\"/> <!--设置路径-->
<executable>java</executable>
<arguments>-jar "C:\leferApi.jar"</arguments> <!--设置执行参数-->
<logmode>rotate</logmode> <!--循环日志-->
</service>然后,将下载的winsw.exe更名成与xml相同的名字
leferApi.exe
。然后在命令行中执行下面的命令。leferApi intall //注册服务
当然,对应的还有
unintall
,start
,stop
等一系列命令。执行完install
,可以发现windows服务列表中就已经出现了对应的服务。
END
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 LeFer!
评论