我听说.sbt文件在0.13中以各种方式得到了改进,现在我可以在其中指定多项目编译。在sbt中使用.sbt文件编写多项目编译的习惯方式0.13
http://www.scala-sbt.org/0.13.0/docs/Community/ChangeSummary_0.13.0.html#sbt-format-enhancements提到我们现在可以在.sbt文件中定义子项目。我也知道根中的多个.sbt文件将被聚合成一个概念文件。
但是,我真的很喜欢的是不污染我的根与十几个子项目.sbt文件。有没有一种方法可以将子项目build.sbt文件放入其各自的子目录中,在它们之间保留共享的一些通用代码,然后为整个子项目的整个项目建立一个root build.sbt?我现在在.scala文件中有一个类似的设置,但如果可能的话,宁愿使用.sbt文件。
如果这不可行,那么使用.sbt文件构建大型多项目构建的“正确”方法是什么?
至于0.13,我可以在一个名.bst文件中添加项目定义虽然。如果我将这样的项目值放在'subproject1/build.sbt'中,并且想要定义一个聚合子项目构建的根项目,该怎么办?如果值在.sbt文件之间不可见,则聚合或创建跨子项目依赖关系似乎很棘手。 –
为了澄清,我的最终目标是尽可能多地划分子项目,并尽量减少常见.scala文件中需要执行的代码数量。我一定要保留子项目之间的一些通用代码,但希望它们尽可能地独立。 –
已更新,以解决您的意见。指出的可能解决方案并未实施,只是一个概念上的解决方案 –