java打印被阻止_java – Log4j如何阻止我的记录器打印到控制台?

这条线

MEMORY_APPENDER=false

不起作用,你不能设置一个appender值false.

在你的情况下,最好做这样的事情:

log4j.rootLogger=ERROR,console

log4j.appender.console=org.apache.log4j.ConsoleAppender

log4j.logger.nz.ac.massey.cs.sdc.log4jassignment.s06005586.MemoryAppender = ERROR,MEMORY_APPENDER

log4j.additivity.nz.ac.massey.cs.sdc.log4jassignment.s06005586.MemoryAppender = false

你的一个例子中使用的记录器是nz.ac.massey.cs.sdc.log4jassignment.s

log4j.rootLogger = ERROR,console

log4j.appender.console = org.apache.log4j.ConsoleAppender

log4j.appender.console.layout=org.apache.log4j.PatternLayout

log4j.appender.console.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n

586.MemoryAppender,它应该映射到log4j.properties中的记录器或者只是像nz.ac.massey.cs这样的包部件.sdc.log4jassignment.

看起来你在这里混合很多. Log4jMemoryAppender是你的MEMORY_APPENDER吗?

你为什么要调用BasicConfigurator.configure()?你不想使用log4j.properties吗?

通常在课堂上你这样做是为了得到一个记录器:

package com.mycompany;

public class MyClass {

private static final Logger log = Logger.getLogger(MyClass.class);

...

}

记录器名称将是完全限定的类名com.mycompany.MyClass.

然后你可以有一个像这样的log4j.properties:

log4j.rootLogger=ERROR,console

log4j.appender.console=org.apache.log4j.ConsoleAppender

log4j.logger.com.mycompany=INFO,file

log4j.additivity.com.mycompany=false

logfj.appender.file =

好的,从头开始.一个非常简单的例子.

的src /主/爪哇/ Log4JTest.java

package org.stackoverflow;

import org.apache.log4j.Logger;

/**

* @author maba,2012-08-22

*/

public class Log4JTest {

public static final Logger log = Logger.getLogger(Log4JTest.class);

public static void main(String[] args) {

log.error("Error in main");

}

}

SRC /主/资源/ log4j.properties

log4j.rootLogger = ERROR,console

log4j.appender.console = org.apache.log4j.ConsoleAppender

log4j.appender.console.layout=org.apache.log4j.PatternLayout

log4j.appender.console.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n

现在编译并确保log4j.properties在运行时与log4j.jar和您自己的类一起在您的类路径中.

你会看到这个:

0 [main] ERROR org.stackoverflow.Log4JTest - Error in main

从这里你可以尝试添加文件appender或你自己的内存appender.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值