SLF4J: Class path contains multiple SLF4J bindings.解决

背景

项目正常运行几年,近期优化调整修复漏洞,依赖升级后clean+install 重启发现项目启动失败,访问所有接口都报错404
在这里插入图片描述

错误信息

output输出异常信息截图
在这里插入图片描述
tomcat 打印异常信息截图
在这里插入图片描述
output打印异常信息详情

D:\javaRuanJian\Tomcat\apache-tomcat-8.5.76\bin\catalina.bat run
[2023-12-28 04:33:53,489] Artifact mams-rest:war exploded: Waiting for server connection to start artifact deployment...
Using CATALINA_BASE:   "C:\Users\xxx\AppData\Local\JetBrains\IntelliJIdea2020.3\tomcat\f0fc51a6-6a53-43a0-8dbf-2d223ea74432"
Using CATALINA_HOME:   "D:\javaRuanJian\Tomcat\apache-tomcat-8.5.76"
Using CATALINA_TMPDIR: "D:\javaRuanJian\Tomcat\apache-tomcat-8.5.76\temp"
Using JRE_HOME:        "D:\javaRuanJian\stibo\jdk1.8"
Using CLASSPATH:       "D:\javaRuanJian\Tomcat\apache-tomcat-8.5.76\bin\bootstrap.jar;D:\javaRuanJian\Tomcat\apache-tomcat-8.5.76\bin\tomcat-juli.jar"
Using CATALINA_OPTS:   ""
Connected to the target VM, address: '127.0.0.1:52143', transport: 'socket'
28-Dec-2023 16:33:57.599 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Server.服务器版本: Apache Tomcat/8.5.76
28-Dec-2023 16:33:57.604 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 服务器构建:        Feb 23 2022 17:59:11 UTC
28-Dec-2023 16:33:57.604 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 服务器版本号:      8.5.76.0
28-Dec-2023 16:33:57.604 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 操作系统名称:      Windows 10
28-Dec-2023 16:33:57.604 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log OS.版本:           10.0
28-Dec-2023 16:33:57.604 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 架构:              amd64
28-Dec-2023 16:33:57.604 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Java 环境变量:     D:\javaRuanJian\stibo\jdk1.8\jre
28-Dec-2023 16:33:57.605 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Java虚拟机版本:    1.8.0_121-b13
28-Dec-2023 16:33:57.605 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log JVM.供应商:        Oracle Corporation
28-Dec-2023 16:33:57.605 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_BASE:     C:\Users\zhuyanming5\AppData\Local\JetBrains\IntelliJIdea2020.3\tomcat\f0fc51a6-6a53-43a0-8dbf-2d223ea74432
28-Dec-2023 16:33:57.605 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_HOME:     D:\javaRuanJian\Tomcat\apache-tomcat-8.5.76
28-Dec-2023 16:33:57.605 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数:       -Djava.util.logging.config.file=C:\Users\zhuyanming5\AppData\Local\JetBrains\IntelliJIdea2020.3\tomcat\f0fc51a6-6a53-43a0-8dbf-2d223ea74432\conf\logging.properties
28-Dec-2023 16:33:57.606 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数:       -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
28-Dec-2023 16:33:57.606 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数:       -agentlib:jdwp=transport=dt_socket,address=127.0.0.1:52143,suspend=y,server=n
28-Dec-2023 16:33:57.606 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数:       -javaagent:C:\Users\zhuyanming5\AppData\Local\JetBrains\IntelliJIdea2020.3\captureAgent\debugger-agent.jar
28-Dec-2023 16:33:57.606 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数:       -Dcom.sun.management.jmxremote=
28-Dec-2023 16:33:57.606 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数:       -Dcom.sun.management.jmxremote.port=1097
28-Dec-2023 16:33:57.606 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数:       -Dcom.sun.management.jmxremote.ssl=false
28-Dec-2023 16:33:57.607 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数:       -Dcom.sun.management.jmxremote.password.file=C:\Users\zhuyanming5\AppData\Local\JetBrains\IntelliJIdea2020.3\tomcat\f0fc51a6-6a53-43a0-8dbf-2d223ea74432\jmxremote.password
28-Dec-2023 16:33:57.607 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数:       -Dcom.sun.management.jmxremote.access.file=C:\Users\zhuyanming5\AppData\Local\JetBrains\IntelliJIdea2020.3\tomcat\f0fc51a6-6a53-43a0-8dbf-2d223ea74432\jmxremote.access
28-Dec-2023 16:33:57.607 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数:       -Djava.rmi.server.hostname=127.0.0.1
28-Dec-2023 16:33:57.607 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数:       -Djdk.tls.ephemeralDHKeySize=2048
28-Dec-2023 16:33:57.607 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数:       -Djava.protocol.handler.pkgs=org.apache.catalina.webresources
28-Dec-2023 16:33:57.607 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数:       -Dignore.endorsed.dirs=
28-Dec-2023 16:33:57.608 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数:       -Dcatalina.base=C:\Users\zhuyanming5\AppData\Local\JetBrains\IntelliJIdea2020.3\tomcat\f0fc51a6-6a53-43a0-8dbf-2d223ea74432
28-Dec-2023 16:33:57.608 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数:       -Dcatalina.home=D:\javaRuanJian\Tomcat\apache-tomcat-8.5.76
28-Dec-2023 16:33:57.608 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数:       -Djava.io.tmpdir=D:\javaRuanJian\Tomcat\apache-tomcat-8.5.76\temp
28-Dec-2023 16:33:57.608 信息 [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent 使用APR版本[1.7.0]加载了基于APR的Apache Tomcat本机库[1.2.31]。
28-Dec-2023 16:33:57.608 信息 [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent APR功能:IPv6[true]、sendfile[true]、accept filters[false]、random[true]。
28-Dec-2023 16:33:57.609 信息 [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent APR/OpenSSL配置:useAprConnector[false],useOpenSSL[true]
28-Dec-2023 16:33:57.616 信息 [main] org.apache.catalina.core.AprLifecycleListener.initializeSSL OpenSSL成功初始化 [OpenSSL 1.1.1l  24 Aug 2021]
28-Dec-2023 16:33:57.865 信息 [main] org.apache.coyote.AbstractProtocol.init 初始化协议处理器 ["http-nio-8082"]
28-Dec-2023 16:33:58.085 信息 [main] org.apache.catalina.startup.Catalina.load Initialization processed in 1275 ms
28-Dec-2023 16:33:58.178 信息 [main] org.apache.catalina.core.StandardService.startInternal 正在启动服务[Catalina]
28-Dec-2023 16:33:58.179 信息 [main] org.apache.catalina.core.StandardEngine.startInternal 正在启动 Servlet 引擎:[Apache Tomcat/8.5.76]
28-Dec-2023 16:33:58.198 信息 [main] org.apache.coyote.AbstractProtocol.start 开始协议处理句柄["http-nio-8082"]
28-Dec-2023 16:33:58.296 信息 [main] org.apache.catalina.startup.Catalina.start Server startup in 208 ms
Connected to server
[2023-12-28 04:33:58,687] Artifact mams-rest:war exploded: Artifact is being deployed, please wait...
28-Dec-2023 16:34:08.251 信息 [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory 把web 应用程序部署到目录 [D:\javaRuanJian\Tomcat\apache-tomcat-8.5.76\webapps\manager]
28-Dec-2023 16:34:09.144 信息 [localhost-startStop-1] org.apache.jasper.servlet.TldScanner.scanJars 至少有一个JAR被扫描用于TLD但尚未包含TLD。 为此记录器启用调试日志记录,以获取已扫描但未在其中找到TLD的完整JAR列表。 在扫描期间跳过不需要的JAR可以缩短启动时间和JSP编译时间。
28-Dec-2023 16:34:09.612 信息 [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Web应用程序目录[D:\javaRuanJian\Tomcat\apache-tomcat-8.5.76\webapps\manager]的部署已在[1,354]毫秒内完成
28-Dec-2023 16:34:53.859 信息 [RMI TCP Connection(3)-127.0.0.1] org.apache.jasper.servlet.TldScanner.scanJars 至少有一个JAR被扫描用于TLD但尚未包含TLD。 为此记录器启用调试日志记录,以获取已扫描但未在其中找到TLD的完整JAR列表。 在扫描期间跳过不需要的JAR可以缩短启动时间和JSP编译时间。
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/D:/JavaWork/HuaRun/GZEngine/gzengine/mams/mams-rest/target/mams-rest/WEB-INF/lib/log4j-slf4j-impl-2.11.2.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/D:/JavaWork/HuaRun/GZEngine/gzengine/mams/mams-rest/target/mams-rest/WEB-INF/lib/logback-classic-1.2.11.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.apache.logging.slf4j.Log4jLoggerFactory]
28-Dec-2023 16:34:54.976 严重 [RMI TCP Connection(3)-127.0.0.1] org.apache.catalina.core.StandardContext.startInternal 一个或多个listeners启动失败,更多详细信息查看对应的容器日志文件
28-Dec-2023 16:34:54.978 严重 [RMI TCP Connection(3)-127.0.0.1] org.apache.catalina.core.StandardContext.startInternal 由于之前的错误,Context[/mams-rest]启动失败
[2023-12-28 04:34:55,117] Artifact mams-rest:war exploded: Error during artifact deployment. See server log for details.

原因分析

1.接口404一般是访问路径不对,找不到对应的资源,反复确认路径无问题,打印断点接口也没有进来,推断tomcat启动起来,项目没有启动起来,具体要看项目层面的output日志,和tomcat层面的日志
2.tomcat日志报错显示栈溢出,导致栈溢出的原因很多,最常见的就是死循环。
3.output日志中的错误信息就比较明显了:Class path contains multiple SLF4J bindings. (类路径包含多个SLF4J绑定。),下面两行打印了具体包。所以基本可以判断是包冲突导致,需要排除不需要的包

问题解决

1.快速查看哪个依赖包含异常包,推荐使用idea的Maven Helper插件(如果没有安装,搜索install即可,这里不做赘述)
在这里插入图片描述
2.安装完Maven Helper插件,打开项目pom.xml文件,可以看到依赖分析按钮
在这里插入图片描述
3.点击依赖分析,搜索异常包,右键,排除
在这里插入图片描述
4.排除后更新maven依赖,重新clean+install项目正常启动

总结

该方案可以快速解决java依赖冲突问题,一般依赖冲突问题都可复用此方案
Maven Helper插件很好用,详细功能可自行百度 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/275800.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【IDEA - EasyCode】好物推荐 -> 代码自动生成工具

目录 一、EasyCode 一、EasyCode 只要是与数据库相关的代码都可以通过自定义模板来生成,支持数据库类型与 java 类型映射关系配置。 使用步骤如下: a)下载插件 b)准备一张表作为生成元数据,例如如下 user 表 c&…

Android Security PIN 相关代码

开发项目遇到一个问题,具体描述及复制步骤如下: 就是开启"Enhanced PIN privacy"(增强的PIN隐私)的时候输入秘密的时候还是会显示数字 如下图,应该是直接是“.” 不应该出现PIN 密码 想要的效果如下图: 设置的步骤如下图…

Springboot实现登录注册

功能:1、实现用户的登录 2、实现用户的注册以及重名的判断 LoginControl: package com.example.demo.controls;import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RequestMapping; imp…

Android下载gradle失败解决方法

1、在gradle-wrapper.properties文件中查看自己需要下载gradle什么版本的包和zip路径(wrapper/dists)。 2、在setting中查看Gradle的保存路径,如下图:C:/Users/Administrator/.gradle,加上第一步的zip路径得到下载grad…

java itext5 生成PDF并填充数据导出

java itext5 生成PDF并填充数据导出 依赖**文本勾选框****页眉**&#xff0c;**页脚****图片**实际图 主要功能有文本勾选框&#xff0c;页眉&#xff0c;页脚&#xff0c;图片等功能。肯定没有专业软件画的好看&#xff0c;只是一点儿方法。仅供参考。 依赖 <!--pdf-->&…

数据结构学习 Leetcode322 零钱兑换

关键词&#xff1a;动态规划 完全背包 记忆化搜索 一个套路&#xff1a; 01背包&#xff1a;空间优化之后dp【target1】&#xff0c;遍历的时候要逆序遍历完全背包&#xff1a;空间优化之后dp【target1】&#xff0c;遍历的时候要正序遍历 题目&#xff1a; 方法一&#xff…

CodeWhisperer——轻松使用一个超级强大的工具

CodeWhisperer 简介 CodeWhisperer是亚⻢逊云科技出品的一款基于机器学习的通用代码生成器&#xff0c;可实时提供代码建议。 CodeWhisperer有以下几个主要用途&#xff1a; 解决编程问题&#xff0c;提供代码建议&#xff0c;学习编程知识等等&#xff0c;并且CodeWhisper…

LLM(八)| Gemini语言能力深度观察

论文地址&#xff1a;https://simg.baai.ac.cn/paperfile/fc2138ce-cadb-4a36-b9f7-c4000dea3369.pdf 谷歌最近发布的Gemini系列模型是第一个在各种任务与OpenAI GPT系列相媲美的模型。在本文中&#xff0c;作者对Gemini的语言能力做了深入的探索&#xff0c;做出了两方面的贡献…

微信小程序开发系列-06事件

什么是事件 事件是视图层到逻辑层的通讯方式。事件可以将用户的行为反馈到逻辑层进行处理。事件可以绑定在组件上&#xff0c;当达到触发条件时&#xff0c;就会执行逻辑层中对应的事件处理函数。事件对象可以携带额外信息&#xff0c;如 id, dataset, touches。 事件分类 事…

C实现数组奇数在前偶数在后排序

一、运行结果&#xff1b; 二、源码&#xff1b; # define _CRT_SECURE_NO_WARNINGS # include <stdio.h>//实现调整函数move_odd_even函数&#xff1b; void move_odd_even(int arr[], int sz) {//初始化变量值&#xff1b;int left 0;int right sz - 1;//循环判断和…

Arduino开发实例-ADS1232高精度24位ADC数据采样

ADS1232高精度24位ADC数据采样 文章目录 ADS1232高精度24位ADC数据采样1、ADS1232介绍2、硬件准备及接线3、驱动实现1、ADS1232介绍 几乎所有的微控制器都带有 ADC 引脚,但它们缺乏高精度。 在很多项目中,需要对模拟量进行高精度的测量,或者被测信号的电压电平不在单片机的…

2022年全国职业院校技能大赛高职组云计算正式赛卷第三场-公有云

2022 年全国职业院校技能大赛高职组云计算赛项试卷 【赛程名称】云计算赛项第三场-公有云 目录 2022 年全国职业院校技能大赛高职组云计算赛项试卷 【赛程名称】云计算赛项第三场-公有云 【任务 1】公有云服务搭建[10 分] 【任务 2】公有云服务运维[10 分] 【任务 3】公有云运维…

【我与Java的成长记】之this引用和构造方法的使用详解

系列文章目录 能看懂文字就能明白系列 C语言笔记传送门 &#x1f31f; 个人主页&#xff1a;古德猫宁- &#x1f308; 信念如阳光&#xff0c;照亮前行的每一步 文章目录 系列文章目录&#x1f308; *信念如阳光&#xff0c;照亮前行的每一步* 前言一、this的使用this引用的特…

机器学习之人工神经网络(Artificial Neural Networks,ANN)

人工神经网络(Artificial Neural Networks,ANN)是机器学习中的一种模型,灵感来源于人脑的神经网络结构。它由神经元(或称为节点)构成的层级结构组成,每个神经元接收输入并生成输出,这些输入和输出通过权重进行连接。 人工神经网络(ANN)是一种模仿生物神经系统构建的…

动态规划08--一和零

题目描述 给你一个二进制字符串数组 strs 和两个整数 m 和 n 。 请你找出并返回 strs 的最大子集的大小&#xff0c;该子集中 最多 有 m 个 0 和 n 个 1 。 如果 x 的所有元素也是 y 的元素&#xff0c;集合 x 是集合 y 的 子集 。 思路分析 做到这道题的时候没什么思路&a…

LSTM Siamese neural network

本文中的代码在Github仓库或Gitee仓库中可找到。 Hi, 你好。我是茶桁。 大家是否还记得&#xff0c;在「核心基础」课程中&#xff0c;我们讲过CNN以及LSTM。 卷积神经网络&#xff08;CNN&#xff09;已经在计算机视觉处理中得到广泛应用&#xff0c;不过&#xff0c;2017年…

数字化工业中的低功耗蓝牙模块:实现智能制造的关键

在数字化工业的时代&#xff0c;智能制造成为推动产业升级的关键因素之一。低功耗蓝牙模块作为数字化工业的技术支持&#xff0c;为设备之间的高效通信和数据交换提供了理想的解决方案。本文将深入探讨低功耗蓝牙模块在数字化工业中的关键作用&#xff0c;以及其如何实现智能制…

德鲁伊(Druid)链接PGsql前端请求或者后端自动任务频繁出现IOException

尝试在druid配置文件中增加&#xff1a; socket-timeout: 60000 druid一些版本默认会给链接数据库socket默认10s&#xff0c;超出10s之后socket断开&#xff0c;对于GP数据库报的个IO异常。 &#xff08;对于同样的场景mysql超出10s后提示的是socketTimeOut&#xff0c;所以相…

别再写一堆的 for 循环了!Java 8 中的 Stream 轻松遍历树形结构,是真的牛逼!

可能平常会遇到一些需求&#xff0c;比如构建菜单&#xff0c;构建树形结构&#xff0c;数据库一般就使用父id来表示&#xff0c;为了降低数据库的查询压力&#xff0c;我们可以使用Java8中的Stream流一次性把数据查出来&#xff0c;然后通过流式处理。 我们一起来看看&#x…

三维可视化智慧工地源码,数字孪生可视化大屏,微服务架构+Java+Spring Cloud +UniApp +MySql

源码技术说明 微服务架构JavaSpring Cloud UniApp MySql&#xff1b;支持多端展示&#xff08;PC端、手机端、平板端&#xff09;;数字孪生可视化大屏&#xff0c;一张图掌握项目整体情况;使用轻量化模型&#xff0c;部署三维可视化管理&#xff0c;与一线生产过程相融合&#…