lein - Automate Clojure projects
Contents
Bugs
Check https://codeberg.org/leiningen/leiningen/issues to see if your problem is a known issue. If not,
please open a new issue on that site. Please include the output of leinversion as well as your
project.clj file and as much of the relevant code from your project as possible.
Configuration
Leiningen reads its configuration from the project.clj file in your project root. Either use leinnew to
create a fresh project from which to work, or see the exhaustive list of configuration options with leinhelpsample.
You can customize your project map further with profiles; see leinhelpprofiles.
Copying
Copyright (C) 2009-2017 Phil Hagelberg and contributors.
Distributed under the Eclipse Public License, the same as Clojure uses. See the file
/usr/share/doc/leiningen/copyright.
Description
Leiningen is for automating Clojure projects without setting your hair on fire.
Working on Clojure projects with tools designed for Java can be an exercise in frustration. With
Leiningen, you just write Clojure.
Name
lein - Automate Clojure projects
Options
-o Run a task offline.
-U Run a task after forcing update of snapshots.
-h, --help
Print this help or help for a specific task.
-v, --version
Print Leiningen's version.
Synopsis
lein [-o] [-U] [TASK [ARGS]]
lein [-h|--help]
lein [-v|--version]
Tasks
leinhelp will show the complete list of tasks, while leinhelpTASK shows usage for a specific one.
leinhelptutorial has a detailed walk-through of the various tasks, but the most commonly-used are:
leinnewNAME
generate a new project skeleton
leintest[TESTS]
run the tests in the TESTS namespaces, or all tests
leinrepl
launch an interactive REPL session in a networked REPL server
leinuberjar
package up the project and its dependencies as a standalone .jar file
leininstall
install a project into your local repository
leindeploy[REPOSITORY]
deploy a library to a remote repository
Other tasks available include:
leinchange
Rewrite project.clj by applying a function.
leincheck
Check syntax and warn on reflection.
leinclasspath
Print the classpath of the current project.
leinclean
Remove all files from project's target-path.
leincompile
Compile Clojure source into .class files.
leindeps
Download all dependencies.
leindo[TASK],...
Higher-order task to perform other tasks in succession.
leinjar
Package up all the project's files into a jar file.
leinjavac
Compile Java source files.
leinpom
Write a pom.xml file to disk for Maven interoperability.
leinrelease
Perform :release-tasks.
leinretest
Run only the test namespaces which failed last time around.
leinrun
Run a -main function with optional command-line arguments.
leinsearch
Search remote maven repositories for matching jars.
leinshow-profiles
List all available profiles or display one if given an argument.
leintrampoline[TASK]
Run a task without nesting the project's JVM inside Leiningen's.
leinupdate-in
Perform arbitrary transformations on your project map.
leinvcs
Interact with the version control system.
leinversion
Print version for Leiningen and the current JVM.
leinwith-profile[PROFILE][TASK]
Apply the given task with the profile(s) specified.
