我是log4j的新手。当我在互联网上阅读时,子记录器继承父记录器设置。通常给出的示例是针对同一包中的两个类。但是,如果课程将在不同的包中呢?例如
import com.foo.Bar;
public class MyApp{
static Logger logger = Logger.getLogger(MyApp.class);
public static void main(String[] args) {
BasicConfigurator.configure(); // default logging level is debug
Bar bar = new Bar();
bar.doIt();
}
}
和不同包中的第二个类
package mypackage;
import org.apache.log4j.Logger;
public class Bar {
static Logger logger = Logger.getLogger(Bar.class);
public void doIt() {
logger.debug("Did it again!");
}
}
那么班级Bar
中的记录器级别是多少?
答案 0 :(得分:0)
MyApp
是默认包。请注意,建议不要使用此question中已回答的默认包。
我认为无法为默认包定义自定义<logger>
,因此必须<root>
应用。
除非您为<logger>
定义自定义mypackage.Bar
,否则<root>
也适用于该类。
除了<root>
统治它们之外,MyApp
和Bar
在日志配置方面无关。