在src/main/scala/下建立一個scala應用程序 git
object Hello extends App { println("Hello sbt!") }
E:\study\hello-sbt>sbt [info] Set current project to default-483fed (in build file:/E:/study/hello-sbt/ > run [info] Updating {file:/E:/study/hello-sbt/}default-483fed... [info] Resolving org.scala-lang#scala-library;2.9.2 ... [info] Done updating. [info] Compiling 1 Scala source to E:\study\hello-sbt\target\scala-2.9.2\classes ... [info] Running Hello Hello sbt! [success] Total time: 9 s, completed 2013-1-22 16:07:37
> name [info] default-483fed > version [info] 0.1-SNAPSHOT > scala-version [info] 2.9.2咱們在項目根目錄下建立build.sbt文件,內容以下:
name := "hello-sbt" version := "1.0" scalaVersion := "2.10.0"(行之間的空行是必須的)
> reload ... > name [info] hello-sbt > version [info] 1.0 > scala-version [info] 2.10.0
O(∩_∩)O~,修改爲功。 shell
只有build.sbt在項目根目錄下,其餘的.sbt文件要放在$root/project/下。.scala構建文件也要放在project/下,和.sbt結合使用。另外,project/下的.sbt文件並不等價於項目根目錄下的.sbt。 工具
sbt.version=0.12.0
> reload [info] Loading project definition from E:\study\hello-sbt\project [info] Updating {file:/E:/study/hello-sbt/project/}default-8c278e... [info] Resolving org.scala-sbt#sbt;0.12.0 ... ....... [info] Resolving org.scala-sbt#compiler-interface;0.12.0 ... [info] Resolving org.scala-sbt#precompiled-2_8_2;0.12.0 ... [info] Resolving org.scala-sbt#precompiled-2_10_0-m4;0.12.0 ... [info] Done updating. [info] Set current project to hello-sbt (in build file:/E:/study/hello-sbt/)
至於爲何要設置sbt版本,官方的解釋是:
sbt發行版之間的源碼是99%兼容的。儘管如此,設置sbt版本(在project/build.properties)能夠避免一些潛在的混亂。 ui
五、配置版本控制
不少人會把編譯出來的class,或者構建工具生成的東西提交到版本控制系統裏去。而後同步的時候就很痛苦,一堆沒用的東西。
在項目根目錄下建立一個.gitignore文件(或者其餘VCS的等價文件,之後補充),內容爲: spa
target/
ignore文件的寫法,參考特定的VCS系統。 scala
好吧,雖然在第二節咱們已經可以運行這個程序了,可是不能把項目導入到集成開發環境,也沒什麼意義吧,難道會有人用notepad++來開發一個項目嗎?下一篇先看這個。 版本控制
$root/build.sbt name version scalaVersion (setting := "value") 必須以空行間隔 $root/project/build.properties sbt.version (property = value)