配置ecplise日志发现错误
java.lang.NoClassDefFoundError: org/apache/log4j/Layout
java.lang.Class.getDeclaredConstructors0(Native Method)
java.lang.Class.privateGetDeclaredConstructors(Unknown Source)
java.lang.Class.getConstructor0(Unknown Source)
java.lang.Class.newInstance0(Unknown Source)
java.lang.Class.newInstance(Unknown Source)
org.apache.struts.util.RequestUtils.applicationInstance(RequestUtils.java:145)
org.apache.struts.action.RequestProcessor.processActionCreate(RequestProcessor.java:282)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:220)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1158)
org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:397)
javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
root cause java.lang.ClassNotFoundException: org.apache.log4j.Layout
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1387)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1233)
java.lang.ClassLoader.loadClassInternal(Unknown Source)
java.lang.Class.getDeclaredConstructors0(Native Method)
java.lang.Class.privateGetDeclaredConstructors(Unknown Source)
java.lang.Class.getConstructor0(Unknown Source)
java.lang.Class.newInstance0(Unknown Source)
java.lang.Class.newInstance(Unknown Source)
org.apache.struts.util.RequestUtils.applicationInstance(RequestUtils.java:145)
org.apache.struts.action.RequestProcessor.processActionCreate(RequestProcessor.java:282)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:220)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1158)
org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:397)
javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)有疑问 ,我把该日志代码放到java工程里是正常的。能够写入日志文件。
现在吧日志文件放到web工程里 ,结果发现上面错误(log4j。propertites在web/classes下面)
为社么在2种不同类型下会不同 (2者都是add log4j jar(jar在tomcat lib)到项目里)
为社么web工程下会找不到 java.lang.NoClassDefFoundError: org/apache/log4j/Layout
java.lang.Class.getDeclaredConstructors0(Native Method)发生错误的代码
import org.apache.log4j.Level;
import org.apache.log4j.Logger;
import org.apache.log4j.SimpleLayout;
import org.apache.log4j.FileAppender;
。。
static{System.out.println("load class1");};
static Logger logger = Logger.getLogger(DisplayAllAction.class); -----就是这个地方
static{System.out.println("load sdfdfsfds class"); }
(申明 我在java工程上面代码验证通过,可以写入日志)
java.lang.NoClassDefFoundError: org/apache/log4j/Layout
java.lang.Class.getDeclaredConstructors0(Native Method)
java.lang.Class.privateGetDeclaredConstructors(Unknown Source)
java.lang.Class.getConstructor0(Unknown Source)
java.lang.Class.newInstance0(Unknown Source)
java.lang.Class.newInstance(Unknown Source)
org.apache.struts.util.RequestUtils.applicationInstance(RequestUtils.java:145)
org.apache.struts.action.RequestProcessor.processActionCreate(RequestProcessor.java:282)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:220)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1158)
org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:397)
javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
root cause java.lang.ClassNotFoundException: org.apache.log4j.Layout
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1387)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1233)
java.lang.ClassLoader.loadClassInternal(Unknown Source)
java.lang.Class.getDeclaredConstructors0(Native Method)
java.lang.Class.privateGetDeclaredConstructors(Unknown Source)
java.lang.Class.getConstructor0(Unknown Source)
java.lang.Class.newInstance0(Unknown Source)
java.lang.Class.newInstance(Unknown Source)
org.apache.struts.util.RequestUtils.applicationInstance(RequestUtils.java:145)
org.apache.struts.action.RequestProcessor.processActionCreate(RequestProcessor.java:282)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:220)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1158)
org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:397)
javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)有疑问 ,我把该日志代码放到java工程里是正常的。能够写入日志文件。
现在吧日志文件放到web工程里 ,结果发现上面错误(log4j。propertites在web/classes下面)
为社么在2种不同类型下会不同 (2者都是add log4j jar(jar在tomcat lib)到项目里)
为社么web工程下会找不到 java.lang.NoClassDefFoundError: org/apache/log4j/Layout
java.lang.Class.getDeclaredConstructors0(Native Method)发生错误的代码
import org.apache.log4j.Level;
import org.apache.log4j.Logger;
import org.apache.log4j.SimpleLayout;
import org.apache.log4j.FileAppender;
。。
static{System.out.println("load class1");};
static Logger logger = Logger.getLogger(DisplayAllAction.class); -----就是这个地方
static{System.out.println("load sdfdfsfds class"); }
(申明 我在java工程上面代码验证通过,可以写入日志)
我是直接复制该文件到web工程下请问一定要用import导入(具体如何做 是否工程找不到log4j.properties文件)
还是不可以的