web-dev-qa-db-ja.com

XUGGLE ERROR:スレッド「メイン」での例外Java.lang.NoClassDefFoundError:org / slf4j / LoggerFactory

次のコードを実行しようとしています:

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で試した

何か案が?

10
1321941

SLF4J をダウンロードし、slf4j-api-1.7.2.jarファイルをクラスパスに配置します。

34
Robert Pes

次のjarの組み合わせが私にとってはうまくいきます:

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

5
Arun

原因依存関係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

3
AVA

apache-log4j-2.7-bin jarが追加される場合があります。これらのすべてのjarファイルを削除して、保持するだけです

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

SLF4Jをダウンロードし、slf4j-api-1.7.25.jar、slf4j-simple-1.7.25.jarファイルをアプリケーションのクラスパスに配置します。

これは、次の例外SLF4Jとともにこの例外を解決するのに役立ちます:クラス "org.slf4j.impl.StaticLoggerBinder"のロードに失敗しました。

1
Sarang Patil

構成ファイル(.xmlファイル)を確認してください。この最初の行は、XMLバージョンとエンコーディングの宣言で始まる必要があります。

そうしないと、必要な.jarファイルをすべて含めない限り、同じエラーutilが表示されます。

0