spring-boot和./config目录

时间:2017-10-09 14:41:34

标签: java spring spring-boot

我不确定Spring-boot如何准确处理环境,属性文件和配置位置。

用例

在我的spring-boot应用程序的结果docker容器下面

Docker容器

 /
 |- spring-boot-app.jar
 |- /config/
 |--|- application.properties
 |--|- logback-spring.xml

我也使用环境变量

问题

Spring-boot不会读取logback-spring.xml。 要做到这一点,我必须添加LOGGING_CONFIG=config/logback-spring.xml

不应该Spring-boot在这个目录下自动查找logback-spring.xml吗?

谢谢

2 个答案:

答案 0 :(得分:3)

在Spring文档(https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-logging.html)中,它说:

  

可以通过包含来激活各种日志记录系统   类路径上的相应库,并进一步自定义   在类路径的根目录中提供合适的配置文件,   或者在Spring Environment属性指定的位置   logging.config。

因此,如果您将文件直接放在spring-boot-app.jar下面,它应该可以在不配置logging.config的情况下工作。

答案 1 :(得分:0)

Spring Boot会自动从以下位置加载application.properties和application.yaml,低阶优先值会覆盖这些值

  1. classpath根
  2. classpath / config包
  3. 当前目录
  4. 当前目录中的/ config子目录
  5. / config子目录的直接子目录