XUGGLE错误:异常在线程“主要” java.lang.NoClassDefFoundError:

2019-07-03 21:52发布

我想执行以下代码:

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

我已经加入到SLF4J我引用的库,但不知道为什么,这是行不通的。

运行在WIN 7,试图在Eclipse和NetBeans

任何的想法?

Answer 1:

下载SLF4J ,把SLF4J-API-1.7.2.jar文件到您的类路径。



Answer 2:

下面罐的组合为我工作:

log4j的-1.2.16.jar
SLF4J-API-1.7.6.jar
SLF4J-简单1.7.6.jar
xuggle-xuggler-5.4.jar



Answer 3:

原因可能是依赖罐或版本冲突的联合国可用性。

下面的罐子组合为我工作得很好:

xuggle-xuggler-5.4.jar
SLF4J-API-1.6.4.jar
的logback核-1.0.0.jar
的logback经典-1.0.0.jar



Answer 4:

你可能会加入Apache的log4j的-2.7斌罐子。 只是删除所有的罐子,只保留

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


Answer 5:

下载SLF4J,把SLF4J-API 1.7.25.jar,SLF4J-简单1.7.25.jar文件到应用程序类路径。

这将有助于与下面的异常SLF4J一起解决此异常:无法加载类“org.slf4j.impl.StaticLoggerBinder”。



Answer 6:

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

否则,你会得到同样的错误util的,除非你已经囊括了所有必需的.jar文件。



文章来源: XUGGLE ERROR: Exception in thread “main” java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory