spring - Spring Boot @ConditionalOnProperty 没有看到属性覆盖
问题描述
我有一个 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
评估注释?
解决方案
推荐阅读
- javascript - Open Data Kit 2.0:调查表“条件”列中的任何表达式都会引发错误
- java - (可能)自定义 ThreadPoolExecutor 的内存泄漏
- ajax - 如何使用 console.log 打印 JSON
- tensorflow - tensorflow 配置文件解释
- android - 保存动态添加的视图
- python - 如何在循环中每次将新列提供给 spark 数据框?
- scala - HBaseTableCatalog.tableCatalog 显示错误 - Symbol 'term
类路径中缺少 .yetus.audience'。如何解决这个问题? - php - Typo3 8.7:通过 redirect() 在动作之间传递数据不起作用
- html - Flex Child Height 未拉伸到父级的全高(使用 align-self 拉伸)
- javascript - Can't receive my js and css files with Webpack DevServer