外部jar中类的spring boot配置属性

时间:2017-02-03 22:51:52

标签: spring spring-boot jar external properties-file

我有一个jar文件,其下面有类来加载一些属性 -

@ConfigurationProperties(prefix = "common-list")
@Configuration
@Component
public class CommonConfig{
...
}

在我的春季启动项目中,上面的类/ jar是一个依赖项 如何指定在我的项目中加载此属性“common-list”的位置?
OR
我是否需要修改类/ jar,使用PropertySource注释指定属性文件在哪里查找这些公共列表值?

我有bootstrap.properties以及以下行 -

spring.application.name=xyz

配置服务器上的xyz.yaml

common-list:
...

通过查看我的spring启动应用程序的env属性,我可以看到文件被拾取并加载。但CommonConfig实例不会使用这些文件值进行初始化。

正确组织值,因为我已经通过在创建jar的同一项目中构建spring boot测试应用程序来测试它们(所有值都在CommonConfig实例中正确填充)。

更新(已解决)
问题是将我的对象转换为错误的json字符串,这导致建议进入默认路由而不是选择正确的值。

2 个答案:

答案 0 :(得分:1)

当组件扫描选择此CommonConfig类时,ConfigurationProperties注释将基本上注入application.ymlapplication.properties中以前缀common-list.开头的属性并设置它们。

请参阅DZONE文章here

答案 1 :(得分:0)

我通过决议更新了上述帖子。
问题不是加载配置属性而是代码。