前言
大多数情况下,都是选用Linux作为服务器部署服务,在Linux中通过以下命令运行
nohup java -jar xxxxx-1.0-SNAPSHOT.jar
但是有时由于其他原因,或本地测试,或云服务器使用Windows server等等,需要在Windows上面运行jar包,这就需要其他方法,大多数方法都是用过一些工具把jar包打为Windows服务运行。
winsw简介
Winsw是一个用于将任何可执行文件注册为Windows服务的工具。它通过XML配置文件来定义服务的基本属性,如服务ID、显示名称、描述、可执行文件路径等。Winsw支持多种启动模式,包括Automatic、Manual、Disabled等,并且可以配置服务的依赖关系和其他高级选项。此外,它还提供了日志记录和错误处理机制,确保服务能够稳定运行。
下载地址:winsw
将sample-minimal.xml
和 WinSW.NET461.exe
改为project-server-0.0.1.xml
和project-server-0.0.1.exe
,
文件名保持一致,方便后续操作
注意:(jar包、.exe文件、.xml文件均在同一目录下)
修改test-0.0.1.xml文件
<configuration><!-- ID of the service. It should be unique accross the Windows system--><!--服务ID:启动、关闭、删除服务时,都是通过ID来操作的--><id>project-server-jar</id><!-- Display name of the service --><!--服务名称--><name>project-server-jar</name><!-- Service description --><!--服务描述--><description>描述...</description><!--当前电脑配置了java环境变量,直接写成“java”就行;你也可以写成类似这样:D:\develop\jdk1.8\jre\bin\java--><executable>java</executable><!--启动参数--><arguments>-jar project-server-0.0.1.jar</arguments><!-- 日志地址 --><logpath>%BASE%\log</logpath><!-- 日志模式 --><logmode>rotate</logmode></configuration>
先使用命令注册服务:
project-server-0.0.1.exe install
然后启动,就是xml里面配置的服务名:
net start project-server-jar
可以使用win + R输入services.msc进入系统服务,找到自己的服务名称,然后设置启动。
以上大部分内容转自:使用winsw将jar以windows服务的方式运行-腾讯云开发者社区-腾讯云