小编典典

Scala多模块项目?

java

  • 我有Java学习的背景和思想Scala
  • 我喜欢使用的其中一项功能Maven是可以将项目制作为多Maven模块。例?
Project/pom.xml
       /persistence/pom.xml
       /business/pom.xml
       /services/pom.xml

令人高兴的是,每个模块都可以具有自己的依赖性,并且可以独立测试它们,而不用运行一个整体应用程序。

我们如何实现类似的东西Scalasbt或者它的生态系统?


阅读 302

收藏
2020-11-26

共1个答案

小编典典

你绝对可以做到的。这被称为SBT Multi-Project build。您可以使用以下内容定义一个主项目和多个子项目(来自上面的docs链接):

import sbt._
import Keys._

object HelloBuild extends Build {
    lazy val root = Project(id = "hello",
                            base = file(".")) aggregate(foo, bar)

    lazy val foo = Project(id = "hello-foo",
                           base = file("foo"))

    lazy val bar = Project(id = "hello-bar",
                           base = file("bar"))
}

每个项目都可以单独构建,也可以将每个项目打包到一个单独的JAR中,或者将它们全部组合到一个主JAR中。每个项目都可以定义自己的依赖关系,但是如果需要,也可以共享它们。基本上,您可以完全控制。例如,在这里查看我的项目构建文件。

2020-11-26