Skip to main content

sbt User Guide

sbt is a build tool for Scala, Java, and more. It requires JDK 8 or later.

Install​

See Installing sbt for the setup instructions.

Getting Started​

To get started, 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. All documentation may be found via the table of contents included on the left of every page.

See How can I get help? for where you can get help about sbt. For discussing sbt development, use Discussions.

Features of sbt​

  • Little or no configuration required for simple projects
  • Scala-based build definition that can use the full flexibility of Scala code
  • Accurate incremental recompilation using information extracted from the compiler
  • Library management support using Coursier
  • Continuous compilation and testing with triggered execution
  • 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
  • Modularization supported with sub-projects
  • External project support (list a git repository as a dependency!)
  • Parallel task execution, including parallel test execution

Also​

This documentation can be forked on GitHub. Feel free to make corrections and add documentation.

Documentation for 0.13.x has been archived here. This documentation applies to sbt $app_version$.