Java の例外 #クラスパスが複数の SLF4J バインディングを含んでいます。
2022-02-25 14:14:20
1. 例外事項
Mavenプロジェクトの起動時に、警告メッセージが表示されます。
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/D:/Tp_Mylocal/20_Install/maven/repo/org/slf4j/slf4j-log4j12/1.7.20/slf4j-log4j12-1.7.20.jar!/org/ slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/D:/Tp_Mylocal/20_Install/maven/repo/ch/qos/logback/logback-classic/1.1.7/logback-classic-1.1.7.jar! /org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Detected both log4j-over-slf4j.jar AND bound slf4j-log4j12.jar on the class path, preempting StackOverflowError.
SLF4J: See also http://www.slf4j.org/codes.html#log4jDelegationLoop for more details.
2. 徹底的な分析
報告された警告メッセージから、一般的には次のような意味があります。
pom.xml
で紹介されたパッケージは
slf4j-log4j12-1.7.20.jar
とパッケージ
logback-classic-1.1.7.jar
は
/org/slf4j/impl/StaticLoggerBinder.class
このクラス、どちらを使えばいいのかわからず、コンフリクトしている。
3. 解決方法
jar パッケージの競合なので、pom.xml ファイルを見つけてトラブルシュートしてみましょう。
1)
を検索します。
pom.xml
ファイルを開き、右クリックで [
Diagrams
] -> [
Show Dependencies
]
2)
複雑に絡み合う依存関係グラフが飛び出し、泣き笑いするほど衝撃的な展開に
3)
攻撃するには、Ctrl + Fで、slf4j-log4j12を検索し、右クリックで除外します。
さて、pom.xml ファイルを見ると、先ほど除外した jar に対して除外コードが自動生成されています、例えば。
org.apache.zookeeper
zookeeper
${zookeeper.version}
slf4j-log4j12
org.slf4j
また、手動で新しい行を
pom.xml
ファイルを使用して、依存関係を除外することができます。
<マーク 注意事項
-
log4j-over-slf4j.jar
とslf4j-log4j12.jar
は、Javaのロギングシステムに関連する2つのjarパッケージであり、これらが両方ともクラスパス下に存在する場合、スタックオーバーフロー例外を引き起こす可能性があります。 -
ログバックロギングを使用している場合、除外されるのは
slf4j-log4j12.jar
パッケージではlogback-classic.jar
パッケージを使用します。
関連
-
Eclipse の問題 アクセス制限。タイプ 'jfxrt' はAPI解決されていません。
-
Java の switch case 文で必要な定数式の問題の解決法
-
java 365*1000*60*60*24 計算問題
-
Javaログ取得手順
-
Javaの基本 - アノテーションの仕組みの説明
-
Java 実行 SQL 文エラー。executeQuery()でデータ操作文を発行できません。
-
SpringMvc Interceptorインターセプターの設定と使用方法
-
MyBatis のクエリデータをプロパティで多対一処理する(1つのデータに対して複数のデータ)
-
メソッド起動時にInvocationExceptionが発生した
-
Java8 FlatMapを使ったStreamによるListのマージ
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
mvn' は、内部または外部のコマンド、操作可能なプログラムまたはバッチファイルとして認識されません。
-
Eclipseは、ポップアップA Java Exception has occurred.を実行し、エラーException in threadの解決策を報告します。
-
Javaでよくある構文エラー
-
Uncaught ReferenceError: は定義されていません。
-
SocketException java.netの4つの例外解決策。
-
List list = new ArrayList(); Error: ArrayList は型に解決できません。
-
API の戻り値を処理するために ResponseEntity を使用する
-
WeChat小プログラム Bluetooth通信 Bluetoothモジュールデモ
-
Javaでファイル名、ファイルプレフィックス、ファイルタイプ(ファイルサフィックス)を取得します。
-
HttpリクエストのStatusコードについて。431 Request Header Fields Too Large 問題の処理について