gpt4 book ai didi

scala - 如何解决重复传递依赖中的版本?

转载 作者:行者123 更新时间:2023-12-03 03:02:00 26 4
gpt4 key购买 nike

我正在尝试使用命令 sbt cleancompile 构建 sbt 项目,这是一个错误:

[error] Modules were resolved with conflicting cross-version suffixes in {file:/C:/project-scala/}module:
[error] org.json4s:json4s-ast _2.11, _2.10
[error] org.json4s:json4s-jackson _2.11, _2.10
[error] com.fasterxml.jackson.module:jackson-module-scala _2.11, _2.10
[error] org.json4s:json4s-core _2.11, _2.10
[error] org.json4s:json4s-native _2.11, _2.10
[error] org.json4s:json4s-ext _2.11, _2.10
java.lang.RuntimeException: Conflicting cross-version suffixes in: org.json4s:json4s-ast, org.json4s:json4s-jackson, com.fasterxml.jackson.module:jackson-module-scala, org.json4s:json4s-core, org.json4s:json4s-native, org.json4s:json4s-ext

所以很明显,不同版本存在重复的依赖关系,但真正的问题是我的项目并不直接依赖于它们。有链条(仅以 Jackson 为例):

chain 1: myProject -> Somelib1 ->  jackson-module-scala _2.11
chain 2: myProject -> Somelib2 -> jackson-module-scala _2.10

那么如何找出实际的 Somelib1Somelib2 呢?

还有我尝试分析依赖关系,但 sbt 失败并出现错误,请参阅 this question

最佳答案

由于某种原因Somelib1Somelib2依赖于不同版本的scala。您是否忘记了%%:sbt dependencies

Sbt 也有版本冲突管理器,但是不同的 scala 版本有不同的工件!: sbt conflict managers

要查看工件依赖关系树,请尝试 sbt-dependency-graph plugin

关于scala - 如何解决重复传递依赖中的版本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25519876/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com