Leiningen is a
build automation and dependency management tool for the simple configuration of software projects written in the
Clojure
Clojure (, like ''closure'') is a dynamic and functional dialect of the Lisp programming language on the Java platform. Like other Lisp dialects, Clojure treats code as data and has a Lisp macro system. The current development process is ...
programming language.
Leiningen was created by Phil Hagelberg. Phil started the project with the aim of simplifying the complexities of
Apache Maven
Maven is a build automation tool used primarily for Java projects. Maven can also be used to build and manage projects written in C#, Ruby, Scala, and other languages. The Maven project is hosted by the Apache Software Foundation, where it was ...
, 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
AOT may refer to:
Science and technology
* Abstract object theory
* Aerosol OT, a common chemical reagent; see Dioctyl sodium sulfosuccinate
* Aerosol Optical Thickness, a measure for the concentration of aerosols determined by light absorption ...
) 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''.
[
]
See also
*
Boot (software)
*
Leiningen Versus the Ants
References
External links
*
* {{github, technomancy/leiningen
List of available plugin extensionsClojure website
Build automation
Software using the Eclipse license