【发布时间】:2020-05-08 16:40:08
【问题描述】:
我在 SpringBoot 配置文件中有一堆 @Value 注释字段,在标准 application.properties 中具有匹配值。如果我不注释配置文件with @PropertySource("classpath:application.properties"),它只会将“${prop1}”字符串复制到实际变量中。
我尝试将@EnableAutoConfiguration 添加到@Configuration 类(而不是PropertySource 注释),但它所做的只是在找不到请求的属性时中断。
SpringBoot 应该从标准的application.properties 文件中自动解析属性,为什么会出现这种行为?使用版本 2.2.2.RELEASE
更新:
答案是正确的,它不起作用的原因是我在测试中调用了这些属性。使用 @SpringBootTest 注释测试可以解决此问题。事实上,当应用程序运行时,@SpringBootApplication 会发挥作用
【问题讨论】:
-
你能添加你的配置文件和你想注入值的类吗? Spring Boot 应该自动解析
application.properties文件中的属性。 -
你有没有标记为
@SpringBootApplication的主要方法?
标签: spring-boot