一、WinSW (Windows Service Wrapper) 简介与下载
- 开源地址: https://github.com/winsw/winsw
- 当前稳定版本: v2.11.0
- 下载链接: https://github.com/winsw/winsw/releases/tag/v2.11.0
- 根据服务器上安装的
.NET Framework版本选择对应的可执行文件下载,例如.NET Framework 4.x环境下载WinSW.NET4.exe。
- 根据服务器上安装的
- 配置文件示例:
sample-minimal.xml: 最小化配置示例。sample-allOptions.xml: 包含所有可选配置参数的示例。
二、配置 WinSW
-
文件重命名与放置:
- 将下载的
WinSW.NET4.exe(或其他版本) 重命名为具有明确含义的名称,例如apiServer.exe。(重要提示:此名称即为后续安装的 Windows 服务的可执行文件名,修改便于管理识别。) - 将配置文件
sample-minimal.xml重命名为与可执行文件同名,但保留.xml后缀,例如apiServer.xml。 - 将
apiServer.exe和apiServer.xml两个文件放置到你的应用程序(如 JAR 文件或可执行文件)所在的目录中。
- 将下载的
-
编辑配置文件 (
apiServer.xml): 修改apiServer.xml文件,配置服务的基本信息。以下是一个核心配置示例:XML<service> <id>apiServer</id> <name>apiServer</name> <description>API 服务程序</description> <startmode>Automatic</startmode> <executable>D:\WorkFolders\publish\MES.Server.WMS.WebAPI.exe</executable> <arguments></arguments> </service><id>: 安装 Windows 服务后的服务 ID。必须唯一。<name>: 显示在 Windows 服务管理器中的服务名称。必须唯一。 通常与<id>保持一致即可。<description>: 服务描述信息,可使用中文,作为备注说明。<startmode>: 服务启动模式,Automatic表示自动启动。<executable>: 指定要运行的主命令或程序的全路径。例如,启动 Java 应用时,这里通常是java.exe的路径。<arguments>: 传递给<executable>的命令参数。例如,启动 Spring Boot 应用时,这里可能是-jar yourapp.jar或其他 JVM 参数、类路径等。(请根据你的应用实际情况填写参数!)
三、安装与管理服务
-
以管理员身份 打开命令提示符 (
cmd)。 -
使用
cd命令切换到apiServer.exe和apiServer.xml所在的目录。 -
执行以下命令进行服务管理:
命令 功能 apiServer.exe install安装服务 apiServer.exe uninstall删除服务 apiServer.exe start启动服务 apiServer.exe stop停止服务 apiServer.exe restart重启服务 apiServer.exe status查看服务状态