将slf4j jar文件放在Glassfish 4中的哪个位置?

时间:2015-08-03 16:18:13

标签: java glassfish slf4j glassfish-4 jboss-logging

我正在尝试使用slf4j作为与Glassfish 4.1捆绑在一起的jboss-logging的日志记录提供程序。但无论我把slf4j jar文件放在哪里,jboss-logging都无法找到jar。它在服务器启动期间失败,错误如下 -

Caused by: java.lang.ClassNotFoundException: org.slf4j.LoggerFactory not found by org.jboss.logging.jboss-logging [16
        at org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1532)
        at org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:75)
        at org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1955)
        at java.lang.ClassLoader.loadClass(Unknown Source)

如何让slf4j jar对jboss-logging可见?

1 个答案:

答案 0 :(得分:1)

您可以将slf4j jar放在

<glassfish installation dir>\glassfish\modules\endorsed\  

您还需要添加桥接/实现,否则,Glassfish将无法找到上述类。您可以在上面提到的背书文件夹中添加slf4j-log4jlog4jslf4j-jdk jar以及slf4j,具体取决于您的意图。