SpringBoot项目读取外置logback配置文件的问题
前言
springboot项目可以读取外置配置文件,避免了修改配置文件需要重新打包部署的问题。部署项目的时候可以在jar包同一目录下新建了config文件夹,将所有的配置文件都放在config文件夹下统一管理,springboot会优先读取jar包同一目录下config目录下的配置文件。下次需要修改配置文件内容就直接在config目录下修改,然后重启项目即可。
问题
启动jar包,却出现了问题:springboot读取的logback-spring.xml还是项目内置的,并没有读取外置的config目录下的logback-spring.xml。经过测试,发现其他配置文件如application.yml的读取都是没问题的,就只有logback配置文件读取没有按预想来。
解决
猜想是因为springboot默认读取的就是项目的resources目录下的logback配置文件。所以解决思路是在启动jar包命令中指定logback配置文件路径:
java -jar -Dlogging.config=./config/logback-spring.xml datasync-web.jar
这样启动jar包即可读取config目录下的logback-spring.xml了。