clojure(1) a JVM-based dynamic programming language


clojure [-cp/-classpath classpath] [-i/--init path] [-e/--eval expr] {-h | -r | path | -} [args ...]


This manual page documents briefly the clojure command.

clojure is the main entry point for Clojure, a dynamic programming language that targets the Java Virtual Machine. With no options or arguments, it runs an interactive Read-Eval-Print loop (REPL).


A summary of options is included below.
-cp, -classpath classpath
Specifies additional classpath elements. Overrides the $CLASSPATH environment variable. Must appear first if given.
-i, --init path
Load a file or resource at initialisation time. May be specified multiple times.
-e, --eval string
Evaluate expressions in string; print non-nil values. May be specified multiple times.
-r, --repl
Run a repl
Run a script from a file or resource
Run a script from standard input
-h, -?, --help
Print a help message and exit


A Clojure file can be provided as a path argument. Files to be loaded from the classpath must be prefixed with a `@' character, and must be an absolute path to the classpath resource. Note that the path will be treated as absolute within the classpath, whether it is prefixed with a slash or not.

clojure binds *command-line-args* to a seq containing the (optional) arguments provided after the path argument; this provides a way to provide command-line arguments to your scripts.


A listing of recognised environment variables is included below.
Specifies additional classpath elements.


clojure is a wrapper script around a Java implementation by Rich Hickey <[email protected]>. The wrapper script was written by Peter Collingbourne <[email protected]>.

This manual page was written by Peter Collingbourne <[email protected]>, for the Debian project (but may be used by others).