XUGGLE错误:线程中出现异常;“主要”;java.lang.NoClassDefFoundError:org/slf4j/LoggerFactory

XUGGLE错误:线程中出现异常;“主要”;java.lang.NoClassDefFoundError:org/slf4j/LoggerFactory,java,compiler-errors,slf4j,xuggle,xuggler,Java,Compiler Errors,Slf4j,Xuggle,Xuggler,我正在尝试执行以下代码: import com.xuggle.mediatool.IMediaReader; import com.xuggle.mediatool.IMediaWriter; import com.xuggle.mediatool.ToolFactory; public class vidcon { /** * @param args */ public static void main(String[] args) { /

我正在尝试执行以下代码:

import com.xuggle.mediatool.IMediaReader;
import com.xuggle.mediatool.IMediaWriter;
import com.xuggle.mediatool.ToolFactory;
public class vidcon {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        IMediaReader reader = ToolFactory.makeReader("test.m4v");
        IMediaWriter writer = ToolFactory.makeWriter("out.flv");

        reader.addListener(writer);
        while(reader.readPacket() == null)
            ;
    }
}
但它给了我这个错误:

Exception in thread "main" java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory
    at com.xuggle.ferry.JNILibrary.<clinit>(JNILibrary.java:42)
    at com.xuggle.ferry.FerryJNI.<clinit>(FerryJNI.java:14)
    at com.xuggle.ferry.Ferry.<clinit>(Ferry.java:25)
    at com.xuggle.xuggler.XugglerJNI.<clinit>(XugglerJNI.java:19)
    at com.xuggle.xuggler.IContainer.<clinit>(IContainer.java:1622)
    at com.xuggle.mediatool.MediaReader.<init>(MediaReader.java:137)
    at com.xuggle.mediatool.ToolFactory.makeReader(ToolFactory.java:77)
    at vidcon.main(vidcon.java:11)
Caused by: java.lang.ClassNotFoundException: org.slf4j.LoggerFactory
    at java.net.URLClassLoader$1.run(Unknown Source)
    at java.net.URLClassLoader$1.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    ... 8 more
线程“main”java.lang.NoClassDefFoundError中的异常:org/slf4j/LoggerFactory 在com.xuggle.ferry.JNILibrary。(JNILibrary.java:42) 在com.xuggle.ferry.FerryJNI上(FerryJNI.java:14) 在com.xuggle.ferry.ferry.(ferry.java:25) 在com.xuggle.xuggler.XugglerJNI上(XugglerJNI.java:19) 在com.xuggle.xuggler.IContainer上。(IContainer.java:1622) 在com.xuggle.mediatool.MediaReader上。(MediaReader.java:137) 在com.xuggle.mediatool.ToolFactory.makeReader上(ToolFactory.java:77) 在vidcon.main(vidcon.java:11) 原因:java.lang.ClassNotFoundException:org.slf4j.LoggerFactory 位于java.net.URLClassLoader$1.run(未知源) 位于java.net.URLClassLoader$1.run(未知源) 位于java.security.AccessController.doPrivileged(本机方法) 位于java.net.URLClassLoader.findClass(未知源) 位于java.lang.ClassLoader.loadClass(未知源) 位于sun.misc.Launcher$AppClassLoader.loadClass(未知源) 位于java.lang.ClassLoader.loadClass(未知源) ... 8个以上 我已经将SLF4J添加到我的参考库中,但不知道为什么这不起作用

在Win7上运行,在eclipse和netbeans中试用


有什么想法吗?

下载slf4j-api-1.7.2.jar文件并将其放在类路径上。

原因可能是依赖项jar不可用或版本冲突

以下罐子组合对我来说很好:

xuggle-xuggler-5.4.jar
slf4j-api-1.6.4.jar
logback-core-1.0.0.jar

logback-classic-1.0.0.jar

以下jar组合对我有效:

log4j-1.2.16.jar
slf4j-api-1.7.6.jar
slf4j-simple-1.7.6.jar

xuggle-xuggler-5.4.jar

您可能会添加apache-log4j-2.7-bin jar。 把所有的罐子都拿走,只留着

log4j-1.2.16.jar
slf4j-api-1.7.6.jar
slf4j-simple-1.7.6.jar
xuggle-xuggler-5.4.jar

下载SLF4J并将SLF4J-api-1.7.25.jar、SLF4J-simple-1.7.25.jar文件放入应用程序类路径


这将有助于解决此异常以及以下异常SLF4J:未能加载类“org.SLF4J.impl.StaticLoggerBinder”。

检查配置文件(.xml文件)。其中的第一行必须以XML版本和编码的声明开始


否则,除非包含了所有必需的.jar文件,否则将出现相同的错误。

我也有同样的问题。我下载了SLF4J,但我不明白你所说的类路径是什么意思。我将slf4j-api-1.7.2.jar文件放在我的java文件类文件所在的目录中,但它仍然存在相同的问题