【问题标题】:How can I resolve the conflict cross-version suffixes?如何解决跨版本后缀冲突?
【发布时间】:2017-02-01 04:50:19
【问题描述】:

我刚刚开始使用 scala、play 和 mongodb,这就是为什么我很难弄清楚我需要改变什么。

我已经做了很多研究,并在这里看到了很多类似问题的问题,但是我似乎无法弄清楚如何解决它。

这些是我必须添加的依赖项:

"org.mongodb" %% "casbah" % "3.1.1",
"com.novus" % "salat-core_2.10" % "1.9.9"

至少我相信那些是正确的。但是,当我构建项目时,我不断收到错误消息。我正在研究一个教程,我知道它已经过时了,我相信这就是它所在的地方,但是试图“更新”依赖项(至少我认为我是这样)是行不通的。

这是我不断收到的错误

【问题讨论】:

  • 嘿 .. 不要提供屏幕截图的链接 .. 将代码放在问题本身中。看截图和复制代码太不方便了。希望下面的回答对你有帮助
  • 在问题被否决之前编辑问题
  • 我对其进行了更改,以便更轻松地复制我正在使用的依赖项。而我相信其他人能够在不链接图片的情况下插入图片。

标签: mongodb scala playframework sbt


【解决方案1】:

Scala 破坏了与主要版本的二进制兼容性

您正在使用使用 2.112.10 scala 编译器编译的库。

使用2.11已编译或2.10已编译

问题在于build.sbt中的以下代码

"com.novus" % "salat-core_2.10" % "1.9.9"

用这个替换它

"com.novus" % "salat-core_2.11" % "1.9.9"

"com.novus" %% "salat-core" % "1.9.9"

您不应该混合使用 2 个不同的主要版本 scala 编译器编译的库。

主要版本 scala 编译器编译的代码与另一个主要版本不二进制兼容。

【讨论】:

  • 我会尝试的,正在努力使用哪个以及与其他依赖项相结合。
猜你喜欢
  • 2014-08-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-01-15
  • 2014-08-29
  • 2013-10-27
相关资源
最近更新 更多