activator new
Как организовать код Java и Scala в Play?
приводит:
Fetching the latest list of templates...
Browse the list of templates: http://lightbend.com/activator/templates
Choose from these featured templates or enter a template name:
1) minimal-akka-java-seed
2) minimal-akka-scala-seed
3) minimal-java
4) minimal-scala
5) play-java
6) play-scala
(hit tab to see a list of all templates)
>
Анатомия play-java
и play-scala
выглядит следующим образом:
ls project-*/app
...-java/app:
controllers filters Filters.java Module.java services views
...-scala/app:
controllers filters Filters.scala Module.scala services views
В соответствии с this документации:
Вы также имеют возможность использовать макет по умолчанию, используемый SBT и Maven. Обратите внимание, что этот макет является экспериментальным и может иметь проблемы . Для того, чтобы использовать эту схему, необходимо отключить макет плагин и установить явный контроль шаблонов закрутить:
build.sbt → Application build script
src → Application sources
└ main → Compiled asset sources
└ java → Java sources
└ controllers → Java controllers
└ models → Java business layer
└ scala → Scala sources
└ controllers → Scala controllers
└ models → Scala business layer
└ resources → Configurations files and other non-compiled resources (on classpath)
└ application.conf → Main configuration file
└ routes → Routes definition
Обсуждение
основе this answer следует объединить Java и SCALA файлы ? Например .:
слияния
...-java/app/controllers:
AsyncController.java CountController.java HomeController.java
...-scala/app/controllers:
AsyncController.scala CountController.scala HomeController.scala
в
.../app/controllers
AsyncController.java CountController.java HomeController.java
AsyncController.scala CountController.scala HomeController.scala
Является ли это Play анатомия для объединения Java и SCALA классов или должны быть созданы ява и каталог в Scala папку приложения/контроллеры?
routes
файл, который находится в Java и лестницу проекта идентичны:
# Routes
# This file defines all application routes (Higher priority routes first)
# ~~~~
# An example controller showing a sample home page
GET / controllers.HomeController.index
# An example controller showing how to use dependency injection
GET /count controllers.CountController.count
# An example controller showing how to write asynchronous code
GET /message controllers.AsyncController.message
# Map static resources from the /public folder to the /assets URL path
GET /assets/*file controllers.Assets.versioned(path="/public", file: Asset)