log4j java.lang.NoSuchMethodError:日志记录程序:添加添加器

hwamh0ep  于 2022-11-06  发布在  Java
关注(0)|答案(1)|浏览(155)

我正在进行一个将java版本从1.4迁移到1.8的迁移项目。我成功地升级了jdk,并将应用程序运行到glassfich服务器中,但我始终遇到log4j 1.1.3的问题,并且我在addAppender方法中遇到此错误,尽管它存在于log4j的包中:

java.lang.NoSuchMethodError: org.apache.log4j.Logger (addAppender)

我尝试升级log4j版本并排除group org.slf4j,但问题仍然存在。
下面是我的代码:
建筑物。等级:

dependencies {
 compile group: 'commons-net', name: 'commons-net', version: '3.+'
 compile group: 'xerces', name: 'xercesImpl', version: '2.4.0'
 compile group: 'xmlconvert', name: 'xflat', version: '2.2'
 compile group: 'javax.mail', name: 'mail', version: '1.2'
 compile group: 'struts', name: 'struts', version: '1.1'
 compile group: 'javax.servlet', name: 'servlet-api', version: '2.3'
 compile group: 'log4j', name: 'log4j', version: '1.1.3' }

 configurations.all{
   exclude group:"org.slf4j" , module: "log4j-over-slf4j"
  }

ApplicationListener.java

Category cat = Category.getInstance (sCat);
cat.addAppender(new FileAppender(new PatternLayout(LOG_PATTERN), logFile, true));

你有没有家伙另一个命题来解决这个问题,谢谢。

irlmq6kh

irlmq6kh1#

最后我找到了解决方案,默认情况下Glassfish不提供Log4J支持,所以你应该把log4j jar放在Glassfish(glassfish/lib/)的lib文件夹里。下面是解决方案的链接:https://javaee.github.io/glassfish/wiki-archive/FaqCongifureLog4J.html

相关问题