www update org scala sbt

update - ¿Cuál es la diferencia entre build.sbt y build.scala?



scala sbt ubuntu (3)

Empecé a aprender Scala y casi en cada tutorial veo un archivo build.sbt que describe la configuración del proyecto. Pero ahora he instalado giter8 y giter8 creado un proyecto a partir de la plantilla. Y el proyecto generado a partir de la plantilla se olvidó del archivo build.sbt , pero tiene build.scala (que parece usado para los mismos fines, pero es más flexible).

Entonces, ¿cuál es la diferencia entre build.sbt y build.scala ?
¿Cuál es más preferido y por qué?




Para dar un breve ejemplo, este build.sbt :

name := "hello" version := "1.0"

es una notación abreviada más o menos equivalente a este project/Build.scala :

import sbt._ import Keys._ object Build extends Build { lazy val root = Project(id = "root", base = file(".")).settings( name := "hello", version := "1.0" ) }

El archivo .sbt también puede incluir .sbt , lazy val y def s (pero no los object ni las class ).

Consulte el documento de SBT llamado "definición de compilación .scala" , particularmente la sección "Relacionar build.sbt to Build.scala".

Considere una definición de compilación .scala si está haciendo algo complicado en el que desea la total expresividad de Scala.