IDEA解决quartz配置中ref变量报红问题

一、问题描述

  在使用Quartz时,都需要在***_quartz.xm中配置触发条件以及具体的逻辑。在保证quartz.xml配置语法正确的情况下,task:scheduledref引用的变量会报红,并且还能看到Cannot resolve bean ‘name’这样的提示(如下图)。产生这样的情况只有一种可能,那就是Spring Application Context配置不正确,导致IDEA不能够识别这变量而报红。我们知道,Quartz一般都是结合Spring一起工作的。虽然,这样并不影响Quartz的工作,一旦你真的配置错了,或者引用的service找不到,图中这样的情况我们很难排查到底是哪个service配置错了。那么,下面我将介绍如何解决这个报红问题。
quartz配置报红

二、解决办法
办法一

  点击左上角蓝色的字体“MVC appliction context”(如下图),然后选择 MVC applictin context,这个是你构建项目时自动构建好的,如果你选择了之后,quartz.xml还是报错,试一试其他几个选项,如果都还是不行,那么请看办法二。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Quartz配置文件,可以使用 `org.quartz.scheduler.overwriteExistingJobs` 属性来设置 `overWriteExistingJobs`,它的可以是 `true` 或 `false`,用于指定是否覆盖现有的作业和触发器。如果设置为 `true`,则新的作业和触发器将覆盖现有的作业和触发器。 以下是在 Quartz 配置文件设置 `overWriteExistingJobs` 属性的示例: ```xml <quartz> <scheduler> <property name="org.quartz.scheduler.instanceName" value="MyScheduler"/> <property name="org.quartz.scheduler.instanceId" value="AUTO"/> <property name="org.quartz.scheduler.overwriteExistingJobs" value="true"/> <property name="org.quartz.threadPool.threadCount" value="10"/> <property name="org.quartz.threadPool.class" value="org.quartz.simpl.SimpleThreadPool"/> <property name="org.quartz.jobStore.misfireThreshold" value="60000"/> <property name="org.quartz.jobStore.class" value="org.quartz.impl.jdbcjobstore.JobStoreTX"/> <property name="org.quartz.jobStore.driverDelegateClass" value="org.quartz.impl.jdbcjobstore.StdJDBCDelegate"/> <property name="org.quartz.jobStore.dataSource" value="myDS"/> <property name="org.quartz.jobStore.tablePrefix" value="QRTZ_"/> </scheduler> <dataSource name="myDS" driver="com.mysql.jdbc.Driver" user="myuser" password="mypassword" maxConnections="5" url="jdbc:mysql://localhost:3306/quartz?useUnicode=true&characterEncoding=UTF-8" /> </quartz> ``` 在上面的示例,`org.quartz.scheduler.overwriteExistingJobs` 属性设置为 `true`,以便覆盖现有的作业和触发器。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值