繁体   English   中英

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

[英]java.lang.NoSuchMethodError: org.apache.log4j.Logger : addAppender

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

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

我尝试升级 log4j 版本并排除group org.slf4j但问题仍然存在。

下面是我的代码:

build.gradle:

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));

你们有解决这个问题的其他建议吗,谢谢。

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM