Upload page content

You can upload content for the page named below. If you change the page name, you can also upload content for another page. If the page name is empty, we derive the page name from the file name.

File to load page content from
Page name
Comment

Locked History Actions

sbt/Getting-Started-Hello

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のバージョンを指定することは、混乱を避けるためだ。

次はディレクトリ構造