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), sponsored by the Apache Incubator. 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.25-incubating

Released on 2016-06-26. Requires J2SE 1.5 or higher.

This is a stable, final release. 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.

See what's new...

Downloads:

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.25-incubating</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.

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

<dependency>
  <groupId>org.freemarker</groupId>
  <artifactId>freemarker-gae</artifactId>
  <version>2.3.25-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.