【问题标题】:Getting error when trying to instantiate FileAppender in log4j尝试在 log4j 中实例化 FileAppender 时出错
【发布时间】: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 作为第二个参数(用于文件名)的构造函数是有效的构造函数。

【问题讨论】:

    标签: java apache logging log4j


    【解决方案1】:

    您的课程中有错误的导入。它应该是import org.apache.log4j.FileAppender;,而不是import org.apache.logging.log4j.core.appender.FileAppender; 或类似名称。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-10-05
      • 1970-01-01
      • 1970-01-01
      • 2013-10-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多