我开始学习Scala,几乎在每个教程中我都看到一个build.sbt描述项目设置的文件.但现在我已经giter8从模板安装并创建了一个项目.并且从模板遗漏build.sbt文件生成项目,但它有build.scala(它似乎用于相同的目的,但它更灵活).
那么build.sbt和之间的区别是什么build.scala?
哪个更受欢迎,为什么?
Chr*_*tin 95
举一个简短的例子,这个build.sbt:
name := "hello"
version := "1.0"
Run Code Online (Sandbox Code Playgroud)
是一种大致相当于此的简写符号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"
)
}
Run Code Online (Sandbox Code Playgroud)
该.sbt文件还可以包括vals,lazy vals和defs(但不包括objects和classes).
请参阅名为".scala build definition"的SBT文档,特别是"将build.sbt与Build.scala相关联"一节.
.scala如果你正在做一些复杂的事情,你想要Scala的完整表现力,请考虑一个构建定义.
Von*_*onC 30
2016年7月更新(3年后)
Build.scala在0.13.12中被正式弃用
该
Build特性已弃用,以支持该.sbt格式
PR 2530实现了弃用.
" 附录:.scala构建定义 "已更新.
tkr*_*man 13
在.sbt编译s时,它们在与目录中的.scala文件合并之前project.他们不能在递归任务中使用,也就是说,你不能自定义sbt从sbt,例如.有关更多详细信息,请参阅阅读相关部分是sbt文档:http://www.scala-sbt.org/release/docs/Getting-Started/Basic-Def.html#sbt-vs-scala-definition
| 归档时间: |
|
| 查看次数: |
24810 次 |
| 最近记录: |