引导从依赖项而不是应用程序中获取属性文件

时间:2016-09-01 07:05:11

标签: java spring maven spring-boot

我正在使用spring boot,我在项目中添加了另一个Spring启动应用程序作为Maven依赖项。我面临的问题是,当我运行应用程序时,它会选择依赖项的属性文件而不是当前的应用程序。例如,如果我使用dev配置文件运行应用程序,则从依赖项而不是正在运行的应用程序中选择application-dev.property文件。 我尝试调试 EnableEncryptablePropertySourcesPostProcessor 文件,下面是选择的属性文件列表的屏幕截图。

enter image description here

3 个答案:

答案 0 :(得分:1)

检查this out,但您有几个选择:

  1. 只需指定配置文件名:

    java -jar myproject.jar --spring.config.name = myproject

  2. 基本上你可以拥有myproject-dev.properties

    1. 或直接指定您要导入的配置文件:

      java -jar myproject.jar --spring.config.location = classpath:/default.properties,classpath:/override.properties

答案 1 :(得分:1)

使用 PropertySource 注释来引用主应用程序文件中的属性文件,如下所示

@PropertySource(value = { "file:/path/to/folder/file.properties" })

如果多个属性文件中有相同的属性,则类路径中的一个属性将获得更多的首选项

答案 2 :(得分:0)

**在Application.java文件中,它应该是这样的

@PropertySource("类路径:application.properties&#34)