Hello, World
https://github.com/harrah/xsbt/wiki/Getting-Started-Helloの訳(2011/10/26時点)
既にsbtをインストールしていることを前提とするよ。
ソースコード入りのプロジェクトディレクトリを用意する
ただ一つのソースファイルの入ったディレクトリでも正当なsbtプロジェクトになりうる。 以下のように作成しよう
$ mkdir hello $ cd hello $ echo 'object Hi { def main(args: Array[String]) = println("Hi!") }' > hw.scala $ sbt ... > run ... Hi!
このケースではsbtでは純粋にコンベンションのもとで動作する。以下を自動的に見つけてくれるんだ。
- ベースディレクトリ中のソース
- src/main/scalaあるいはsrc/main/java中のソース
- src/test/scalaあるいはsrc/test/java中のテスト
- src/main/resourcesあるいはsrc/test/resources中のデータファイル
- lib中のjarファイル
デフォルトでは、sbtはsbt自身が動作しているバージョンのScalaを使ってプロジェクトをビルドする。
sbtのrunコマンドで君のプロジェクトを実行することもできるし、sbtコンソールからScalaのREPLを使うこともできる。 sbtコンソールは君のプロジェクトのクラスパスをセットアップしているので、君のプロジェクトのコードをベースとするScalaコードサンプルを試してみることもできる。
ビルド定義
多くのプロジェクトではマニュアルのセットアップが必要だろう。 基本的なビルド設定は、プロジェクトのベースディレクトリに置いたbuild.sbtというファイルで行う。
プロジェクトがhelloというディレクトリにあるなら、hello/build.sbtというファイルを作成して、以下のように記述する。
name := "hello" version := "1.0" scalaVersion := "2.9.1"
「.sbt build definition」で、build.sbtファイルの書き方について見ていく。
プロジェクトを一つのjarにまとめようと思っているのであれば、少なくともbuild.sbtにて、nameとversionを指定しておく必要がある。
sbtのバージョンを指定する
hello/project/build.propertiesというファイルを作ることによって、特定のバージョンのsbtの使用を強制することもできる。 このファイルに以下のように記述する。
sbt.version=0.11.0
0.10以降、sbtはリリース間での99%ソース互換を持つようになった(訳注:ほんと?)。 が、project/build.propertiesでsbtのバージョンを指定することは、混乱を避けるためだ。
次はディレクトリ構造