web-dev-qa-db-ja.com

ClassNotFoundException:org.slf4j.LoggerFactory

私はGWT RequestFactoryを実行しようとしていますが、このエラーに直面しています:

ClassNotFoundException: org.slf4j.LoggerFactory

slf4j-api-1.3.1.jarをダウンロードしようとしましたが、問題は解決しませんでした

どのjarをダウンロードする必要があるのか​​正確に考えてください。

41
junaidp

Jarを here からダウンロードしてみてください

あなたが見つけることができます、それはあなたが必要とするクラスを保持します。

14
gprathour

開発者の site

私はあなたが持っていた同じエラーメッセージを持っていて、上記からjarをダウンロードすることで(2012OCT13の時点でslf4j-1.7.2.tar.gz最新バージョン)、解凍、解凍、Eclipseでビルドパスに2つのjarを追加(または追加コマンドラインのクラスパスへ):

  1. slf4j-api-1.7.2.jar
  2. slf4j-simple-1.7.2.jar

プログラムを実行できました。

70
CharlieL

私はこれが古い質問であることを知っていますが、最近この問題に直面し、グーグルで探しましたが、このドキュメントに遭遇しました here from slf4j website。

次のように説明します。

このエラーは、org.slf4j.impl.StaticLoggerBinderクラスをメモリにロードできなかった場合に報告されます。 これは、クラスパスで適切なSLF4Jバインディングが見つからない場合に発生します

slf4j-nop.jar、slf4j-simple.jar、slf4j-log4j12.jar、slf4j-jdk14.jarの1つ(および1つだけ)を配置するまたはクラスパス上のlogback-classic.jarが問題を解決するはずです。

SINCE 1.6.0SLF4Jバージョン1.6以降、なしバインディング、SLF4Jはデフォルトで無操作(NOP)ロガー実装になります。

それが誰かを助けることを願っています。

3
user957654

もう少し説明してください。「api」の「I」はインターフェースであることに注意してください。 slf4j-api jarは、必要なインターフェースのみを保持します(実際にはLoggerFactoryは抽象クラスです)。また、実際の実装も必要です(上記の例はslf4j-simpleにあります)。 jarファイルを見ると、「org.slf4j .impl」パッケージの下に必要なクラスがあります。

2
eze

私もこの問題を取得し、この方法で修正しました。私はEclipseを介してmapreduceジョブをローカルで実行しようとしましたが、構成を設定した後、このエラーに遭遇しました(Linuxでは、Virtual Box)

  • 実行するプロジェクトを右クリックし、
  • 「プロパティ」->「Javaビルドパス」->「外部jarの追加」に進みます。
  • その後、file:/usr/lib/Hadoop/client-0.20、「slf4j」で始まる名前の3つのjarを選択します。

その後、ローカルでジョブを実行できます。私の経験が誰かを助けることを願っています。

1
Bofei Yu

公式サイト からSLF4Jのjarを Zip(v1.7.4) または tar.gz(v1.7.4) としてダウンロードする必要があります=

ダウンロードには、SLF4Jの使用方法に基づいた複数のjarが含まれています。他のライブラリ(GWT、私が推測する)の要件を単純に解決しようとしていて、SLF4Jを正しく使用することにあまり関心がない場合は、おそらくSimple jarからslf4j-api-1.7.4.jarを選択します。私の知る限り、別の答えで提案されているものには、あなたが探している特定のクラスが含まれていません。

1
Patrick

問題を解決するには、「slf4j-simple-1.7.2.jar」が必要です。

http://slf4j.org/download.html からZipファイル「slf4j-1.7.2.Zip」をダウンロードしました。 Zipファイルを解凍し、slf4j-simple-1.7.2.jarを取得しました

0
Ripon Al Wasim

Androidでも同じでした。これは私がそれを修正した方法です:

ファイルのみを含む:

slf4j-api-1.7.6.jar

私のlibs /フォルダ内

追加のslf4j *ファイルがあると、NoClassDefFoundErrorが発生しました。

明らかに、残りのライブラリはそこにあります(Android-support-v4など)

バージョン:Eclipse Kepler 2013 06 14-02 29 ADT 22.3 Android SDK:4.4.2

このおかげで誰かが時間を節約できることを願っています!

0
voghDev

次のJARをプロジェクトのビルドパスまたはlibフォルダーに追加します。

  1. slf4j-api-1.7.2.jar
  2. slf4j-jdk14-1.7.2.jar
0
Shanu Shine