У меня есть простой проект с двумя подмодулями, proja и projb. Proja содержит свойство UserController, используемое в UserControllerImpl внутри projb.SBT 0.13.8 проект с несколькими модулями с Playframework 2.4.2
проект на GitHub: https://github.com/aswarcewicz/play-sbt-multimodule
корень build.sbt:
name := """proj"""
version := "1.0-SNAPSHOT"
lazy val proja = Project(id = "proj-a", base = file("modules/proj-a"))
.enablePlugins(PlayScala)
lazy val projb = Project(id = "proj-b", base = file("modules/proj-b"))
.enablePlugins(PlayScala)
.dependsOn(proja)
.aggregate(proja)
lazy val root = Project(id = "proj", base = file("."))
.enablePlugins(PlayScala)
.dependsOn(proja, projb)
.aggregate(proja, projb)
scalaVersion := "2.11.6"
libraryDependencies ++= Seq(
)
// Play provides two styles of routers, one expects its actions to be injected, the
// other, legacy style, accesses its actions statically.
routesGenerator := InjectedRoutesGenerator
и ошибок от компилятора:
модулей/проектируемый-B/приложение/контроллеры/UserControllerImpl.scala: 5: не найдено: объект контроллер [ошибка] импорт контроллер._
/modu ле/проектируемый-B/приложение/контроллеры/UserControllerImpl.scala: 10: не найдено: Тип UserController [ошибка] Класс UserControllerImpl расширяет контроллер с UserController {
Я понятия не имею, что может быть не так.
Пробовали ли вы его на проекте из GitHub? Потому что это не работает. – user2860204
Ваш SBT-файл был синтаксически неправильным, теперь вы можете добавить зависимую вы хотите – Omid
, и вам больше не нужен файл sbt для каждого проекта – Omid