修改Maven插件配置创建可执行的jar包:
<plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <configuration> <executable>true</executable> </configuration> </plugin>
Gradle的配置:
apply plugin: 'spring-boot' springBoot { executable = true }
使用init.d或者systemd将Spring boot应用启动为Unix/Linux系统服务非常简单。
默认的可执行脚本可以作为init.d脚本被内置在Spring Boot jar包里,连接到/etc/init.d,可以使用start,stop,restart和status命令。该脚本有以下特性:
只有jar包所有者可以启动该服务
使用/var/run/<appname>/<appname>.pid追踪应用的PID
将控制台的日志写到/var/log/<appname>.log
假设你的Spring Boot应用安装在/var/myapp, 使用下面命令将Spring Boot应用作为init.d服务:
$ sudo ln -s /var/myapp/myapp.jar /etc/init.d/myapp