我正在尝试接收我班级的记录器:
public static final java.util.logging.Logger log = java.util.logging.Logger.getLogger(this);
但是使用“this”导致“无法在静态上下文中使用它”错误。
任何人都知道如何解决这个问题?
编辑:我必须能够从我的程序中的所有类访问记录器,因此必须是公开的。
答案 0 :(得分:10)
注意我将修饰符从public
更改为private
:
public class FooBar {
private static final Logger log = Logger.getLogger(FooBar.class);
//or (if you are using java.util.logging):
private static final Logger log = Logger.getLogger(FooBar.class.getName());
}
答案 1 :(得分:6)
对于org.appache.log4j:
private static final Logger LOG = Logger.getLogger(MyClass.class);
对于java.util.Logging
private static final Logger LOG = Logger.getLogger(MyClass.class.getName());