将Springboot Java项目作为windows服务启动

把Java项目打包后放在Windows系统里,使用java - jar xx.jar 启动的话会一直都有一个cmd窗口,看起来不方便,而且如果多人公用一台服务器的话,万一被别人关掉了就麻烦了,所以把jar包注册为一个windows服务的话就可以在后台运行了,启停也很方便

一、编写bat文件启动jar

1、新建一个名为fmstart.bat,打开编辑,写入以下内容

E:
cd E:/springboot
java -jar fmstart-0.0.1-dev.jar
exit

2、然后保存。ok,下次启动时,可以直接点击fmstart.bat启动了。

PS:其实就是批处理文件,节省了打开cmd敲命令的时间,但一样会有CMD窗口存在的

二、windows启动菜单添加快捷方式启动

1、win+R打开运行窗口,输入shell:startup;
2、将fmstart.bat,新建一个快捷方式,然后将快捷方式拷贝到启动项文件中。

重启电脑,看到了熟悉的界面,启动成功。

PS:第二种没试过,主要是第三种

三、使用winsw将springboot打包的jar注册系统本地服务

1、先从github上下载winsw,下载地址 https://github.com/kohsuke/winsw ,可以从
https://github.com/kohsuke/winsw/releases 直接下载所需的两个文件
2、将Git Hub中下载的WinSW.NET4.exe和sample-minimal.xml文件及springboot项目的jar包放在同一个文件夹中。
3、需要将winsw执行程序跟xml改成同样的名字,推荐使用项目名+Service的命名方式,比如:WinSW.NET4.exe改成myProjectService.exe,sample-minmal.xml改成myProjectService.xml。
4、编辑myProjectService.xml文件,内容如下

<configuration>
<!--安装成Windows服务后的服务名-->
<id>myProjectServiceID</id>
<!--显示的服务名称-->
    <name>myProjectServiceName</name>
    <!--对服务的描述-->
<description>此处可填写该服务的描述</description>
    <!--这里写java的路径,如何配置了环境变量直接写"java"就行-->
    <executable>java</executable>
<!--Xmx256m 代表堆内存最大值为256MB -jar后面的是项目名-->
    <arguments>-Xmx256m -jar myProject.jar</arguments>
    <!--日志模式-->
 <logmode>rotate</logmode>
</configuration>

5、打开系统服务功能:运行——输入cmd,然后进入到myProjectService.exe所在文件夹,然后执行命令安装服务命令:myProjectService.exe install。

6、命令提示符界面输入命令“net start myProjectServiceName”启动服务。
7、打开系统服务功能:运行——输入services.msc,即可看见自己命名的服务myProjectServiceName。
8、测试 :重启电脑后该服务会自动启动,执行第6步可检查是否成功。
9、删除服务分为两步:1停止服务;2删除服务,都是在命令行界面实现。
命令提示符界面输入命令"net stop myProjectServiceName"停止运行服务。
命令提示符界面输入命令"myProjectService.exe uninstall"可删除服务
10.上面所有的命令都可以写在批处理文件中,部署的时候就可以实现一键部署了。
例如myProjectStart.bat内容如下:
myProjectService.exe install
net start myProjectServiceName

例如myProjectStop.bat内容如下:
net stop myProjectServiceName
myProjectService.exe uninstall
11.如果没有成功可以查看日志找原因,日志文件在同级目录

PS:到第5步的时候就可以使用第七步的命令直接打开服务列表,找到自己的服务名直接启动了,以后再也不用与烦人的CMD窗口打交道了

作者:az44yao
来源:CSDN
原文:https://blog.csdn.net/az44yao/article/details/85166686
版权声明:本文为博主原创文章,转载请附上博文链接!

猜你喜欢

转载自blog.csdn.net/rui15111/article/details/89360290