在 spring-boot应用程序,我正在尝试为 logback 配置默认目录.
通常,在 logback.xml我会这样配置:
<property name="logFile.dir" value="${catalina.home:-/tmp}/logs" />
分隔符是
:- .
但是,在
application.properties :
我必须这样配置:
logging.file=${catalina.home:/tmp}/logs/sportslight.log
需要从
:- 更改分隔符至
: .
问题是:
logback.xml ,这是正确的分隔符,:-或 : ? application.properties ,为什么只有:有效,是不是因为 spring-boot 在将值传递给 logback 之前会先处理它? 请您参考如下方法:
在 logback.xml 中正确的分隔符是 :- .更多详情请见 the logback docs .
在 Spring 中,正确的分隔符是 :由于 Spring 支持 ${my.property:defaultValue}句法。更多详情请见 the PlaceholderConfigurerSupport doc .
因此,当面临为变量替换选择默认值分隔符时,logback 作者选择了 :-而 Spring 作者选择了 : .




