加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

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

发布时间:2020-12-16 18:35:53 所属栏目:安全 来源:网络整理
导读:我正在尝试使用命令构建sbt项目sbt clean编译这里是一个错误: [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
我正在尝试使用命令构建sbt项目sbt clean编译这里是一个错误:

[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

很明显,不同版本存在重复的依赖关系,但真正的问题是我的项目并不直接依赖于它们.有链(杰克逊仅用于举例):

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

那么如何弄清楚实际的Somelib1和Somelib2是什么?


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

解决方法

出于某种原因,Somelib1和Somelib2依赖于不同版本的scala.你忘记了%%: sbt dependencies

Sbt还有版本冲突管理器,但是对于不同的scala版本你有不同的工件!:sbt conflict managers.

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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读