以下设置似乎不会生成.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);
}
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.2.5.RELEASE</version>
<relativePath /> <!-- lookup parent from repository -->
</parent>
我错过了什么?
答案 0 :(得分:6)
通过在最后一行使用static run(Object source, String... args)
方法,您忽略了前两行中的app
配置。见Javadoc(强调我的):
静态帮助程序,可用于使用默认设置从指定的源运行SpringApplication。
更改最后一行以使用run(java.lang.String...)
实例方法来使用先前注册的侦听器,即更改:
app.run(DemoApplication.class, args);
到
app.run(args);