Spring Boot - 从依赖jar

时间:2017-02-01 15:58:56

标签: java spring

我有一个Spring Boot应用程序,我想按特定顺序将值注入@ConfigurationProperties bean。

例如,

@ConfigurationProperties("myproperties") class MyProperties { private String property1; .... }

基application.yml

myproperties: property1: some-value

上面的类和属性文件位于jar文件中。在我的Spring Boot应用程序的邮件应用程序中(以上jar作为依赖关系)我使用了@PropertySource(value = { "application.yml", "base-application.yml"}) 但在null中获得了MyProperties个值。

我试过

@PropertySources({
    @PropertySource("classpath:application.yml"),
    @PropertySource("classpath*:base-application.yml")

}) 

同样,但这也不起作用。

如果我在application.yml中添加myproperties.property1值,那么它可以正常工作。是否可以从另一个jar内的属性文件中注入属性值?如果是这样,我在这里做错了什么?

2 个答案:

答案 0 :(得分:2)

  

无法通过@PropertySource注释加载YAML文件。所以   如果您需要以这种方式加载值,则需要使用a   属性文件。   Check the docs here

答案 1 :(得分:0)

如果属性文件在jar的META-INF目录中,您可以按如下方式加载它们: “类路径*:/ META-INF / *属性”