SBTSettings - opensas/Play20Es GitHub Wiki
El script del build de sbt define la configuración de su proyecto. También puede definir configuraciones personalizadas, como se explica en la documentación de sbt.
Para establecer una configuración básica, utilice el operador :=:
val main = PlayProject(appName, appVersion, appDependencies).settings(
confDirectory := "myConfFolder"
)Play 2.0 incluye por defecto una configuración apropiada para una aplicación basada en Java. Para habilitar esta configuración agregue el conjunto de configuraciones defaultJavaSettings a la definición de su aplicación:
val main = PlayProject(appName, appVersion, appDependencies, mainLang = JAVA)Este conjunto de configuraciones define los imports por defecto a ser utilizados por los templates generados automáticamente por Play. Por ejemplo, importa java.lang.*, de forma tal que para los tipos de dato como Long utilice los definidos para Java en vez de tomar los de Scala. También importa java.util.* para que la librería de colecciones a utilizar sea la de Java.
Play 2.0 también incluye una configuración por defecto apropiada para una aplicación basada en Scala. Para habilitar esta configuración agregue el conjunto de configuraciones defaultScalaSettings a la definición de su aplicación:
val main = PlayProject(appName, appVersion, appDependencies, mainLang = SCALA)Este conjunto de configuraciones define los imports por defecto a ser utilizados por los templates generados automáticamente por Play (como los mensajes internacionalizados y la API principal).
Si usted define su proyecto sbt utilizando PlayProject en vez de Project, obtendrá un conjunto de configuraciones por defecto adecuados para una aplicación de Play. Aquí está la configuración por defecto:
resolvers ++= Seq(
"Maven Repository" at "http://repo1.maven.org/maven2/",
"Typesafe Repository" at "http://repo.typesafe.com/typesafe/releases/"
),
target <<= baseDirectory / "target",
sourceDirectory in Compile <<= baseDirectory / "app",
confDirectory <<= baseDirectory / "conf",
scalaSource in Compile <<= baseDirectory / "app",
javaSource in Compile <<= baseDirectory / "app",
distDirectory <<= baseDirectory / "dist",
libraryDependencies += "play" %% "play" % play.core.PlayVersion.current,
sourceGenerators in Compile <+= (confDirectory, sourceManaged in Compile) map RouteFiles,
sourceGenerators in Compile <+= (sourceDirectory in Compile, sourceManaged in Compile, templatesTypes, templatesImport) map ScalaTemplates,
commands ++= Seq(
playCommand, playRunCommand, playStartCommand, playHelpCommand, h2Command, classpathCommand, licenseCommand, computeDependenciesCommand
),
shellPrompt := playPrompt,
copyResources in Compile <<= (copyResources in Compile, playCopyResources) map { (r, pr) => r ++ pr },
mainClass in (Compile, run) := Some(classOf[play.core.server.NettyServer].getName),
compile in (Compile) <<= PostCompile,
dist <<= distTask,
computeDependencies <<= computeDependenciesTask,
playCopyResources <<= playCopyResourcesTask,
playCompileEverything <<= playCompileEverythingTask,
playPackageEverything <<= playPackageEverythingTask,
playReload <<= playReloadTask,
playStage <<= playStageTask,
cleanFiles <+= distDirectory.identity,
resourceGenerators in Compile <+= LessCompiler,
resourceGenerators in Compile <+= CoffeescriptCompiler,
resourceGenerators in Compile <+= JavascriptCompiler,
playResourceDirectories := Seq.empty[File],
playResourceDirectories <+= baseDirectory / "conf",
playResourceDirectories <+= baseDirectory / "public",
templatesImport := Seq("play.api.templates._", "play.api.templates.PlayMagic._"),
templatesTypes := {
case "html" => ("play.api.templates.Html", "play.api.templates.HtmlFormat")
case "txt" => ("play.api.templates.Txt", "play.api.templates.TxtFormat")
case "xml" => ("play.api.templates.Xml", "play.api.templates.XmlFormat")
}