簡體   English   中英

NoClassDefFoundError:org.slf4j.impl.StaticLoggerBinder

[英]NoClassDefFoundError: org.slf4j.impl.StaticLoggerBinder

在Tomcat / lib中添加了jar的[Tomcat 7]

log4j-1.2.15.jar,
log4j-api-2.0-alpha2.jar,
log4j-jcl-2.0-alpha2.jar,
logback-classic-1.1.7.jar,
log4j12-api-2.0-alpha2.jar,
log4j-core-2.0-alpha2.jar,
log4j-over-slf4j-1.7.21.jar,
logback-core-1.1.7.jar

slf4j-api-1.7.21.jar,
slf4j-jcl-1.7.21.jar,
slf4j-log4j12-1.7.21.jar,
slf4j-nop-1.7.21.jar
slf4j-ext-1.7.21.jar,
slf4j-jdk14-1.7.21.jar,
slf4j-migrator-1.7.21.jar,
slf4j-simple-1.7.21.jar

出現錯誤並導致部署失敗

無法實例化SLF4J LoggerFactory報告了異常:

java.lang.NoClassDefFoundError: org.slf4j.impl.StaticLoggerBinder
        at org.slf4j.LoggerFactory.bind(LoggerFactory.java:121)
        at org.slf4j.LoggerFactory.performInitialization(LoggerFactory.java:111)
        at org.slf4j.LoggerFactory.getILoggerFactory(LoggerFactory.java:268)
        at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:241)
        at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:254)
        at org.apache.wink.server.internal.servlet.AbstractRestServlet.<clinit>(AbstractRestServlet.java:34)
        at java.lang.J9VMInternals.newInstanceImpl(Native Method)
        at java.lang.Class.newInstance(Class.java:1894)
        at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:114)
        at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1146)
        at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1085)
        at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:5349)
        at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5641)
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147)
        at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1571)
        at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1561)
        at java.util.concurrent.FutureTask.run(FutureTask.java:277)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1153)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
        at java.lang.Thread.run(Thread.java:785)
Caused by: java.lang.ClassNotFoundException: org.slf4j.impl.StaticLoggerBinder
        at java.net.URLClassLoader.findClass(URLClassLoader.java:607)
        at java.lang.ClassLoader.loadClassHelper(ClassLoader.java:844)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:823)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:325)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:803)

不知道我在想什么。 誰能分享一些看法如何糾正錯誤。

問候

我也遇到了同樣的錯誤,我相信我的解決方案可以解決它。 我正在使用Maven,所以我在POM文件中添加了一個依賴項,而不是將.jar文件明確添加到構建路徑中。

這是依賴項(最新版本在下面的鏈接頂部列出。在我的情況下為1.7.24,因此,如果可以用“ $ {slf4j-version}”代替最新版本:

    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-api</artifactId>
        <version>${slf4j-version}</version>
    </dependency>

這來自https://mvnrepository.com/artifact/org.slf4j/slf4j-api

讓我知道是否適合您。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM