[关闭]
@spiritnotes 2016-03-22T13:07:28.000000Z 字数 1348 阅读 1770

sbt

Scala


安装

  1. echo "deb https://dl.bintray.com/sbt/debian /" | sudo tee -a /etc/apt/sources.list.d/sbt.list
  2. sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 2EE0EA64E40A89B84B2DF73499E82A75642AC823
  3. sudo apt-get update
  4. sudo apt-get install sbt

使用

源文件查找

sbt 将会自动找到以下内容:

项目根目录下的源文件
src/main/scala 或 src/main/java 中的源文件
src/test/scala 或 src/test/java 中的测试文件
src/main/resources 或 src/test/resources 中的数据文件
lib 中的 jar 文件

sbt 会用和启动自身相同版本的 Scala 来构建项
可以通过执行 sbt run 来运行项目
通过 sbt console 进入 Scala REPL

设置 sbt 版本

build.properties 文件强制指定一个版本的 sbt
如 sbt.version=0.13.11

运行模式

交互模式

sbt进入
compile 编译
run 运行
exit 或者 Ctrl+D (Unix)或者 Ctrl+Z (Windows)可以退出交互模式

批处理模式

用批处理模式来运行 sbt,可以以空格为分隔符指定参数。对于接受参数的 sbt 命令,将命令和参数用引号引起来一起传给 sbt

sbt clean compile "testOnly TestA TestB"

构建定义

sbt 在检查项目和处理构建定义文件之后,形成一个Project定义

  1. //build.sbt
  2. lazy val commonSettings = Seq(
  3. organization := "com.example",
  4. version := "0.1.0",
  5. scalaVersion := "2.11.7"
  6. )
  7. lazy val root = (project in file(".")).
  8. settings(commonSettings: _*).
  9. settings(
  10. name := "hello"
  11. )

库依赖

  1. val derby = "org.apache.derby" % "derby" % "10.4.1.3"
  2. lazy val commonSettings = Seq(
  3. organization := "com.example",
  4. version := "0.1.0",
  5. scalaVersion := "2.11.7"
  6. )
  7. lazy val root = (project in file(".")).
  8. settings(commonSettings: _*).
  9. settings(
  10. name := "hello",
  11. libraryDependencies += derby
  12. )

启动REPL

console
输入Ctrl + D退出Scala解释器

compile

compile
作业位于src/main/scala 目录

test

src/test/scala 目录包含项目的单元测试

run

如果你的项目有个对象带有方法(或者对象继承了 App 品质(trait)),那么你就可以通过输入 run 在 sbt 中运行代码。在 sbt 发现有多个 main 方法时,它会询问你想执行哪一个

styleCheck

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注