新しいプロジェクトを開発するために、フレームワークとして Springboot を使用しました。プロジェクトの開発中、テストには Eclipse を使用していました。すべてが正常でした。最近、ローカルの Tomcat8 にデプロイする準備をしていたときにこの問題を発見しました。クライアント開発。特定の例外は次のとおりです:
Springboot のバージョンは 1.3.5ですlogback のバージョンは 1.1.7
Tomcat7.0 から 8.0 へのアップグレードで問題が解決されました
ローカルで戦争を実行できますか?
理由: ClassLoader、IDE の ClassLoader 実装間の関係は Spring Boot JarLauncher とは異なるため、異なる jar がロードされます。 log4j-slf4j と logback はどちらも slf4j-api の実装であるため、競合します。
解決策: log4j-slf4j 依存関係を削除します (Maven 経由)
Tomcat7.0 から 8.0 へのアップグレードで問題が解決されました
ローカルで戦争を実行できますか?
理由: ClassLoader、IDE の ClassLoader 実装間の関係は Spring Boot JarLauncher とは異なるため、異なる jar がロードされます。 log4j-slf4j と logback はどちらも slf4j-api の実装であるため、競合します。
解決策: log4j-slf4j 依存関係を削除します (Maven 経由)