2017-01-11 8 views
0

私は、Springブートを使用して展開するgradle Javaプロジェクトを持っています。Tomcatでの静的バインディング複数のSLF4jバインディング

SLF4J:[apacheの-tomcatに-8.0.23/libに結合見つかり:クラスパスが複数のSLF4Jバインディング

SLF4Jが含まれて私は私のjarファイルに春ブーツを起動すると、私は次の警告を受けます/activemq-all-5.11.1jar!/org/slf4j/impl/StaticLoggerBinder.class

SLF4J:[apache-tomcat-8.0.23/webapps/ProjectName/WEB-INF/lib/activemq-allのバインディングが見つかりました。 -5.11.1jar!/org/slf4j/impl/StaticLoggerBinder.class

SLF4J:実際のバインディングの種類は[org.slf4j.impl.Log4jLoggerFactory] ​​0です。

は、この結合の警告を削除するには、私は春ブーツ用のjarファイルを作成し、私のGradleのパッケージャプロジェクトに行き、ActiveMQの-すべてのjarファイルをトレースし、基礎となるjarファイルに置き換える dependencyInsightをした hereを説明しました。

私は自分のプロジェクト内でこのActiveMQの-すべてのjarファイルの1つのインスタンスが見つかりました:私はこのプロジェクトに入った

:dependencyInsight 
org.apache.activemq-all:5.9.1 
/--- com.company.projectName:projectTitle:1.1.0 
    /--- compile 

を。上記のリンクに示されている対応するjarファイルにactivemq-all依存関係を置き換えました(したがって、slf4j-log4j12はuber jarに含まれていません)。プロジェクトを再構築し、作成した新しいjarでキャッシュを更新し、warファイルを作成するパッケージャプロジェクトを再作成しました。しかし、activemq-allのjarファイルはまだ存在します。キャッシュからローカルに削除できますが、グラデーションリフレッシュでは置き換えられます。プロジェクトからこの推移的な依存関係を削除する特別な方法はありますか?このバインディングの問題を解決できるか、プロジェクトから依存関係を削除することについて誤解していることがありますか?私は、dependencyInsightが私のactivemq-all jarの依存関係を正しくマッピングしていないかのように感じます。

詳細情報が必要な場合はお知らせください。

答えて

0

解決方法:activemq-all jarには、slf4jとのlog4j(バージョン1)バインディングが含まれています。これは私のlog4j2構成が無用になり、log4j構成がもはや存在しなかったためにlog4jが常に不平を言うことになりました。 log4j1の設定に問題があるとわかったとき、私はlog4j2の問題を追いかけていました。私のプロジェクトでは、activemq-allのjarファイルをhereというソリューションに置き換え、すべての必要なブリッジを追加してすべてのログをslf4jにブリッジし、log4j2と1つのバインディングしか持たなかった。

関連する問題