Spring Boot @ConditionalOnProperty没有看到属性覆盖

时间:2019-09-16 12:03:25

标签: spring spring-boot

我有一个Spring Boot应用程序和一个外部库。应用程序将导入库。在库中,属性设置为默认值true。在应用程序中,我想覆盖此值。库中有一个@Configuration类,该类根据该属性的值有条件地加载。相关类如下所示:

库的配置类:

@Configuration
@EnableConfigurationProperties(LibraryProperties.class)
@ConditionalOnProperty(prefix = "com.foo", name = "enabled", havingValue = "true")
public class LibraryConfiguration {

    // Load the Beans

}

图书馆的application.properties:

com.foo.enabled = ${ENABLE_FOO:true}

应用程序的主类:

@Import(LibraryConfiguration.class)
@SpringBootApplication
public class App {

    public static void main(final String[] args) {
        SpringApplication.run(Appl.class, args);
    }

}

应用程序的application.properties:

com.foo.enabled = false

我的应用程序的属性文件中的属性替代无效。加载库的配置表。在应用程序的属性加载之前,注释@ConditionalOnProperty是否在之前进行了评估?

0 个答案:

没有答案