Skip to content


Subversion checkout URL

You can clone with
Download ZIP


Havoc Pennington edited this page · 23 revisions

sbt is a build tool for Scala and Java projects that aims to do the basics well. It requires Java 1.6 or later.


See the install instructions.


  • Easy to set up for simple projects
  • .sbt build definition uses a Scala-based "domain-specific language" (DSL)
  • More advanced .scala build definitions and extensions use the full flexibility of unrestricted Scala code
  • Accurate incremental recompilation using information extracted from the compiler
  • Continuous compilation and testing with triggered execution
  • Packages and publishes jars
  • Generates documentation with scaladoc
  • Supports mixed Scala/Java projects
  • Supports Testing with ScalaCheck, specs, and ScalaTest (JUnit is supported by a plugin)
  • Starts the Scala REPL with project classes and dependencies on the classpath
  • Sub-project support (put multiple packages in one project)
  • External project support (list a git repository as a dependency!)
  • Parallel task execution, including parallel test execution
  • Library management support: inline declarations, external Ivy or Maven configuration files, or manual management

Getting Started

To get started, read the Getting Started Guide.

Please read the Getting Started Guide. You will save yourself a lot of time if you have the right understanding of the big picture up-front.

If you are familiar with 0.7.x, please see the migration page. Documentation for 0.7.x is still available on the Google Code Site. This wiki applies to sbt 0.10 and later.

The mailing list is at Please use it for questions and comments!

This wiki is editable if you have a github account. Feel free to make corrections and add documentation. Use the mailing list if you have questions or comments.

Something went wrong with that request. Please try again.