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.32
Released on 2023-01-14. Requires J2SE 1.7 or higher.
Downloads:
-
Binary release (tar.gz) (includes
freemarker.jar
and documentation) [SHA512] [ASC]
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.32</version> </dependency>
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.32</version> </dependency>
Old 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/.
Even older versions, which weren't yet coming from Apache:
-
2.3.x versions before 2.3.24 RC01 are available from the SourceForge download page.
-
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!