问题
如何在 groovy spring boot 项目中定义 Spring Expression Language (SpEL)?(每个 spring 调度程序 crontab @scheduled 注释)
Spring Boot Groovy 和 Spring EL 调度程序
根据网络上的文档,我在我的groovy spring boot 应用程序(2.2.x)中使用 spring 调度程序
根据这篇文章:使用属性文件中的 cron 表达式进行任务调度
试过这个
我尝试如下定义我的 cron 表达式:
@Scheduled(cron = "${appConfig.defaultCron}")
和
@Scheduled(cron = "#{appConfig.defaultCron}")
但得到这个错误:
属性“cron”应具有类型“java.lang.String”;但在@org.springframework.scheduling.annotation.Scheduled 中找到了“java.lang.Object”类型
分析
似乎弹簧'cron cruncher'将“$ {xxx}”视为Gstring而不是字符串
问题
如何让 SpringEL 在 groovy spring boot 项目的 cron 定义中工作?
参考 https://www.baeldung.com/spring-scheduled-tasks