使用 SBT 维护多项目模块

Posted

技术标签:

【中文标题】使用 SBT 维护多项目模块【英文标题】:maintain multi project modules with SBT 【发布时间】:2021-12-02 13:25:38 【问题描述】:

如何在一个模块中使用 Apache spark 2.3 并在另一个模块中使用 Apache spark 2.4 来维护多模块依赖关系。项目层是什么以及 build.sbt 的样子。

【问题讨论】:

【参考方案1】:

您可以为每个模块指定不同的依赖关系。

假设你有模块 A 和模块 B,它看起来像这样:


lazy val moduleA = (project in file("moduleA"))
  .settings(
    name := "Module-A",
    libraryDependencies ++= Seq("org.apache.spark" %% "spark-core" % "2.3.0")
  )

lazy val moduleB = (project in file("moduleB"))
  .settings(
    name := "Module-B",
    libraryDependencies ++= Seq("org.apache.spark" %% "spark-core" % "2.4.0")
  )

official documentation不错,有几个例子

【讨论】:

哈维尔蒙顿 - 感谢您的回复。我一直在这样做,并面临一些冲突的问题。 ***.com/questions/69572143/…。此链接解释了我面临的问题。任何帮助表示赞赏

以上是关于使用 SBT 维护多项目模块的主要内容,如果未能解决你的问题,请参考以下文章

Play 2.3.7 sbt 多项目编译器问题

如何设置 sbt/scala/play 多模块项目,该项目将与 Intellij scala 插件一起正常工作

在多模块 Java/scala 项目中有一个通用的 webapp?

Scala,docker - 如何使用 sbt-native-packager 在多模块应用程序中设置 mainClass?

使用 sbt 进行多项目构建

如何使 SBT 任务依赖于同一个 SBT 项目中定义的模块?