ApplicationPidFileWriter不会在Spring Boot上生成.pid文件

Sim*_*zon 5 spring-boot

以下设置似乎不生成.pid文件(如此处所述 - http://www.kubrynski.com/2014/05/managing-spring-boot-application.html:

public static void main(String[] args) {
        SpringApplication app = new SpringApplication(BrokerFeedApplication.class);
        app.addListeners(new ApplicationPidFileWriter());
        app.run(BrokerFeedApplication.class, args);
    }
Run Code Online (Sandbox Code Playgroud)
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.2.5.RELEASE</version>
        <relativePath /> <!-- lookup parent from repository -->
    </parent>
Run Code Online (Sandbox Code Playgroud)

我错过了什么?

kry*_*ger 6

通过使用static run(Object source, String... args)最后一行中的方法,您忽略app了前两行中的配置.见Javadoc(强调我的):

静态帮助程序,可用于使用默认设置从指定的源运行SpringApplication.

更改最后一行以使用run(java.lang.String...)实例方法来使用先前注册的侦听器,即更改:

app.run(DemoApplication.class, args);
Run Code Online (Sandbox Code Playgroud)

app.run(args);
Run Code Online (Sandbox Code Playgroud)