我刚刚遇到过这样的情况,我从 Spring 工具套件创建了默认的 Spring 框架,它将使用 slf4j 和 log4j 将所有内容记录到控制台中。
之后,我将 Spring security oauth 依赖项添加到 Maven,该依赖项树如下:
spring security oauth --> spring boot --> spring boot starter --> logback(另一个记录器)。
问题是我的项目有一个记录器,现在 Spring Boot 添加另一个记录器,这使我的记录器工作起来很奇怪(我在类路径中使用了 log4j.xml,记录器的级别是信息,但它以调试级别打印所有内容)。
在我从maven的spring security oauth依赖中排除logback后,日志工作得很好,但我担心如果我从spring boot starter中删除logback,这个lib中的某个地方需要logback,它会抛出ClassNotFoundException吗?
提前致谢!
更新:
我从 spring security oauth2 的文件夹中复制了 pom 文件:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
<version>1.0.0.RELEASE</version>
</dependency>
最佳答案
Spring Security OAuth 不依赖于 Spring Boot。您可能有不同的依赖关系带来了这种情况。
无论如何,您可以安全地排除 logback,是的。检查also the documentation for more details .
关于java - Spring中多个logger库的情况,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23650795/