首页 > 其他分享 >被Maven折磨的3个小时

被Maven折磨的3个小时

时间:2024-02-03 19:44:55浏览次数:29  
标签:折磨 依赖 classic Maven slf4j 小时 logback log4j impl

遇到依赖问题

SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/C:/maven-repository/org/apache/logging/log4j/log4j-slf4j-impl/2.18.0/log4j-slf4j-impl-2.18.0.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/C:/maven-repository/ch/qos/logback/logback-classic/1.2.12/logback-classic-1.2.12.jar!/org/slf4j/impl/StaticLoggerBinder.class]

查到说是 slf4j包冲突了,各种尝试 引包 不引包 折腾了2个小时
解决不了,折腾下来后 发现 肯定是有依赖引用了 slf4j 这个包
于是点开 项目的 dependencies,发现
Jedis包会依赖
image
Graph包也会依赖
image
image
ges包也会依赖
image
spring启动的时候 还依赖
image

最快速的方法是用 Dependency Analyzer 你搜索下报错的 log4j-slf4j-impl 和 logback-classic 分别属于哪些组件的包 去做处理
logback
image
log4j-slf4j
image

可以给包冲突的地方加上排除,但不做也没关系 maven自己只会引一个

        <dependency>
            <groupId>com.huawei.ges</groupId>
            <artifactId>ges-sdk</artifactId>
            <version>${ges-sdk.version}</version>
            <exclusions>
                <exclusion>
                    <groupId>org.apache.logging.log4j</groupId>
                    <artifactId>log4j-slf4j-impl</artifactId>
                </exclusion>
            </exclusions>
        </dependency>

关键是解决 log4j-slf4j-impl 包 和 logback-classic 冲突的问题
log4j-slf4j-impl
image
image
logback-classic

理所当然 保留Spring的 除去外部依赖 Graph-SDK的
再搜索 log4j-slf4j-impl,已经没有了

标签:折磨,依赖,classic,Maven,slf4j,小时,logback,log4j,impl
From: https://www.cnblogs.com/yuanbaobao/p/18005099

相关文章

  • 前端传回后端到数据库时发现时间相差8个小时
    原因:中间某个环节的时区不对.  我这里是mysql的时区不对. 解决办法:全局修改时区设置.可以通过修改配置文件,但需要重启服务,非常麻烦.因此推荐使用命令行的方式.1、查询当前系统时间selectnow();2、检查MySQL系统时区showvariableslike'%time_zone%';......
  • 动力节点RabbitMQ教程|12小时学会rabbitmq消息中间件-02
    RabbitMQ集群cluster与高可用RabbitMQ的集群分两种模式,一种是默认集群模式,一种是镜像集群模式;在RabbitMQ集群中所有的节点(一个节点就是一个RabbitMQ的broker服务器)被归为两类:一类是磁盘节点,一类是内存节点;磁盘节点会把集群的所有信息(比如交换机、绑定、队列等信息)持久化......
  • dockerfile安装jenkins 并配置构建工具(node、npm、maven、git)
    dockerfile安装jenkins并配置构建工具(node、npm、maven、git):https://blog.csdn.net/weixin_39660224/article/details/88775707?ops_request_misc=&request_id=&biz_id=102&utm_term=dockerfile%20%E5%88%9B%E5%BB%BAjenkins&utm_medium=distribute.pc_search_result.......
  • maven
    Maven中各标签的作用参考链接install和deploy的区别install是将jar包上传到本地仓库deploy是将jar包上传到中心仓库resources标签的用法详解(详解可以看siyuan)自我总结resources标签的作用:将一些资源纳入到打包文件中,如果不在resources标签中指定,会导致不能打包到jar包中。......
  • Maven学习之路--依赖范围scope 对于该包的依赖范围作用域,取值有:test、compile、provid
    Maven学习之路--依赖范围scope对于该包的依赖范围作用域,取值有:test、compile、provided、runtime。scope默认取值为compile。\   <scope></scope>表示对于该包的依赖范围作用域,取值有:test、compile、provided、runtime。scope默认取值为compile。<scope>test</scope>。te......
  • IDEA2022 解决每次启动新项目maven配置就变为C盘问题
    1、打开一个空的IDEA如果打开IDEA默认进入之前的项目,可以选择先Closeproject退出项目 2、选择左侧的Customize,再点击Configure 3、在打开的Setting设置里面找到Maven配置Build,Execution,Deployment->BuildTools->Maven 修改后,保存即可; ......
  • linux 每2个小时执行定时任务
    [root@localhost~]#crontab-l0*/2***sh/home/data-integration/run_logintop.sh0*/2***sh/home/data-integration/run_stationtj.sh[root@localhost~]#cat/home/data-integration/run_logintop.sh#!/bin/bashcd/home/data-integrationnohup......
  • Mac使用Idea配置传统SSM项目(非maven项目)
    前提软件IDEA2023.3.2JDK1.8Tomcat8Mysql5.7.1步骤打开Web项目配置JDK版本配置Modules中配置Sources的两个root,分别为WebRoot和src两个文件夹Libraries中配置WebRoot/WEB-INF/lib文件夹Facets中指定web的根目录和web.xml文件位置Artifacts配置tomcattoncat中配置artifacts的exp......
  • maven依赖的优先级
    优先级在Maven中,依赖的解析顺序和优先级如下:直接依赖优先级高于传递性依赖:如果你在项目的pom.xml中直接声明了某个依赖项,那么Maven会首先尝试使用这个直接声明的依赖项,而不考虑传递性依赖。直接依赖项的版本号会优先于传递性依赖。最近者优先:如果有多个传递性依赖解析......
  • 如何改Maven Dependencies的源码,如何把springboot组件的源码改造后使用
    由于springboot提供的源码有些地方不太符合预期,所以需要改动改动,这里就会说到,如何改MavenDependencies的源码。如何把springboot组件的源码改造后使用。v修改源码的几种方式直接在自己工程中建同包同类名的类进行替换采用@Primary注解排除需要替换的jar包中的类@Bean......