Building sbt


sbt now uses git for version control. You can find the source on github. As of 0.7.2, sbt is at The 'master' branch is for 0.7.x stable releases, while the 0.9 branch is for the 0.9.x development series.

Test support was separated out to work across a uniform test interface. Because of this, sbt no longer needs to be compiled against test frameworks. New test frameworks that implement the uniform test interface can be used by sbt without needing to recompile sbt, as was the case previously. In order to provide compatibility with sbt 0.5.6, there is an implementation of the test interface for Scala test frameworks released before the interface existed.


The latest sbt release (0.7.7) is used to build. From scratch, building sbt locally looks like:

$ git clone git://
$ cd xsbt
$ sbt update proguard "project Simple Build Tool" publish-local

The launcher jar created by the proguard action is located at xsbt/target/sbt-launch-0.7.x.jar.


Set the sbt.version in the project you want to use this in to be 0.7.8-SNAPSHOT. If you rebuild sbt, you'll need to remove project/boot for that project because sbt does not recheck a version once it is retrieved to a project.