从多个类访问Util.logger

时间:2016-03-04 12:16:26

标签: java logging java.util.logging

我是util.logging的新手,所以对某些人来说这似乎是一个微不足道的问题,但无论如何这里......我正在使用Java的Util.logger来记录消息。我正在尝试在单个类中声明一个记录器,并从其他类访问它以记录消息。

记录器类

package util;

import java.util.logging.*;

public class Logger {

public Logger LOGGER = Logger.getLogger(Logger.GLOBAL_LOGGER_NAME);

 }

我正在尝试在其他类中访问此记录器,如下所示..

package mycode;

import util.Logger;

public class MYcode{

private void test(){
 LOGGER.fine("Sample message");
}
}

编译错误消息 ..

error: cannot find symbol
[javac]LOGGER.fine("Sample message");

当我在Mycode类中声明记录器时,我没有收到任何错误,但在声明另一个类时我收到错误。知道我哪里错了吗?

2 个答案:

答案 0 :(得分:0)

只需在需要记录器的所有类中使用相同的行:

public Logger LOGGER = Logger.getLogger(Logger.GLOBAL_LOGGER_NAME);

这样您就可以创建对由全局名称标识的一个logger实例的许多引用。

答案 1 :(得分:0)

问题是你的'LOGGER'不是静态的,所以你无法访问。

记录器类:

package util;

import java.util.logging.*;

public class Logger {

public static final Logger LOGGER = Logger.getLogger(Logger.GLOBAL_LOGGER_NAME);

 }

访问其他类中的记录器:

package mycode;

        import util.Logger;

        public class MYcode{

        public void test(){
         LOGGER.fine("Sample message");

        }    
    }