Java背景和学习Scala的想法。Maven的其中一件事是,我可以将一个项目作为多maven模块。举例?Project/put.xml/persistence/put.xml/business/pu.xml/services/put.xml
它的好处是,每个模块都可以有自己的依赖项,并且可以独立测试,而不是运行一个monolith应用程序。
我们如何在Scala、sbt或其生态系统中实现类似的目标?
发布于 2015-05-11 04:09:56
你绝对可以做到的。它叫SBT多项目建设。您可以使用类似的内容(从上面的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中。每个项目都可以定义自己的依赖关系,但如果需要,也可以共享它们。基本上你可以完全控制。例如,看看我的项目构建文件这里。
https://stackoverflow.com/questions/30159477
复制相似问题