我听说.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文件放到各自的子目录中,在它们共享的地方保留一些公共代码,然后为整个项目聚合子项目的根build.sbt?我现在在.scala文件中有类似的设置,但如果可能的话,我更愿意使用.sbt文件.
如果这不可能,使用.sbt文件构建大型多项目构建的"正确"方法是什么?
我想使用sbt-scrooge插件,但它的repo现在不可用 - http://koofr.github.com/.
我以为我会将这个插件的源代码直接包含在我自己的repo中(作为git子模块).
我试过了:
git submodule add https://github.com/bancek/sbt-scrooge.git project/sbt-scrooge
Run Code Online (Sandbox Code Playgroud)
并补充说:
addSbtPlugin("net.koofr" % "sbt-scrooge" % "3.0.45")
Run Code Online (Sandbox Code Playgroud)
到project/plugins.sbt.但它不起作用 - 抛出以下异常:
sbt.ResolveException:未解析的依赖项:net.koofr#sbt-scrooge; 3.0.45:未找到
这样做的正确方法是什么?
我知道我可以将sbt-scrooge签出到本地文件系统,然后sbt publish-local将本地ivy2repo 添加到sbt作为解析器.但我只是想知道是否有其他方法可以做到这一点.