Leiningen is a build automation and dependency management tool for the simple configuration of software projects written in the Clojure programming language.

Leiningen
Original author(s)Phil Hagelberg
Developer(s)Jean Niklas L'orange
Initial releaseNovember 17, 2009 (2009-11-17)
Stable release
2.9.8 / November 11, 2021; 3 years ago (2021-11-11)[1]
Repository
Written inClojure
Operating systemCross-platform
TypeSoftware development tools
LicenseEclipse Public License
Websiteleiningen.org

Leiningen was created by Phil Hagelberg. Phil started the project with the aim of simplifying the complexities of Apache Maven, while offering a way of describing the most common build requirements of Clojure projects in idiomatic Clojure. These aims are succinctly captured in the project's tag line, "Automate Clojure projects without setting your hair on fire".

Leiningen's features can be extended via a plugin system, and it is supplied with a command line interface that can initiate a number of actions, which include:

  • The generation of a simple Clojure project skeleton
  • Ahead-of-time (AOT) compilation
  • Dependency resolution (with automatic library downloading)
  • Start an interactive REPL that has the classpath correctly set to load project dependencies
  • Packaging of project code and dependencies into an "uberjar" .jar file

Leiningen is the most widely-contributed-to open-source Clojure project. It is featured in chapter 8 of the book Clojure Programming.[2]

See also

edit

References

edit
  1. ^ "Releases · technomancy/leiningen". github.com. Retrieved 2022-07-01.
  2. ^ Emerick, Chas; Carper, Brian; Grand, Christophe (April 19, 2012). "Chapter 8: Organizing and Building Clojure Projects". Clojure Programming (1st ed.). O'Reilly Media. pp. 347–353. ISBN 978-1-4493-9470-7.
edit