sbt, the interactive build tool
Go to file
Mark Harrah 2d342d1485 allow global sbt directory to be configured. fixes #96 2011-07-12 23:09:57 -04:00
cache lazy InputCache for recursive caches 2011-06-20 15:25:23 -04:00
compile eval test fixes 2011-07-09 20:18:42 -04:00
interface implement shortcut for API equality checking, fixes #18 2011-06-01 02:19:46 -04:00
ivy use \n for make-pom because PrettyPrinter hard codes it. fixes #95 2011-07-12 07:47:31 -04:00
launch extra component for supporting dynamic changes to sbt's classpath. fixes #83 2011-07-01 23:38:03 -04:00
licenses move remaining pieces of sbt subproject to sbt_pending and fix notices 2010-09-21 21:55:50 -04:00
main allow global sbt directory to be configured. fixes #96 2011-07-12 23:09:57 -04:00
project disable full-release settings when release configuration not present 2011-07-09 17:17:41 -04:00
run don't handle threads/trap exit for user 'runTask' by default 2011-05-15 21:01:03 -04:00
sbt test case demonstrating two ways of augmenting sbt's classpath. addExtra1 is the recommended way 2011-07-02 23:01:01 -04:00
sbt_pending drop more migrated pending items 2011-04-20 18:31:37 -04:00
scripted replace Path with RichFile 2011-05-14 18:21:41 -04:00
src/main/conscript update conscripts 2011-06-22 19:17:10 -04:00
tasks global settings preparation: separate compilation/loading stages of Eval 2011-07-09 16:54:41 -04:00
testing fixes #90 2011-07-08 21:54:59 -04:00
util clean up whitespace handling in commands. fixes #97 2011-07-12 07:47:31 -04:00
.gitignore update .gitignore, fixes #61 2011-06-18 14:46:59 -04:00
LICENSE * move Environment classes to util/env module 2010-07-14 19:24:50 -04:00
NOTICE * move Environment classes to util/env module 2010-07-14 19:24:50 -04:00
README.md More information in README on developing sbt 2011-07-12 07:47:31 -04:00
api.specification Polymorphic types and fix parameterized type arguments to be Type and not just SimpleType 2010-01-07 21:38:39 -05:00
launch.specification minor fixes to launch specification 2010-01-10 19:20:44 -05:00
scripted.specification New scripted test framework 2009-11-09 09:34:52 -05:00

README.md

sbt 0.10

This is the 0.10.x series of sbt. See Setup for getting started with the latest binary release or see below to build from source.

The previous stable release of sbt was 0.7.7, which was hosted on Google Code.

There is a video of a demo given at the Northeast Scala Symposium that gives a brief introduction to the concepts in sbt 0.9 and later. Note that the demo was based on 0.9.0 and things have changed since then. See the documentation for current information.

Build from source

To build from source, get the latest stable version of sbt 0.10.x (see Setup) and get the code.

$ git clone git://github.com/harrah/xsbt.git
$ cd xsbt

The initial branch is the development branch 0.10, which contains the latest code for the 0.10.x series.

The latest tag for 0.10.x is 0.10.0:

$ git checkout v0.10.0

To build the launcher, publish all components locally, and build API and SXR documentation:

$ sbt build-all

The individual commands are

$ sbt publish-local proguard sxr doc

Copy your stable ~/bin/sbt script to ~/bin/xsbt and change it to use the launcher at:

<xsbt>/target/sbt-launch-0.10.0.jar

If using the 0.10 development branch, the launcher is at:

<xsbt>/target/sbt-launch-0.10.1-SNAPSHOT.jar

Modifying sbt

When developing sbt itself, there is no need to run build-all, since this generates documentation as well. For the fastest turnaround time for checking compilation only, run compile.

To use your modified version of sbt in a project locally, run publish-local. If you have modified the launcher, also run proguard.

After each publish-local, clean the project/boot/ directory in the project in which you want to use the locally built sbt. Alternatively, if sbt is running and the launcher hasn't changed, run reboot full to have sbt do this for you.

If a project has project/build.properties defined, either delete the file or change sbt.version to 0.10.1-SNAPSHOT.