【发布时间】:2016-04-15 15:48:07
【问题描述】:
我有一个多项目 SBT 构建。有一个根没有任何东西,它只是聚合所有子项目。
lazy val aaRoot = (project in file(".")).settings(commonSettings: _*).settings(
libraryDependencies ++= appDependencies
).enablePlugins(PlayJava).aggregate(foo, bar)
lazy val foo: Project = (project in file("modules/foo")).settings(commonSettings: _*).settings(
libraryDependencies ++= appDependencies
).enablePlugins(PlayJava).dependsOn(bar)
lazy val bar = (project in file("modules/bar")).settings(commonSettings: _*).settings(
libraryDependencies ++= appDependencies
).enablePlugins(PlayJava).dependsOn(foo)
这里显然是一个循环依赖(foo 依赖于bar 和bar 依赖于foo)。有哪些可能的方法可以避免此类依赖关系,或者是否有 SBT 处理此问题的方法。
【问题讨论】: