如果项目类路径中不存在 logback.xml,我们如何通过 jvm 参数加载 logback.xml?
我正在使用
-Dlogback.configuration=file:C:\logbacs\logback.xml
但这不起作用。
如果项目类路径中不存在 logback.xml,我们如何通过 jvm 参数加载 logback.xml?
我正在使用
-Dlogback.configuration=file:C:\logbacs\logback.xml
但这不起作用。
我找到了解决方案
-Dlogging.config="C:\logbacs\logback.xml"
对我来说很好。
已更新,因为先前的答案已过时
如果您不使用 SpringBoot,上述方法将不起作用。
我正在使用 ch.qos.logback.logback-classic 库,在这种情况下,解决方案是
-Dlogback.configurationFile=file:/app/logback.xml
我在 ch.qos.logback.classic.util.ContextInitializer 中找到了这个属性:
final public static String CONFIG_FILE_PROPERTY = "logback.configurationFile"
这个问题的原始答案似乎不再起作用,因为它产生了这个警告:
o.s.b.l.logback.LogbackLoggingSystem : Ignoring 'logback.configurationFile' system property. Please use 'logging.config' instead.
因此,你会想要使用这样的东西:
-Dlogging.config="C:\logbacs\logback.xml"
对我来说,它只适用于这个属性:
-Dconfig.dir= "YOUR PATH TO CONFIG FILE"
根据https://logback.qos.ch/manual/configuration.html,使用-Dlogback.configurationFile
java -Dlogback.configurationFile=/path/to/config.xml chapters.configuration.MyApp1