一、问题描述
在使用Quartz时,都需要在***_quartz.xm中配置触发条件以及具体的逻辑。在保证quartz.xml配置语法正确的情况下,task:scheduled
的ref
引用的变量会报红,并且还能看到Cannot resolve bean ‘name’这样的提示(如下图)。产生这样的情况只有一种可能,那就是Spring Application Context配置不正确,导致IDEA不能够识别这变量而报红。我们知道,Quartz一般都是结合Spring一起工作的。虽然,这样并不影响Quartz的工作,一旦你真的配置错了,或者引用的service找不到,图中这样的情况我们很难排查到底是哪个service配置错了。那么,下面我将介绍如何解决这个报红问题。
二、解决办法
办法一
点击左上角蓝色的字体“MVC appliction context”(如下图),然后选择 MVC applictin context,这个是你构建项目时自动构建好的,如果你选择了之后,quartz.xml还是报错,试一试其他几个选项,如果都还是不行,那么请看办法二。