繁体   English   中英

有多个SLF4J绑定时如何使用SLF4J

[英]How to use SLF4J when there is multiple SLF4J bindings

当我在代码中添加SLF4J记录器时,出现错误消息,“类路径包含多个SLF4J绑定”。 在网站slf4j.org/codes上指出,我应该将它们从类路径中删除。 但是,这两个记录器包含在我的maven依赖项中。 我的整个Maven依赖文件夹都包含在类路径中。 我不负责Maven依赖项的内容,因此它不是我要编辑的地方,因此它在Maven依赖项文件夹中只有一个logger依赖项。 我可以指定Java程序,使其仅使用其中一个记录器吗?

ja

如果确定不能调整现有的Maven依赖关系来解决此问题,则可以确保SLF4J绑定首先出现在类路径中,因为第一个绑定是在多个绑定的情况下使用的绑定。

但是,您仍然会收到警告,但是您的SLF4J记录器将成为被使用的记录器。

您还可以考虑使用maven模块将项目分成多个部分,以便可以在每个模块的pom.xml文件中以不同方式管理每个部分中的依赖项。

找出项目的哪个依赖项包括slf4j实现,然后将其排除:

    <dependency>
        <groupId>other-group</groupId>
        <artifactId>dependency-id</artifactId>
        <exclusions>
            <exclusion>
                <groupId>org.slf4j</groupId>
                                    <!-- or slf4j-jdk14, etc -->
                <artifactId>slf4j-simple</artifactId>
            </exclusion>
        </exclusions>
    </dependency>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM