Sbt Uber Jar assemblyMergeStrategy

Sbt Uber Jar assemblyMergeStrategy

我正在构建一个工具,我将使用 addSbtPlugin("com.eed3si9n" % "sbt-assembly" % "0.14.6")

将其部署在 Uber jar 中

合并策略让我很困惑。 (see https://github.com/sbt/sbt-assembly)。编译器不会指定保留哪些 version 重复依赖项(或指示保留最新版本),而是根据 CP 中的位置选择保留或丢弃哪些。

根据以往的经验,这似乎是自找麻烦。我如何指定我想保留哪个版本的 Jackson 或 Slf4j?

如果您只想选择一个版本,请使用 dependencyOverrides. You can also inspect version conflicts via show evicted command. See 获取相关答案。