An example of building applications that consist of multiple services.
First off, the top-level project is an sbt multi-project. It defines two Play applications,
app2. It also
defines a non-Play project
model that contains code shared by the Play applications.
Each Play app is then split into a master app, and Play sub-modules (in this case only an admin module). Play sub-modules follow Play conventions, but require to use a separate routes file and sub-package for controllers and views. They cannot have conf files.
Note how sbt plugins are only defined by the root build.
You can run each app individually by using
sbt ";project app<n>;run. Two scripts are provided for this.
sbt test will run all tests in all sub-projects.