web项目中Log4j不输出到文件问题
这样可以保证log4j能够自动识别配置文件,而不用显式的配置)内容如下:
public class TestLogger {
public static Log log = LogFactory.getLog(TestLogger.class);
public static void main(String[] args) {
log.error("怎么回事?");
}
@Test
public void test() {
log.error("怎么回事?");
}
} 以上程序可以输出到控制台和logs.log文件当中。但是如下程序:
public class TestLogs extends HttpServlet {
private static final long serialVersionUID = 1L;
private static Log log = LogFactory.getLog(TestLogs.class);
/**
* @see HttpServlet#HttpServlet()
*/
public TestLogs() {
// TODO Auto-generated constructor stub
}
@Override
public void init() throws ServletException {
log.error("怎么回事?");
}
} 输出只能输出到控制台,而无法输出到logs.log文件当中。
问题出在
log4j.appender.file.File=../logs.log
这个配置之上。应更改为:
log4j.appender.file.File=d:/logs.log
即要指定绝对路径而不能指定相对路径!问题解决!
配置成相对路径时,在eclipse 工程跟目录下能生成相应的日志文件,但是web服务器启动时不会记录到根目录下的日志文件,因为web服务器找不到。
纠结好久的问题!!。
相关推荐
chw0 2020-11-04
大唐帝国前营 2020-08-18
sdaq 2020-07-26
MrLiar 2020-07-07
sdaq 2020-06-16
CXC0 2020-06-14
丨Fanny丨Cri 2020-06-13
CXC0 2020-06-08
dongxurr 2020-06-07
sdaq 2020-06-06
MrLiar 2020-06-04
丨Fanny丨Cri 2020-06-03
MrLiar 2020-05-25
丨Fanny丨Cri 2020-05-17
MrLiar 2020-05-14
MrLiar 2020-05-12
sdaq 2020-05-11