Clojure

Clojure Downloads

New to Clojure? Head to the Getting Started guide instead!

Stable Release: 1.10.1 (June 6, 2019)

Include the release in your project using the following coordinates:

deps.edn coordinate:

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

Leiningen dependency:

[org.clojure/clojure "1.10.1"]

Dependencies

Clojure 1.10.1 depends on the following libraries:

  • org.clojure/spec.alpha {:mvn/version "0.2.176"}

  • org.clojure/core.specs.alpha {:mvn/version "0.2.44"}

Including Clojure with a tool like clj 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 and Java 11

  • Others: likely work, but not officially supported

Changelog

Read the Changelog for detailed release information.

Development Release: 1.10.2-alpha1 (March 5, 2020)

  • Clojure 1.10.2-alpha1

  • Clojure 1.10.2 pre-release builds

  • Dev changelog

  • Dependencies:

    • org.clojure/spec.alpha {:mvn/version "0.2.187"}

    • org.clojure/core.specs.alpha {:mvn/version "0.2.44"}

  • Requirements: Java 8 or higher (recommended: Java 8 or Java 11)

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.10.1"}}}

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.10.1"]]

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>