我们可以在 SBT 项目中定义嵌套项目吗?
Can we define nested projects in a SBT project?
我们可以在一个SBT项目中定义多个项目,如:
lazy val core = project in file("core")
lazy val web = project in file("web")
lazy val shared = project in file("shared")
但是可以在子项目中定义嵌套项目吗?喜欢:
lazy val nested = project in file("nested")
lazy val nested1 = project in file("nested/nested1")
lazy val nested2 = project in file("nested/nested2")
当我运行 projects
时,它将在平面列表中显示所有定义的项目:
> projects
[info] In file:/Users/twer/workspace/sbt-dependency-export-plugin-test/
[info] core
[info] nested
[info] nested1
[info] nested2
[info] * root
[info] shared
[info] web
这不是我想要的,实际上,我希望它是一棵树,例如:
core
nested
\-- nested1
\-- nested2
root
shared
web
我希望 nested1
和 nested2
成为 nested
的子项目,而不是整个项目。
可能吗?
projects
将始终只在列表中显示项目 ID。
但是,我认为,要做你想做的事,你只需要这样做:
lazy val nested = project in file("nested") aggregate (nested1, nested2)
我们可以在一个SBT项目中定义多个项目,如:
lazy val core = project in file("core")
lazy val web = project in file("web")
lazy val shared = project in file("shared")
但是可以在子项目中定义嵌套项目吗?喜欢:
lazy val nested = project in file("nested")
lazy val nested1 = project in file("nested/nested1")
lazy val nested2 = project in file("nested/nested2")
当我运行 projects
时,它将在平面列表中显示所有定义的项目:
> projects
[info] In file:/Users/twer/workspace/sbt-dependency-export-plugin-test/
[info] core
[info] nested
[info] nested1
[info] nested2
[info] * root
[info] shared
[info] web
这不是我想要的,实际上,我希望它是一棵树,例如:
core
nested
\-- nested1
\-- nested2
root
shared
web
我希望 nested1
和 nested2
成为 nested
的子项目,而不是整个项目。
可能吗?
projects
将始终只在列表中显示项目 ID。
但是,我认为,要做你想做的事,你只需要这样做:
lazy val nested = project in file("nested") aggregate (nested1, nested2)