Download / Maven

Apache FreeMarker is a template engine: a Java library to generate text output (HTML web pages, e-mails, configuration files, source code, etc.) based on templates and changing data.

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...

Verifying downloads: 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... Note that such verification is only possible since 2.3.24.

Latest stable release: 2.3.28

Released on 2018-04-04. Requires J2SE 1.5 or higher.

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.28</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 [SHA512] [ASC], source [SHA512] [ASC]. Maven:

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

Old 2.x versions starting from 2.3.24 RC01 (and higher) are available from the Apache archive: https://archive.apache.org/dist/freemarker/engine/. 2.x versions before 2.3.24 RC01 are available from the SourceForge download page.