rip*_*234 49 java logging log4j slf4j
SLF4J的"Hello World"示例对我不起作用.我想这是因为我将slf4j-log4添加到了我的类路径中.我应该直接配置log4j以使hello world工作吗?
log4j:WARN No appenders could be found for logger (HelloWorld).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
更新:我添加了log4j初始化,它仍然无法正常工作:
public static void main(String[] params) {
        org.apache.log4j.Logger.getRootLogger().addAppender(new ConsoleAppender());
        Logger logger = org.slf4j.LoggerFactory.getLogger(TestBase.class);
        logger.info("Hello World");
    }
我得到了:
log4j:ERROR No output stream or file set for the appender named [null].
dar*_*ioo 74
如果要使用slf4j simple,则需要jar在类路径中使用以下文件:
如果你想使用slf4j和log4j,你需要jar在类路径上这些文件:
不多也不少.使用slf4j simple,您将获得INFO级别或更高级别的基本日志记录.使用时log4j,必须相应地进行配置.
ylu*_*ylu 45
以下是一个例子.您可以在此处查看详细信息http://jkssweetlife.com/configure-slf4j-working-various-logging-frameworks/并下载完整代码.
如果您使用maven,请将以下依赖项添加到您的pom,否则,只需下载jar文件并放入类路径
<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-api</artifactId>
    <version>1.7.7</version>
</dependency>
<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-log4j12</artifactId>
    <version>1.7.7</version>
</dependency>
配置log4j.properties
log4j.rootLogger=TRACE, stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd'T'HH:mm:ss.SSS} %-5p [%c] - %m%n
Java示例
public class Slf4jExample {
    public static void main(String[] args) {
        Logger logger = LoggerFactory.getLogger(Slf4jExample.class);
        final String message = "Hello logging!";
        logger.trace(message);
        logger.debug(message);
        logger.info(message);
        logger.warn(message);
        logger.error(message);
    }
}
you need to add 3 dependency ( API+ API implementation + log4j dependency) 
Add also this 
<dependency>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-core</artifactId>
    <version>2.5</version>
</dependency>
# And to see log in command line , set log4j.properties 
# Root logger option
log4j.rootLogger=INFO, file, stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n
#And to see log in file  , set log4j.properties 
# Direct log messages to a log file
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=./logs/logging.log
log4j.appender.file.MaxFileSize=10MB
log4j.appender.file.MaxBackupIndex=10
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n
| 归档时间: | 
 | 
| 查看次数: | 100241 次 | 
| 最近记录: |