即使采用合并策略,仍在获取类路径仍在sbt中包含多个SLF4J绑定

时间:2019-02-14 21:43:08

标签: sbt slf4j sbt-assembly

当我启动使用典型的build.sbt文件构建并使用sbt-assembly构建的Scala应用程序时,它仍会发出SLF4J多重绑定的警告:

SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/path/to/program1.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:path/to/artifactory/maven-release/ch/qos/logback/logback-classic/1.2.3/logback-classic-1.2.3.jar!/org/slf4j/impl/StaticLoggerBinder.class]

我正在应用以下合并策略:

assemblyMergeStrategy in assembly := {
  case PathList("org", "slf4j", xs @ _*) => MergeStrategy.last
}

如果是这样,为什么不听从这个策略呢?当我在生产服务器上运行该程序时,它只会每隔很长时间写一次日志,而该日志应该每天创建一个新日志。有什么方法可以使此错误消息以及可能的影响消失吗?

0 个答案:

没有答案