log4j:WARN No appenders could be found for logger (com.hibernate.mapping.CcourseDAO).
log4j:WARN Please initialize the log4j system properly.
Exception in thread "main" java.lang.NoClassDefFoundError: Could not initialize class com.hibernate.mapping.HibernateSessionFactory
at com.hibernate.mapping.BaseHibernateDAO.getSession(BaseHibernateDAO.java:13)
at com.hibernate.mapping.Test.main(Test.java:20)
解决方案:
首先,前两行,是因为classes目录下少了一个文件:log4j.properties文件内容是下面这些。
# Configure logging for testing: optionally with log file
log4j.rootLogger=WARN, stdout
# log4j.rootLogger=WARN, stdout, logfile
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d %p [%c] - %m%n
log4j.appender.logfile=org.apache.log4j.FileAppender
log4j.appender.logfile.File=target/spring.log
log4j.appender.logfile.layout=org.apache.log4j.PatternLayout
log4j.appender.logfile.layout.ConversionPattern=%d %p [%c] - %m%n
下面的那些错误,可能就是配置的问题,我重新做一遍,然后检查好配置,就好了。