sbt is a simple build tool for Scala projects that aims to do the basics well. It requires Java 1.5 or later.
Features
* Fairly fast, unintrusive, and easy to set up for simple projects
* Configuration is done in Scala
* The default source directory layout is the same as maven's so you can always switch to maven should you need/want to
* Regardless of what sources you have added, changed, or removed, sbt should (in theory) recompile the right sources using information extracted from compilation with a compiler plugin
* Supports ScalaCheck, specs, and ScalaTest.
* Can generate documentation with scaladoc
* Packages jars (classes, sources, or api docs)
* Can start the Scala interpreter with the right classpath (dependencies and compiled classes)
* Multiple project/subproject support
* Parallel task execution, including parallel test execution
* Dependency management support: basic inline declarations, configuration with Maven (partial support) or Ivy, or manual management.
M. Steindorfer, and J. Vinju. Proceedings of the 2015 ACM SIGPLAN International Conference on Object-Oriented Programming, Systems, Languages, and Applications, page 783--800. New York, NY, USA, ACM, (2015)
Y. Hayduk, A. Sobe, and P. Felber. Distributed Applications and Interoperable Systems, volume 9038 of Lecture Notes in Computer Science, Springer, (2015)
S. Tasharofi, P. Dinges, and R. Johnson. ECOOP 2013 – Object-Oriented Programming, volume 7920 of Lecture Notes in Computer Science, page 302-326. Springer Berlin Heidelberg, (2013)
V. Ureche, C. Talau, and M. Odersky. Proceedings of the 2013 ACM SIGPLAN International Conference on Object Oriented Programming Systems Languages &\#38; Applications, page 73--92. ACM, (2013)
M. Latoschik, and H. Tramberend. Software Engineering and Architectures for Realtime Interactive Systems (SEARIS), 2012 5th Workshop on, page 9-17. (March 2012)
M. Latoschik, and H. Tramberend. Software Engineering and Architectures for Realtime Interactive Systems (SEARIS), 2012 5th Workshop on, page 9-17. (March 2012)