最近复习了下hibernate的内容,用于准备面试。另外看了下尚学堂的视频,按照步骤去做了几个实验,
但是在这过程中遇到了以下错误问题:
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/D:/Jar%20Package/slf4j-1.6.4/slf4j-log4j12-1.6.4.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/D:/Jar%20Package/slf4j-1.6.4/slf4j-nop-1.6.4.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
Exception in thread "main" java.lang.ExceptionInInitializerError
at org.hibernate.cfg.Configuration.reset(Configuration.java:217)
at org.hibernate.cfg.AnnotationConfiguration.reset(AnnotationConfiguration.java:233)
at org.hibernate.cfg.Configuration.<init>(Configuration.java:197)
at org.hibernate.cfg.Configuration.<init>(Configuration.java:201)
at org.hibernate.cfg.AnnotationConfiguration.<init>(AnnotationConfiguration.java:108)
at com.bjsxt.hibernate.HibernateQLTest.beforeClass(HibernateQLTest.java:21)
at com.bjsxt.hibernate.HibernateQLTest.main(HibernateQLTest.java:367)
Caused by: java.lang.NullPointerException
at org.hibernate.util.ConfigHelper.getResourceAsStream(ConfigHelper.java:167)
at org.hibernate.cfg.Environment.<clinit>(Environment.java:575)
... 7 more
后经网上查找,原因在于自己在eclipse中增加user library的时候有个复选框"System libary(added to the boot class path)",这个东西不要勾上了,我就是把这个勾上了所以就不行了。以上 你要排除你正确的导入了所有必须的包。
以上解决问题方法来自于csdn一位朋友的回帖,非常感谢。
另外在该问题出现之前也会出现slf4j的相关错误,你要确保user library下的jar包应该完整。
为方便大家不走弯路,在这里给大家贴出来需要的jar包:
大家可以根据上述jar包参考来加入。