Spring Boot程序做成系统服务(windows、linux),小白也能看明白
将Spring Boot程序打包成系统服务,可以使用Spring Boot
的spring-boot-starter-web
依赖和第三方工具如Apache Commons Daemon
或Winsw
来实现。以下是使用Winsw
的方法,因为它可以跨平台使用,并且安装过程简单。
- 在Spring Boot项目中添加
Winsw
配置文件。
创建一个新的XML配置文件,如your-service.xml
,并放置在项目的资源目录下(例如src/main/resources
)。
<service>
<id>your-service-id</id>
<name>YourServiceName</name>
<description>This is Your Service Description.</description>
<executable>java</executable>
<arguments>-jar "your-application.jar"</arguments>
<logpath>logs</logpath>
</service>
确保替换your-service-id
、YourServiceName
、Your Service Description
、your-application.jar
为你的服务相关信息。
- 在
pom.xml
中添加Winsw
支持。
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.6.0</version>
<executions>
<execution>
<phase>install</phase>
<goals>
<goal>exec</goal>
</goals>
</execution>
</executions>
<configuration>
<executable>winsw\bin\winsw</executable>
<arguments>install</arguments>
</configuration>
</plugin>
</plugins>
</build>
- 构建项目并安装服务。
使用Maven打包你的Spring Boot项目:
mvn clean package
然后使用exec-maven-plugin
插件安装服务:
mvn install
这将会根据your-service.xml
配置,在Windows上将Spring Boot应用程序安装为服务。
对于Linux系统,你可以考虑使用systemd
或其他类似工具来创建服务单元文件。
注意:以上步骤仅提供了大体框架,具体细节(如日志配置、环境变量等)需要根据实际情况调整。
评论已关闭