您的位置:首页 > 编程语言

项目启动,main函数之前的代码执行两次 restartedMain

2017-12-28 18:29 555 查看
我的应用场景是在项目启动之前做一些验证,如果验证通过则正常启动项目,否则不允许启动。

代码如下:

public class CMSApplication {
public static void main(String[] args) throws Exception{
VerifyBeforeStartUp.verifyBeforeStartUp();
SpringApplication.run(CMSApplication.class,args);
}


但是我发现VerifyBeforeStartUp.verifyBeforeStartUp();这块被执行了两次。而且在控制台上显示的第二次的线程名为restartedMain

2017-12-28 18:21:08: INFO [main] c.e.c.c.l .java:29 - oswindows 7
2017-12-28 18:21:08: INFO [main] c.e.c.c.l .java:32 - This is windows
2017-12-28 18:21:09: INFO [restartedMain] c.e.c.c.l.v.VerifyBeforeStartUp
2017-12-28 18:21:09: INFO [restartedMain] c.e.c.c.l.u.SystemTool SystemTool.java:29 - oswindows 7


后来查询资料后发现是热部署的插件引起的,多以去掉以下依赖就OK了。

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
</dependency>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息