0
我想寫一個示例應用程序使用log4j和slf4j。該代碼是在我的應用程序很簡單,我在我的主類下面的代碼在main方法我的問題與log4j java.lang.ClassNotFoundException:= org.apache.log4j.RollingFileAppender
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
Logger logger = LoggerFactory.getLogger("com.company.cdrs");
logger.info("testing it in the application");
我使用下面的命令來運行測試程序
java -cp /home/nbansal/workspace_eclipse_luna/event-utils-test/target/classes:event-utils-1.1~vox~trunk.jar:json-simple-1.1.jar:slf4j-api-1.7.7.jar:slf4j-log4j12-1.7.7.jar:log4j-1.2.17.jar:log4j-1.2.13.jar -Dlog4j.configuration=file:///home/nbansal/workspace_eclipse_luna/event-utils-test/target/classes/resources/log4j.properties com.company.eventtest.EventUtilsTest
當我運行該應用程序,我不斷收到以下錯誤:
Picked up JAVA_TOOL_OPTIONS: -javaagent:/usr/share/java/jayatanaag.jar
log4j:ERROR Could not instantiate class [=org.apache.log4j.RollingFileAppender].
java.lang.ClassNotFoundException: =org.apache.log4j.RollingFileAppender
at java.net.URLClassLoader$1.run(URLClassLoader.java:372
我不明白爲什麼我得到這個錯誤,我在classpath中提供正確log4j的jar文件。 這裏是我的log4j.properties該怎麼看起來像
log4j.rootLogger=DEBUG
log4j.logger.com.company.cdrs=DEBUG, hadoop_cdr
log4j.additivity.com.company.cdrs=false
log4j.appender.hadoop_cdr==org.apache.log4j.RollingFileAppender
log4j.appender.hadoop_cdr.File=/home/nbansal/workspace_eclipse_luna/event-utils-test/cdr_events.out
log4j.appender.hadoop_cdr.ImmediateFlush=true
log4j.appender.hadoop_cdr.Threshold=debug
log4j.appender.hadoop_cdr.Append=true
log4j.appender.hadoop_cdr.layout=org.apache.log4j.PatternLayout
log4j.appender.hadoop_cdr.layout.conversionPattern=%u %m%n
log4j.appender.hadoop_cdr.DatePattern='.'yyyy-MM-dd-HH
非常感謝,我從未注意到這個,這樣一個愚蠢的錯誤,再次感謝 – Nitesh