package mylog; import org.slf4j.Logger; import org.slf4j.LoggerFactory; public class Logtest { // 首先获得日志记录这个对象 static private Logger logger = LoggerFactory.getLogger(Logtest.class); public static void main(String[] args) { // 记录error信息 logger.error("[info message]"); // 记录info,还可以传入参数 //logger.info("[info message]{},{},{},{}", "abc", false, 123,new Logtest()); // 记录deubg信息 logger.debug("[debug message]"); // 记录trace信息 logger.trace("[trace message]"); //System.out.println("hello world"); } }
Log4j.properties
log4j.rootLogger = debug , D , 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{ABSOLUTE} %5p %c{1}:%L - %m%n log4j.appender.D = org.apache.log4j.DailyRollingFileAppender log4j.appender.D.File = ../logs/error.log log4j.appender.D.Append = true log4j.appender.D.Threshold = DEBUG log4j.appender.D.layout = org.apache.log4j.PatternLayout log4j.appender.D.layout.ConversionPattern = %-d{yyyy-MM-dd HH🇲🇲ss} [ %t:%r ] - [ %p ] %m%n
可以打印到控制台就是不能创建并写在日志文件里
我怀疑是你没找到而已。。。
注意这个文件位置并不是在你项目的根目录下。
自己顶啊,为什么引入的logger 和loggerFactory 都是jar包bean-validator的
slf4j所需的三个包
slf4j-api-1.6.1.jar+slf4j-log4j12-1.6.1.jar+log4j-1.2.17.jar
我都放到classpash了。为什么只能打印到控制台 不能输出到日志文件啊。直接用log4j就可以
引用来自“茶_壶”的评论
还没解决?调整一下jar文件的顺序啊,myeclipse的话,参照这个http://yehandjava.iteye.com/blog/2069532我用跟踪找到所引入的类也是正确的