1
|
===============================================================================
|
2
|
|
3
|
FreeMarker 2.3.20
|
4
|
|
5
|
For the latest version or to report bugs visit:
|
6
|
|
7
|
http://freemarker.org/
|
8
|
(Mirror: http://freemarker.sourceforge.net/)
|
9
|
|
10
|
===============================================================================
|
11
|
|
12
|
|
13
|
What is FreeMarker?
|
14
|
-------------------
|
15
|
|
16
|
FreeMarker is a "template engine"; a generic tool to generate text
|
17
|
output (anything from HTML to auto generated source code) based on
|
18
|
templates. It's a Java package, a class library for Java programmers.
|
19
|
It's not an application for end-users in itself, but something that
|
20
|
programmers can embed into their products. FreeMarker is designed to
|
21
|
be practical for the generation of HTML Web pages, particularly by
|
22
|
servlet-based applications following the MVC (Model View Controller)
|
23
|
pattern.
|
24
|
|
25
|
|
26
|
Licensing
|
27
|
---------
|
28
|
|
29
|
FreeMarker is licensed under a liberal BSD-style open source license.
|
30
|
|
31
|
This software is OSI Certified Open Source Software.
|
32
|
OSI Certified is a certification mark of the Open Source Initiative.
|
33
|
|
34
|
See LICENSE.txt for more details.
|
35
|
|
36
|
|
37
|
Documentation
|
38
|
-------------
|
39
|
|
40
|
The full documentation is available offline in this distribution, here:
|
41
|
documentation/index.html
|
42
|
|
43
|
Or, you can read it online: http://freemarker.org/docs/
|
44
|
(Mirror: http://freemarker.sourceforge.net/docs/)
|
45
|
|
46
|
|
47
|
Installing
|
48
|
----------
|
49
|
|
50
|
If you are using Maven, just add this dependency:
|
51
|
|
52
|
<!--
|
53
|
Attention: Be sure nothing pulls in an old dependency with groupId
|
54
|
"freemarker" (without the "org."), because then you will end up with
|
55
|
two freemarker.jar-s and unpredictable behavior on runtime!
|
56
|
-->
|
57
|
<dependency>
|
58
|
<groupId>org.freemarker</groupId>
|
59
|
<artifactId>freemarker</artifactId>
|
60
|
<version>2.3.20</version>
|
61
|
</dependency>
|
62
|
|
63
|
Otherwise simply copy freemarker.jar to a location where your Java
|
64
|
application's ClassLoader will find it. For example, if you are using
|
65
|
FreeMarker in a web application, you probably want to put
|
66
|
freemarker.jar into the WEB-INF/lib directory of your web application.
|
67
|
|
68
|
FreeMarker has no required dependencies. It has several optional
|
69
|
dependencies, but usually you don't have to deal with them, because if
|
70
|
you are using an optional feature that's certainly because your
|
71
|
application already uses the related library.
|
72
|
|
73
|
|
74
|
Building
|
75
|
--------
|
76
|
|
77
|
You need Apache Ant and Ivy be installed. (As of this writing it was
|
78
|
tested with Ant 1.8.1 and Ivy 2.3.0.)
|
79
|
|
80
|
If you need to ensure compliance with certain J2SE versions, copy
|
81
|
build.properties.sample into build.properties, and edit it
|
82
|
accordingly.
|
83
|
|
84
|
To build freemarker.jar, just issue "ant" in the project root
|
85
|
directory, and it should download all dependencies automatically and
|
86
|
build freemarker.jar.
|
87
|
|
88
|
If later you change the dependencies in ivy.xml, or otherwise want to
|
89
|
re-download some of them, it will not happen automatically anymore.
|
90
|
You have to issue "ant update-deps" for that.
|
91
|
|
92
|
For development under Eclipse, you will need IvyDE installed. You are
|
93
|
advised to use the Eclipse project files included (otherwise set up
|
94
|
IvyDE to use the "IDE" configuration and the included
|
95
|
ivysettings.xml). Note that IvyDE will not find the dependencies until
|
96
|
"ant update-deps" has run once, because it uses the mini-repository
|
97
|
built by that Ant task. If you change the dependencies in ivy.xml, you
|
98
|
will have to run "ant update-deps" again, and only after that tell
|
99
|
IvyDE to resolve the dependencies.
|
100
|
|
101
|
|
102
|
Change log
|
103
|
----------
|
104
|
|
105
|
Open documentation/index.html, and you will find the link.
|
106
|
|
107
|
Online:
|
108
|
http://freemarker.org/docs/app_versions.html
|
109
|
(Mirror: http://freemarker.sourceforge.net/docs/app_versions.html)
|