我注意到spring boot在启动过程中在日志中打印了进程ID。现在,我想编写一个脚本使用此pid终止该过程,然后再次启动该应用程序。 Spring Boot是否提供任何API来获取此pid?谢谢!

最佳答案

Spring Boot提供了类ApplicationPidFileWriter,它将把PID写入文件。您可以通过将其添加为SpringApplication的侦听器来激活它:

SpringApplication springApplication = new SpringApplication(DemoApplication.class);
springApplication.addListeners(new ApplicationPidFileWriter());
springApplication.run(args);


ApplicationPidFileWriter的构造函数还可以采用具有自定义文件名的String或File对象。然后,您可以从该文件读取PID,并在脚本中使用它。

08-26 11:57