相互に関連する複数のサブプロジェクトを含む play 2.3.x プロジェクトがあります。
言う:
- R は、サブプロジェクト A、B、C を集約するルート プロジェクトです。
- A は B、C に依存する
- B は C に依存する
ドキュメントには、A、B、C に対応する build.sbt をどのように記述するかについては言及されていません。
https://www.playframework.com/documentation/2.3.x/SBTSubProjects
現在、ルートの build.sbt ですべての依存関係を宣言しており、問題なく動作します (少なくとも sbt 0.13.5 では)。
lazy val C = (project in file("modules/C"))
.enablePlugins(PlayJava)
lazy val B = (project in file("modules/B"))
.enablePlugins(PlayJava)
.dependsOn(C)
lazy val A = (project in file("modules/B"))
.enablePlugins(PlayJava)
.dependsOn(B, C)
lazy val root = (project in file("."))
.enablePlugins(PlayJava)
.dependsOn(A, B, C)
.aggregate(A, B, C)
.settings(
aggregate in update := false
)
しかし、0.13.6 などの新しい sbt を使用しようとすると、これらの依存関係はすべて機能しなくなり、対応する build.sbt の build.sbt を参照するようになります。
では、そのようなプロジェクト間の依存関係を定義する好ましい方法は何ですか?