@scheduled为cron表达式抛出异常

时间:2016-04-05 06:39:56

标签: java spring spring-mvc scheduler spring-scheduled

我已将cron表达式放在属性文件中。然后我尝试从java文件中引用cron表达式,如图所示。

    @Scheduled(cron=  "${cron.expression}" )
    public void test(){
    ...
    }

它给我发了以下错误:

Cron expression must consist of 6 fields (found 1 in "${cron.expression}"

我是这个调度程序的新手。请提供有关如何使此表达式可配置的建议。

由于

1 个答案:

答案 0 :(得分:3)

我在AppConfig java文件中添加了以下内容。

    @Bean
    public static PropertySourcesPlaceholderConfigurer propertySourcesPlaceholderConfigurer() {
        return new PropertySourcesPlaceholderConfigurer();
    }

如果没有PropertySourcesPlaceholderConfigurer,我们只能使用Autowired环境变量访问属性文件。但是使用PropertySourcesPlaceholderConfigurer,我们可以使用$ {..}来使用属性文件变量。

有了这个逻辑,我的代码开始像魅力一样工作。

感谢您回复@ S.B和@RaphaelRoth。