未从 属性 文件加载日志记录级别

Loggin level is not loaded from property file

我在我的项目中设置了一个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 文件在类路径(资源文件夹)中。

你应该试试

File configFile = POSClient.class.getClassLoader().getResource(LOGGING_PROPERTY_FILE).getFile();
LogManager.getLogManager().readConfiguration(configFile);

而不是

System.setProperty(...);