创建windows脚本bat/cmd或jar为windows服务完整教程

一、将windows bat/cmd脚本创建为windows服务

1、下载winsw工具

https://gitee.com/colinisg/winsw/releases/download/v2.12.0/WinSW-2.12.0-x64.exe

2、创建服务配置xml文件

①将下载的工具WinSW-2.12.0-x64.exe放到脚本目录位置,并修改名称,这里的名称是要安装的服务的名称(此处以nacos为例:nacos-server.exe)

②新建一个.txt文件修改后缀名为.xml

③打开.xml文件编辑以下内容

<?xml version="1.0" encoding="UTF-8" ?>
<service>
  <!-- 唯一服务ID -->
  <id>nacos</id>
  <!-- 显示服务的名称 -->
  <name>Nacos Service</name>
  <!-- 服务描述 -->
  <description>Nacos服务</description>
  <!-- 日志路径 -->
  <logpath>D:\devtools\nacos\logs\</logpath>
  <!-- 日志模式 -->
  <logmode>roll</logmode>
  <!-- 可执行文件的命令 -->
  <executable>D:\devtools\nacos\bin\t-startup.bat</executable>
  <!-- 停止可执行文件的命令 -->
  <stopexecutable>D:\devtools\nacos\bin\shutdown.cmd</stopexecutable>
</service>

3、运行工具安装windows服务

// 以nacos为例
nacos-service.exe install

4、启动服务

# 方法一:在nacos-service.exe 目录执行
nacos-server.exe start

# 方法二:打开cmd终端
net start nacos

5、常见问题

①启动服务时,提示程序运行中断、系统错误等问题。

原因分析:在xml配置的可执行文件命令里面执行的脚步,查看脚本中是否引用其他脚本,如果设置服务的脚步nacos-service.exe与这些引用脚本不在同一个目录,那么执行时,会因为找不到脚本而报错,导致启动失败。

解决方法:将nacos-service.exe与引用的运行命令,放在同一个目录下。

二、将jar安装为windows服务

1、步骤与上面一样,只是.xml文件有些区别

<service>
  <!-- 指定在Windows系统内部使用的识别服务的ID。在系统中安装的所有服务中,这必须是唯一的,它应该完全由字母数字字符组成 -->
  <id>server-id</id>
  <!-- 服务的简短名称,它可以包含空格和其他字符。尽量简短,就像“id”一样,在系统的所有服务名称中,也要保持唯一 -->
  <name>server-name</name>
  <!-- 该服务可读描述。当选中该服务时,它将显示在Windows服务管理器中 -->
  <description>This runs Spring Boot as a Service.</description>
  <!-- 该元素指定要启动的可执行文件 -->
  <env name="HOME" value="%BASE%"/>
  <executable>java</executable>
  <arguments>-Xmx256m -Dfile.encoding=UTF-8 -jar "%BASE%\你的jar包名称.jar"</arguments>
  <!-- 日志输出位置 -->
  <logpath>%BASE%\logs</logpath>
    <log mode="roll-by-size">
        <sizeThreshold>10240</sizeThreshold>
        <keepFiles>8</keepFiles>
    </log>
</service>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值