Install-Program-As-Windows-Service
将 Spring Boot 程序注册为 Windows 服务,并在开机时自动后台运行,可以通过以下步骤实现。我们将使用 WinSW(Windows Service Wrapper)工具来实现这一目标。
步骤 1:下载 WinSW
- 访问 WinSW 的 GitHub 发布页面。
- 下载适合的版本(例如
WinSW-x64.exe)。 - 将下载的
WinSW-x64.exe重命名为app-service.exe(名称可以根据需要修改)。
步骤 2:准备 Spring Boot 程序
- 确保你的 Spring Boot 程序已经打包为可执行的 JAR 文件(例如
app.jar)。 - 将
app.jar和app-service.exe放在同一个目录下。
步骤 3:创建配置文件
在 app-service.exe 所在的目录下,创建一个 XML 配置文件,命名为 app-service.xml,内容如下:
<service>
<!-- 服务 ID,必须唯一 -->
<id>app-service</id>
<!-- 服务名称 -->
<name>App Service</name>
<!-- 服务描述 -->
<description>This service runs the Spring Boot application.</description>
<!-- 可执行文件的路径 -->
<executable>java</executable>
<!-- JVM 参数(可选) -->
<arguments>-Xmx512m -jar "app.jar"</arguments>
<!-- 工作目录 -->
<workingdirectory>%BASE%</workingdirectory>
<!-- 日志目录 -->
<logpath>%BASE%\logs</logpath>
<!-- 日志模式 -->
<log mode="roll-by-size">
<sizeThreshold>10240</sizeThreshold>
<keepFiles>8</keepFiles>
</log>
</service>
配置说明:
<id>:服务的唯一标识符。<name>:服务的显示名称。<description>:服务的描述。<executable>:Java 可执行文件的路径(确保java在系统环境变量中)。<arguments>:传递给 Java 的命令行参数(例如-jar app.jar)。<workingdirectory>:工作目录,%BASE%表示配置文件所在的目录。<logpath>:日志文件存储路径。<log>:日志配置,支持按大小滚动。