logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

lein - Automate Clojure projects

Author

       This manpage is written by Phil Hagelberg <technomancy@gmail.com>

                                                 2017 August 10                                     LEININGEN(1)

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.

See Also