You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Maven项目集成GraphViz遇SLF4J多提供者冲突问题求助

解决Maven项目中SLF4J多提供者冲突问题
  • 先通过Maven命令排查依赖树,定位所有SLF4J相关的实现依赖:

    mvn dependency:tree | grep -E "(slf4j|logback|log4j)"
    

    执行后会列出所有关联的日志依赖,你能清楚看到哪些依赖引入了重复的SLF4J提供者(比如同时出现logback-classic和slf4j-log4j12这类不同的实现)。

  • 找到重复的提供者后,在对应的依赖中添加排除规则。比如如果GraphViz的依赖附带了logback-classic,而你的项目本身使用的是另一种SLF4J实现,就给GraphViz的依赖加上排除:

    <dependency>
        <!-- 你的GraphViz相关依赖 -->
        <groupId>...</groupId>
        <artifactId>...</artifactId>
        <version>...</version>
        <exclusions>
            <exclusion>
                <groupId>ch.qos.logback</groupId>
                <artifactId>logback-classic</artifactId>
            </exclusion>
        </exclusions>
    </dependency>
    
  • 最后确认你的pom.xml中只保留一个SLF4J实现依赖。比如选择logback作为实现的话,只保留:

    <dependency>
        <groupId>ch.qos.logback</groupId>
        <artifactId>logback-classic</artifactId>
        <version>1.2.11</version>
    </dependency>
    

    避免同时存在多个不同的SLF4J实现依赖。

SLF4J作为日志门面框架,同一时间只能绑定一个具体的日志实现类,多个提供者共存就会触发该异常,通过排查依赖树并移除冗余的实现依赖即可解决问题。

内容的提问来源于stack exchange,提问作者Sobira Muminova

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 03:31:12