我有一些我需要用sbt编译的子项目.结构是这样的:
main_project
- sub_project1
- sub_project2
- sub_project3
Run Code Online (Sandbox Code Playgroud)
当然,他们有正确的目录层次结构(src-main-scala ....).我如何编译所有这些以及每个特别的?
由于所选答案的链接文档已更改,因此答案不再那么清晰。
在build.sbt
OP 中main_project
,要将它们编译在一起,他们必须定义一个aggregate
,因为新的(er)文档链接到:
lazy val root = (project in file("."))
.aggregate(util, core)
lazy val util = (project in file("util"))
lazy val core = (project in file("core"))
Run Code Online (Sandbox Code Playgroud)
然后sbt compile
在根项目目录中运行将全部编译它们。
但是,如果您希望一次编译一个,您可以将命令行/终端导航到根项目(main_project
此处),然后运行以下命令:
user:main_project$: sbt <project name> / compile
使用海报的示例:
user:main_project$: sbt sub_project1 / compile
(如果您在SBT终端,则可以省略sbt
)