【问题标题】:upgrade from Scala 2.11.8 to 2.12.10 build fails at sbt due to conflicting cross-version suffixes由于跨版本后缀冲突,从 Scala 2.11.8 升级到 2.12.10 构建在 sbt 失败
【发布时间】:2021-12-24 08:11:39
【问题描述】:

我正在尝试将我的 Scala 版本从 2.11.8 升级到 2.12.10。我在我的 sbt 文件中进行了以下更改。

"org.apache.spark" %% "spark-core" % "2.4.7"  % "provided",

"org.apache.spark" %% "spark-sql" % "2.4.7"   % "provided",

"com.holdenkarau" %% "spark-testing-base" % "3.1.2_1.1.0" % "test"

当我构建 sbt 文件时,出现以下错误

[error] Modules were resolved with conflicting cross-version suffixes in ProjectRef(uri("file:/Users/user/IdeaProjects/project/"), "root"):
[error]    io.reactivex:rxscala _2.12, _2.11

尝试了以下可能的方法。但没有运气。

  1. ("io.reactivex" % "rxscala_2.12" % "0.27.0").force().exclude("io.reactivex","rxscala_2.11")

2.从文件->项目结构->全局库中删除了 Scala verion=2.11.8。

任何帮助都会非常有用。

【问题讨论】:

  • 你可能想试试sbt dependencyTree 看看不需要的依赖来自哪里(如果不是你自己设置的)。
  • 同时分享你的整个 SBT 文件会更容易;)

标签: scala sbt


【解决方案1】:

如果您可以发布整个 build.sbt 文件以便可以复制它,那将是最好的,但作为起点,依赖关系 spark-testing-base 指向错误的 Spark 版本。来自documentation

所以你包括 com.holdenkarau.spark-testing-base [spark_version]_1.0.0 并扩展

根据您提供的信息,您应该使用:

"com.holdenkarau" %% "spark-testing-base" % "2.4.7_1.1.0" % "test"

【讨论】:

    猜你喜欢
    • 2013-10-15
    • 2014-08-29
    • 1970-01-01
    • 2014-08-29
    • 1970-01-01
    • 2018-03-26
    • 2018-10-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多