45

重複の可能性:
SLF4J:クラスorg.slf4j.impl.StaticLoggerBinderエラーのロードに失敗しました

私はEclipsejunoを使用して、 maven(m2eclipseプラグイン)を使用して他の誰かのJavaコードを実行しています。しかし、私は次のメッセージを受け取っています:

SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.

公式ウェブサイトで、この問題に対する次の修正を見つけました。

This error is reported when the org.slf4j.impl.StaticLoggerBinder class could not be loaded into memory. 
This happens when no appropriate SLF4J binding could be found on the class path. 
Placing one (and only one) of slf4j-nop.jar, slf4j-simple.jar, slf4j-log4j12.jar, slf4j-jdk14.jar or logback-classic.jar on the class path should solve the problem.

そこで、slf4j-simple.jarを「C:\ ProgramFiles \ Java \ jdk1.7.0_07\lib」にコピーしました。しかし、まだエラーが発生しています。

正しい解決策を教えてください。私はJava初心者です。

JAVA_HOMEまた、誰かが、CLASSPATHおよびCLASS変数の値を正確に指定する必要があることを教えてください。jreそれがパスなのか、それとも何かなのか混乱していますjdkか?

アップデート:

次の依存関係slf4jはプロジェクトにありpom.xmlます。

<dependency>
           <groupId>org.slf4j</groupId>
           <artifactId>slf4j-api</artifactId>
           <version>1.5.6</version>
           <type>jar</type>
</dependency>
<dependency>
           <groupId>org.slf4j</groupId>
           <artifactId>slf4j-simple</artifactId>
           <version>1.5.6</version>
</dependency>

プロジェクトを更新しました。また、slf4j-api-1.5.6.jarslf4j-simple-1.5.6.jarは私のプロジェクトの「Maven依存関係」に表示されています。そしてorg.slf4j.impl.StaticLoggerBinder.classまた存在しますslf4j-simple-1.5.6.jar

4

3 に答える 3

38

バンドルされたMavenバージョン(m2e)を使用している場合のEclipse Juno、Indigo、およびKeplerは、メッセージSLF4J:Failed to loadclass"org.slf4j.impl.StaticLoggerBinder"を抑制していません。この動作は、m2eバージョン1.1.0.20120530-0009以降に存在します。

ただし、これはエラーとして示され、ログは正常に保存されます。強調表示されたエラーは、このバグが修正されるまで引き続き存在します。これについては、m2eサポートサイトをご覧ください。

現在利用可能な解決策は、Eclipseのバンドルバージョンではなく、外部のMavenバージョンを使用することです。この解決策とこのバグに関する詳細については、あなたが直面しているのと同じ問題を説明していると私が信じている以下の質問で見つけることができます。

SLF4J:クラス「org.slf4j.impl.StaticLoggerBinder」のロードに失敗しました。エラー

于 2012-11-20T18:22:25.717 に答える
11

プロジェクトを更新しましたか(プロジェクトを右クリックして、「Maven」>「プロジェクトの更新...」)?それ以外の場合pom.xmlは、必要なslf4j依存関係が含まれているかどうかを確認する必要があります。例:

    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>jcl-over-slf4j</artifactId>
        <version>1.7.0</version>
        <scope>runtime</scope>
    </dependency>
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-api</artifactId>
        <version>1.7.0</version>
        <scope>runtime</scope>
    </dependency>
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-log4j12</artifactId>
        <version>1.7.0</version>
        <scope>runtime</scope>
    </dependency>
    <dependency>
        <groupId>log4j</groupId>
        <artifactId>log4j</artifactId>
        <version>1.2.14</version>
    </dependency>
于 2012-11-20T13:15:06.003 に答える
2

jarファイルを目的の場所に配置したら、右クリックしてjarファイルを追加する必要があります。

プロジェクト->プロパティ->Javaビルドパス->ライブラリ->Jarの追加。

于 2012-11-20T13:22:21.640 に答える