[英]java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory in OSGi
[英]Hibernate - java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory
我试图使用hibernate和HSQLDB运行简单的程序。
我使用log4j
这个项目与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} %c{1}:%L - %m%n
# Root logger option
log4j.rootLogger=INFO, stdout
# Hibernate logging options (INFO only shows startup messages)
log4j.logger.org.hibernate=INFO
# Log JDBC bind parameter runtime arguments
log4j.logger.org.hibernate.type=INFO
所有都是用Ant
构建的,构建文件可以在这里看到 。
但是,当我运行schemaexport
目标时,遇到了下一个错误:
BUILD FAILED
/home/nazar_art/workspace/Persistance/build.xml:64: java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory
但是我没有用slf4j
为什么会这样?
这是我使用的所有jars的lib
文件夹的内容:
我不知道为什么会这样?
这是更好的项目结构:
编辑:
我添加了slf4j-api-1.6.1.jar
和slf4j-log4j12-1.6.1.jar
但它抛出:
失败/home/nazar_art/workspace/Persistance/build.xml:64:java.lang.NoClassDefFoundError:javax / persistence / EntityListeners
您可以在这里看到外观:
如何解决这个麻烦?
Hibernate在内部使用SLF4J进行日志记录。 在此处阅读设置说明: http : //docs.jboss.org/hibernate/core/3.6/reference/zh-CN/html_single/#tutorial-firstapp-setup您需要在构建和运行时类路径上保留SLF4J jar
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.