【发布时间】:2016-12-26 18:06:08
【问题描述】:
这是代码:
PatternLayout patternLayout = new PatternLayout("%d{MM-dd-yyyy H:mm:ss.SSS} [%p] (%C{1}.%M) %n %m");
FileAppender fileAppender = new FileAppender(patternLayout, fileName);
第二行出现以下错误:
Error:(40, 37) java: constructor FileAppender in class org.apache.logging.log4j.core.appender.FileAppender cannot be applied to given types;
required: java.lang.String,org.apache.logging.log4j.core.Layout<? extends java.io.Serializable>,org.apache.logging.log4j.core.Filter,org.apache.logging.log4j.core.appender.FileManager,java.lang.String,boolean,boolean,org.apache.logging.log4j.core.net.Advertiser
found: org.apache.log4j.PatternLayout,java.lang.String
reason: actual and formal argument lists differ in length
但是log4j javadocs 表明以 PatternLayout 作为其第一个参数和 String 作为第二个参数(用于文件名)的构造函数是有效的构造函数。
【问题讨论】: