Java Logback:加载groovy配置
如何以编程方式加载自定义命名的groovy配置(Java Logback:加载groovy配置,java,logback,logback-groovy,Java,Logback,Logback Groovy,如何以编程方式加载自定义命名的groovy配置(logback config.groovy)配置? 当我尝试时: LoggerContext loggerContext = (LoggerContext) LoggerFactory.getILoggerFactory(); loggerContext.reset(); JoranConfigurator configurator = new JoranConfigurator(); configurator.setContext(loggerC
logback config.groovy
)配置?当我尝试时:
LoggerContext loggerContext = (LoggerContext) LoggerFactory.getILoggerFactory();
loggerContext.reset();
JoranConfigurator configurator = new JoranConfigurator();
configurator.setContext(loggerContext);
configurator.doConfigure(this.getClass().getResource("/logback-config.groovy"));
获得出口:
ch.qos.logback.core.joran.spi.JoranException:解析XML时出现问题
文件。请参阅以前报告的错误
出什么问题了?这里的问题是
JoranConfigurator
只针对XML配置;对于Groovy配置文件,logback使用不同的类GafferConfiguration
。(遗憾的是,logback文档没有很好地宣传这一事实。)但是与其直接引用GafferConfiguration
,不如使用ContextInitializer
类:
LoggerContext loggerContext = (LoggerContext) LoggerFactory.getILoggerFactory();
loggerContext.reset();
new ContextInitializer(loggerContext).configureByResource(this.getClass().getResource("/logback-config.groovy"));
这允许您同时处理XML和Groovy文件类型,并利用logback的一些内置错误检查