Download / Maven

Dependencies: FreeMarker has no required dependencies, except Java (Standard Edition) itself, with the minimum version indicated for each download below.

Backward compatibility: Before 2.3.0 (2004), releases with different second version numbers (like 2.2.x and 2.3.x) aren't fully compatible. The 2.3.x series is quite conservative about backward compatibility; you should be able to replace the FreeMarker binary (freemarker.jar) under your application with a newer one without breaking anything (obviously, assuming that only public FreeMarker API-s were used).

Change log (version history): See in the Manual...

Disclaimer: Apache FreeMarker is an effort undergoing incubation at The Apache Software Foundation (ASF). Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.

Verifying downloads (since 2.3.24 only): When downloading from a mirror please check the checksum and verify the OpenPGP compatible signature specified next to the download link (MD5, SHA256 and ASC files, all must come from the www.apache.org domain). The public keys used for signing are here: KEYS (also must come from www.apache.org). More about how to verify releases...

Latest stable release: 2.3.23

Released on 2015-07-05. Requires J2SE 1.4 or higher.

Download freemarker-2.3.23.tar.gz (3.2 MB, includes binary, documentation and source code)

For Maven:

<!--
Attention: Be sure nothing pulls in an old dependency with groupId
"freemarker" (without the "org."), because then you will end up with
two freemarker.jar-s and unpredictable behavior!
-->
<dependency>
  <groupId>org.freemarker</groupId>
  <artifactId>freemarker</artifactId>
  <version>2.3.23</version>
</dependency>
Note:

Until about 2007 the Maven group name was "freemarker" instead of "org.freemarker", and as the XML comment above says, this can cause problems, as Maven will see them as two independent artifacts with no version conflict. If you run into this issue, find the dependency that depends on the old FreeMarker, and insert <exclusions><exclusion><groupId>freemarker<!-- Legacy org-less group --></groupId><artifactId>freemarker</artifactId> </exclusion></exclusions> into it.

If you need to use FreeMarker on Google App Engine, download the GAE-compatible binary too (no documentation included in this).

<dependency>
  <groupId>org.freemarker</groupId>
  <artifactId>freemarker-gae</artifactId>
  <version>2.3.23</version>
</dependency>

Laster development version: 2.3.24-rc01-incubating

Released on 2016-01-28 (final 2.3.24 release planned for early March). Requires J2SE 1.5 or higher.

See what's new...

About "incubating" in the version number: It's unrelated to stability. The "incubating" suffix is required by the Apache Software Foundation until the project becomes a fully accepted (graduated) Apache project. See disclaimer earlier and the Apache Incubator web site.

Downloads:

(There's also a separate Google App Engine compatible variation: binary [MD5] [SHA512] [ASC], source [MD5] [SHA512] [ASC])

The Maven artifact, because it's a non-final release, is only available in the Apache Staging Repository, not in the Maven Central Repository. Thus, you have to add this to your .m2/settings.xml:

<!-- Repostiory for non-final Apache releases: -->
<repository>
  <id>apache-staging-repository</id>
  <url>https://repository.apache.org/content/repositories/staging/</url>
</repository>

and then in pom.xml:

<!--
  ATTENTION: This is a non-final release, so it's only present in the
  Apache Staging Repository, which must be added to settings.xml!
-->
<dependency>
  <groupId>org.freemarker</groupId>
  <artifactId>freemarker</artifactId>
  <version>2.3.24-rc01-incubating</version>
</dependency>

2.2.8

Released on 2004-06-15. This is the latest stable release of the 2.2 series. Requires J2SE 1.2 or higher.

Download freemarker-2.2.8.tar.gz (1.4 MB)

2.1.5

Released on 2003-02-08. This is the latest stable release of the 2.1 series. Requires J2SE 1.3 or higher.

Download freemarker-2.1.5.tar.gz (909 KB)

2.0.3 (aka. 2.03)

Released on 2002-06-12. The latest stable release of the 2.0 series. Requires J2SE 1.2 or higher.

Download freemarker2_03.tar.gz (617 KB)

1.x

The FreeMarker 1.x branch continues as separate project, called FreeMarker Classic. See releases on the FreeMarker Classic homepage!

Other versions

See the project's SourceForge download page for releases that are not featured on this download page.