我在项目中设置了java.util.logging.Logger
,如下所示。
public static final String LOGGER_NAME = POSClient.class.getName();
public static Logger logger;
private static final String LOGGING_PROPERTY_FILE = "logging.properties";
public static void main(String[] args) {
// Load logging properties.
System.setProperty("java.util.logging.config.file", POSClient.class.getClassLoader().getResource(LOGGING_PROPERTY_FILE).getFile());
// Initialise logger.
logger = Logger.getLogger(LOGGER_NAME);
}
以下是我的 logging.properties 文件。
handlers=java.util.logging.ConsoleHandler
.level = WARNING
java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter
java.util.logging.ConsoleHandler.level = WARNING
com.cineops.pos.level = WARNING
org.apache.http.level = FINEST
org.apache.http.wire.level = SEVERE
当我尝试记录某些内容时,无论日志记录级别如何,控制台始终显示该消息。例如;
logger.log(Level.INFO, "Properties loaded successfully.");
会将消息记录到 Eclipse 控制台。
从属性文件中可以看到,我正在尝试将 HttpClient 消息记录到控制台上但没有成功。是什么来自 Eclipse 阻止设置加载?任何帮助将不胜感激。
我的 logging.properties 文件位于类路径(Resources文件夹)中。
答案 0 :(得分:1)
你应该试试
File configFile = POSClient.class.getClassLoader().getResource(LOGGING_PROPERTY_FILE).getFile();
LogManager.getLogManager().readConfiguration(configFile);
而不是
System.setProperty(...);