这是啥BUG啊(二)
发挥CV大法,把别人的quartz代码挪到了自己的项目里,后端代码OK,前端页面OK!测试的代码断点已打,执行定时任务,报错!数据库缺表?补上!还缺?再补!还尼玛缺?我继续补,我补,我补,我补补补!
唉?

这是什么鬼?问豆包,让我清表?可能是前面几次缺表产生的脏数据,清表!
执行成功!我尼玛,测试代码没有调用?啥情况啊,再试几次,还是不行,开始对比两边的代码,我一行没改啊,一摸一样,这是什么鬼?对比pom!唉!忘了把定时任务模块的依赖加到auth的pom里了,加上,唉尼玛,为啥pom报红

clean 然后install!!!!
还尼玛报红,这是什么鬼,去MAVEN看看,唉?定时任务怎么两个jar包?

哦吼,两个项目的定时任务模块名字不一样,改!
啊哈,不报红了,继续测试!
我尼玛,怎么还不调用?
继续问豆包!可能是路径问题?我再INVOKE_TARGET 的配置是XXXservice.XXX方法,bean 名要注意大小写?因为Spring 里默认 bean 名是小写开头的类名,哦,我的确实是大写了,好办!@Service("CustomName"),老子不服,就是大写!重启,继续测试,唉卧槽,还是不调用!。
看AbstractQuartzJob的execute,唉?没进来,继续往上看,
SysJobServiceImpl.run() 方法,进来了,调用scheduler.triggerJob(jobKey);还是没有调用,什么鬼?输出System.out.println("isStarted: " + scheduler.isStarted()); System.out.println("isInStandby: " + scheduler.isInStandbyMode()); System.out.println("isShutdown: " + scheduler.isShutdown());
我尼玛,
isStarted是false??为啥?if (scheduler.isInStandbyMode()) { scheduler.start(); }弄上!成功调用了!!!!
但是为啥啊,怎么闲着没事初始设定是fasle啊,看代码,看QuartzConfig,咦怎么有个timeTaskFlag的配置参数,全局搜!两个properties有一个生产的,一个本地的,生产的是ture,本地的是false,那我明白了,这狗东西,为了本地开发的时候,不启动定时任务,才弄了这么一个配置参数,坑死我了
浙公网安备 33010602011771号