当前位置: 代码迷 >> java >> Maven SLF4J:类路径包含多个SLF4J绑定[外部依赖项]
  详细解决方案

Maven SLF4J:类路径包含多个SLF4J绑定[外部依赖项]

热度:172   发布时间:2023-08-02 11:22:38.0

我知道我可以排除在maven中所做的绑定之一,因此springboot.jar仅包含logback和logback-slf绑定,但是在Spring-boot类路径上引用的这个外部jar在以下位置引入了slf4j-log4j绑定运行时,并感到困惑。

java -Dprofile=dev -Dloader.path=springboot.jar,/usr/local/hadoop/lib,/usr/local/hbase/lib -jar springboot.jar

SLF4J: Found binding in [jar:file:/runtime/external/classpath/slf4j-log4j12-1.7.5.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/build/jar/path/springboot.jar!/lib/logback-classic-1.1.2.jar!/org/slf4j/impl/StaticLoggerBinder.class]

当绑定冲突与外部依赖关系冲突时,我该如何解决? 谢谢

您必须以某种方式将这些jar从类路径中排除。 因此,您一般不应该添加hbase lib目录,而应枚举所有jarfiles。

如果您使用bash启动应用程序,则可以利用其模式匹配: /usr/local/hbase/lib/!(slf4j-log4j12-*)

PS这不是一个弹簧启动的问题...。

  相关解决方案