Clojure
Share your thoughts in the 2024 State of Clojure Survey!
Clojure Downloads

Clojure Downloads

New to Clojure? Head to the Getting Started guide instead for information on how to install the Clojure tools!

These tools allow you to start a REPL for interactive use, download Clojure libraries (including Clojure itself), and run Clojure programs.

Stable Release: 1.12.0 (Sep 5, 2024)

Include the release in your project using the following coordinates:

deps.edn coordinate:

org.clojure/clojure {:mvn/version "1.12.0"}

Leiningen dependency:

[org.clojure/clojure "1.12.0"]

Dependencies

Clojure 1.12.0 depends on the following core libraries:

  • org.clojure/spec.alpha {:mvn/version "0.5.238"} (jar)

  • org.clojure/core.specs.alpha {:mvn/version "0.4.74"} (jar)

Using Clojure with a tool like the Clojure CLI or Leiningen will automatically include these libraries as transitive dependencies.

Java compatibility

Clojure depends on Java and all Clojure code is compiled to Java 8 compatible bytecode (newer versions of Java can load this as well).

  • Minimum runtime dependency: Java 8

  • Supported: LTS (long term support) releases, currently Java 8, Java 11, Java 17, Java 21

  • Others: likely work, but not officially supported

Changelog

Read the Changelog for detailed release information.

Development Release: none

Older Releases

Clojure Source

Clojure source code is hosted at github.com/clojure/clojure. Builds of the very latest version of Clojure’s master branch are available at oss.sonatype.org.

Get Clojure

Via deps.edn

Specify the version of Clojure that you want in your deps.edn:

{:deps
 {org.clojure/clojure {:mvn/version "1.12.0"}}}

Via Leiningen

Modify the dependencies and repositories sections of your Leiningen project.clj file, specifying the version of Clojure that you want:

; under dependencies, select the release of clojure that you want
:dependencies [[org.clojure/clojure "1.12.0"]]

Using Clojure SNAPSHOT releases

Most tools do not automatically include the sonatype snapshot repositories. To use SNAPSHOT releases, you must add this to your configuration:

In deps.edn

Add an additional repository in deps.edn:

{:mvn/repos
 {"sonatype-oss-public" {:url "https://oss.sonatype.org/content/groups/public/"}}}

In Leiningen

Add a snapshot repository in Leiningen in project.clj:

:repositories {"sonatype-oss-public" "https://oss.sonatype.org/content/groups/public/"}

In Maven

In pom.xml:

<repositories>
  <repository>
    <id>sonatype-oss-public</id>
    <url>https://oss.sonatype.org/content/groups/public/</url>
    <releases>
      <enabled>true</enabled>
    </releases>
    <snapshots>
      <enabled>true</enabled>
    </snapshots>
  </repository>
</repositories>

Download verification

See the download key page for more on verifying Maven downloads against the Clojure public key.