添加 spring-boot-admin-starter-client 依赖项后无法解析占位符

在我的应用程序中,我有方法注释@Scheduled(cron="${my.cron.prop}")

我没有my.cron.prop属性文件,我的工作只是没有开始,但应用程序成功启动。

但是当我添加依赖时:

compile ("de.codecentric:spring-boot-admin-starter-client:1.5.7")

我的应用程序无法启动:

Caused by: java.lang.IllegalStateException: Encountered invalid @Scheduled method 'reportCurrentTime': Could not resolve placeholder 'my.cron.prop' in value "${my.cron.prop}"

我该如何解决?

预期行为 - 只是在没有提供财产的情况下不要开始工作



杨魅力
浏览 413回答 2
2回答

喵喔喔

你可以尝试这样的事情:@Scheduled(cron="${my.cron.prop:0 0 0 1 1 ? 2090}")在这种情况下,如果找不到该属性,Spring 将使用您提供的默认值(在我的示例中为 2090 年)。

湖上湖

我猜你的应用程序没有@EnableScheduling,spring-boot-admin-starter-client有。您可以通过提供默认值来避免这种情况:查看其他答案解决此问题的更好方法是在属性可用时使用专用组件启动您的工作@Component @ConditionalOnProperty( name = "my.cron.prop" )public class Tasks {    @Scheduled(cron = "${my.cron.prop}")    public void task() {       /*do your suff*/    }
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java