天天看点

Spring定时任务启动两次

Spring中定义了一个定时任务,但是启动之后,每次到时间之后,同一个任务都会运行两边,并且这个任务费时较长,所有不能放任不管。

在网上找了一些解决方法,但是大家总结的一个问题根源就是,任务被加载两次,所以就会执行两次。

下面这位博主对问题做了深入的分析,可以作为参考:

http://blog.csdn.net/chaijunkun/article/details/6925889

但是上面的情况不太适合我的情况。我遇到的情况是在开发环境下运行的话,就会运行两次,但是不在开发环境下运行的话,单独启动tomcat的话,就不会运行两次,所有我猜测应该是开发环境和tomcat两处都有加载。这是我想到了之前自己做的一件事儿,就是配了一下:在开发环境中运行的时候,自动发布到tomcat中。如下图所示:

Spring定时任务启动两次

先清空服务器下的项目,然后右键单击服务器,选择“open”,如图所示红色框中的是我之前配置的,然后又重新选择回第一项,即不在开发环境中启动项目的同时发布到tomcat中,然后就正常了,定时任务不会启动两次。