错误 - 无法使用log4j进行日志记录

Bor*_*yev 2 java logging log4j

我想log4j 1.2 jar在我的hibernate 3.1(in eclipse)示例项目中使用.java代码运行完美,但控制台向我显示以下log4j警告 -

log4j:ERROR Could not find value for key 
log4j.appender.stdout log4j.logger.org.hibernate.info
log4j:ERROR Could not instantiate appender named 
"stdout log4j.logger.org.hibernate.info".
Run Code Online (Sandbox Code Playgroud)

我引用了以下内容 -

  1. log4j的-1.2.17.jar
  2. SLF4J-API-1.6.0.jar
  3. SLF4J-简单1.6.0.jar

我的log4j.properties文件包含 -

### Direct log messages to 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

### set log levels - ###
log4j.rootLogger=warn, stdout log4j.logger.org.hibernate.info

### log JDBC bind parameters ###
log4j.logger.org.hibernate.type=debug

###log schema export/update ###
log4j.logger.org.hibernate.tool.hbm2ddl=debug
Run Code Online (Sandbox Code Playgroud)

我该如何修复这些警告?我是伐木新手,我需要一些帮助才能弄明白.

谢谢.

Bor*_*yev 6

这一行:

### Set Log Levels - ### 
log4j.rootLogger=warn, stdout log4j.logger.org.hibernate=info 
Run Code Online (Sandbox Code Playgroud)

应分为两行:

log4j.rootLogger=warn, stdout 
log4j.logger.org.hibernate=info
Run Code Online (Sandbox Code Playgroud)

哇 !作为一个新手.我从来没有想过这样的事情.

我最后使用的代码在这里 -

### Direct log4j properties to 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  

### Set Log Levels - ###  
log4j.rootLogger=warn, stdout  
log4j.logger.org.hibernate=info  

### Log JDBC Bind Parameters ###  
log4j.logger.org.hibernate.type=debug  

### Log schema/export update ###  
log4j.logger.org.hibernate.tool.hbm2ddl=debug 
Run Code Online (Sandbox Code Playgroud)