我有以下代码,并且不希望打印这些日志消息。我还想停止来自同一项目中其他库的日志消息进行打印。
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class Main{
public static void main(String[] args) {
final Logger slf4jLogger = LoggerFactory.getLogger(Main.class);
slf4jLogger.info("im printing info");
slf4jLogger.error("printing error");
}
我在classpath中添加了src / test / resources下的log4j.properties。 log4j.properties如下
log4j.rootLogger=OFF
log4j.logger.main=OFF
我想阻止这些日志从打印到控制台。 但它无法正常工作并打印日志。 这是我缺少的东西吗?
答案 0 :(得分:0)
我假设您正在使用Log4J 2,根据documentation的要求,在没有log4j.configurationFile
系统属性的情况下,配置文件名为log4j2.properties
,而不是log4j.properties
就像你一样。
正如文档所说:
如果没有配置文件可以找到DefaultConfiguration 将会被使用。这将导致日志记录输出进入控制台。
您在/src/test/resources
而不是/src/main/resources
获得了配置文件也很奇怪,因此根据您的想法,您已将配置文件放到了openssl pkcs12 -export -in server.crt -inkey server.key \
-out server.p12 -name [some-alias] \
-CAfile ca.crt -caname root
keytool -importkeystore \
-deststorepass [changeit] -destkeypass [changeit] -destkeystore server.keystore \
-srckeystore server.p12 -srcstoretype PKCS12 -srcstorepass some-password \
-alias [some-alias]
上classpath,这也可能导致问题。