Hello, World
このページは、君がsbt をインストールしたことを前提にする。
ソースコードの入ったプロジェクトディレクトリを作る
一つのソースファイルを含むディレクトリでも、一応有効な sbt プロジェクトとなりうる。試しに、作って実行してみよう:
$ mkdir hello $ cd hello $ echo 'object Hi { def main(args: Array[String]) = println("Hi!") }' > hw.scala $ sbt ... > run ... Hi!
この例では、sbt は純粋に convention(デフォルトの慣例)だけを使って動作している。 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 console
を用いて Scala REPL に入ることができる。sbt console
は君のプロジェクトにクラスパスを通すから、
君のプロジェクトのコードを使った Scala の例をライブで試すことができる。
ビルド定義
ほとんどのプロジェクトは何らかの手動設定が必要だ。基本的なビルド設定は build.sbt
というファイルに書かれ、
プロジェクトのベースディレクトリ (base directory) に置かれる。
例えば、君のプロジェクトが hello
ディレクトリにあるなら、hello/build.sbt
をこんな感じで書く:
name := "hello" version := "1.0" scalaVersion := "2.9.1"
.sbt ビルド定義で、build.sbt
の書き方をもっと詳しく説明する。
君のプロジェクトを jar ファイルにパッケージ化する予定なら、最低でも build.sbt
に name と version は書いておこう。
sbt バージョンの設定
hello/project/build.properties
というファイルを作ることで、特定のバージョンの sbt を強制することができる。
このファイルに、以下のように書く:
sbt.version=0.11.0
0.10 以降は、sbt はリリース間で 99% ソースの互換性を持たせてある。
だけど、sbt バージョンを project/build.properties
に設定することで混乱を予防することできる。
続いては
sbt プロジェクトのファイルとディレクトリのレイアウトについてみてみよう。