从脚本启动 Spring Boot 应用程序

cur*_*eer 0 java spring spring-boot

使用普通的 spring mvn 命令,我可以从命令行启动一个 spring 启动应用程序,并用 Control+c 终止它。然而,我已经创建了一堆服务,稍后我将对其进行 dockerize。现在它们是由 mvn 生成的普通 java jar 文件。我如何使用python脚本或Bash脚本将它们一一启动,然后使用脚本终止它们。有什么方法可以让我启动它并且脚本不会阻止并且应用程序会有一个我以后可以用来停止应用程序的名称?

Pat*_*ick 5

我会按照文档Spring-Boot应用程序安装为Unix/Linux服务。

您所要做的就是将此依赖项添加到您的pom.xml

<plugin>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-maven-plugin</artifactId>
    <configuration>
        <executable>true</executable>
    </configuration>
</plugin>
Run Code Online (Sandbox Code Playgroud)

添加插件后,您应该安装并创建指向您的应用程序的符号链接(文档的确切部分):

假设您在/var/myapp中安装了 Spring Boot 应用程序,要将Spring Boot 应用程序安装 为 init.d 服务,只需创建一个符号链接:

$ sudo ln -s /var/myapp/myapp.jar /etc/init.d/myapp

安装后,您可以按照通常的方式启动和停止服务。例如,在基于 Debian 的系统上:

$ service myapp start

然后,你可以创建一个bash脚本来startstop或者restart在一个干净的方式您的应用程序。