【发布时间】:2017-06-21 10:00:15
【问题描述】:
我有一个 jar 文件,它有下面的类来加载一些属性 -
@ConfigurationProperties(prefix = "common-list")
@Configuration
@Component
public class CommonConfig{
...
}
在我的 spring boot 项目中,上面的 class/jar 是一个依赖项。
如何指定在我的项目中查找此属性“common-list”以加载的位置?
或
我是否需要修改类/jar,使用 PropertySource 注释指定在哪里查找这些公共列表值的属性文件?
我有以下行的 bootstrap.properties -
spring.application.name=xyz
配置服务器上的xyz.yaml
common-list:
...
通过查看我的 Spring Boot 应用程序的 env 属性,我可以看到文件已被拾取并加载。但是 CommonConfig 实例不会使用这些文件值进行初始化。
值组织正确,因为我通过在创建 jar 的同一项目中构建一个 spring boot 测试应用程序来测试它们(所有值都正确填充在 CommonConfig 实例中)。
更新(已解决)
问题是将我的对象错误地转换为 json 字符串,这导致建议进入默认路由而不是选择正确的值。
【问题讨论】:
标签: spring spring-boot jar external properties-file