This page assumes you’ve installed sbt.
A valid sbt project can be a directory containing a single source file.
Try creating a directory hello with a file hw.scala, containing the
following:
object Hi {
def main(args: Array[String]) = println("Hi!")
}
Now from inside the hello directory, start sbt and type run at the sbt
interactive console. On Linux or OS X the commands might look like this:
$ mkdir hello
$ cd hello
$ echo 'object Hi { def main(args: Array[String]) = println("Hi!") }' > hw.scala
$ sbt
...
> run
...
Hi!
In this case, sbt works purely by convention. sbt will find the following automatically:
src/main/scala or src/main/java
src/test/scala or src/test/java
src/main/resources or src/test/resources
lib
By default, sbt will build projects with the same version of Scala used to run sbt itself.
You can run the project with sbt run or enter the Scala
REPL with sbt console. sbt console
sets up your project’s classpath so you can try out live Scala examples
based on your project’s code.
Most projects will need some manual setup. Basic build settings go in a
file called build.sbt, located in the project’s base directory.
For example, if your project is in the directory hello, in
hello/build.sbt you might write:
lazy val root = (project in file(".")).
settings(
name := "hello",
version := "1.0",
scalaVersion := "2.11.7"
)
In .sbt build definition you’ll learn more about how to write
a build.sbt file.
If you plan to package your project in a jar, you will want to set at
least the name and version in a build.sbt.
You can force a particular version of sbt by creating a file
hello/project/build.properties. In this file, write:
sbt.version=0.13.11
to force the use of sbt 0.13.11. sbt is 99% source compatible from
release to release. Still, setting the sbt version in
project/build.properties avoids any potential confusion.