Repository: incubator-freemarker Updated Branches: refs/heads/3 3456e45ad -> 080b21e44
Improved README build section. Project: http://git-wip-us.apache.org/repos/asf/incubator-freemarker/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-freemarker/commit/080b21e4 Tree: http://git-wip-us.apache.org/repos/asf/incubator-freemarker/tree/080b21e4 Diff: http://git-wip-us.apache.org/repos/asf/incubator-freemarker/diff/080b21e4 Branch: refs/heads/3 Commit: 080b21e448563aab2936498b6fa707dfa01486f9 Parents: 3456e45 Author: ddekany <[email protected]> Authored: Mon Apr 17 14:36:16 2017 +0200 Committer: ddekany <[email protected]> Committed: Mon Apr 17 14:36:16 2017 +0200 ---------------------------------------------------------------------- README.md | 46 ++++++++++++++++++---------------------------- 1 file changed, 18 insertions(+), 28 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-freemarker/blob/080b21e4/README.md ---------------------------------------------------------------------- diff --git a/README.md b/README.md index 425b7aa..92ecf81 100644 --- a/README.md +++ b/README.md @@ -73,12 +73,12 @@ application's ClassLoader will find it. For example, if you are using FreeMarker in a web application, you probably want to put freemarker.jar into the WEB-INF/lib directory of your web application. -FreeMarker 3 has only one required dependency, org.slf4j:slf4j-api. (Of +FreeMarker 3 has only one required dependency, `org.slf4j:slf4j-api`. (Of course, it will be automatically downloaded by Maven, Gradle, and the like, and is already there in almost all projects anyway. If it wasn't there, note that adding slf4j-api is not enough, as it needs an implementation, which is not downloaded automatically by Maven, etc. The most popular is -ch.qos.logback:logback-classic. FreeMarker has several optional dependencies, +`ch.qos.logback:logback-classic`. FreeMarker has several optional dependencies, but usually you don't have to deal with them, because if you are using an optional feature that's certainly because your application already uses the related library. @@ -99,48 +99,38 @@ In the binary release, open documentation/index.html, and you will find the link. -Local setup -=========== +Building FreeMarker +=================== -First of all, if you haven't yet, download the source release, or checkout -FreeMarker from the source code repository. +If you haven't yet, download the source release, or checkout FreeMarker from +the source code repository. See repository locations here: +http://freemarker.org/sourcecode.html -You need JDK 8(!), Apache Ant and Ivy to be installed. (As of this writing -it was tested with Ant 1.8.1 and Ivy 2.3.0.). - - -Ivy Installation ----------------- - -To install Ivy (but be sure it's not already installed). Issue -`ant download-ivy` which will copy it under `~/.ant/lib`. Alternatively, you -can copy `ivy-<version>.jar` into your Ant home directory `lib` subfolder -manually. - - -Building --------- - -To build `freemarker.jar`, just issue `ant` in the project root directory, and -it should download all dependencies automatically and build freemarker.jar. +You need JDK 8, Apache Ant (tested with 1.8.1) and Ivy (tested with 2.3.0) to +be installed. To install Ivy (but be sure it's not already installed), issue +`ant download-ivy`; it will copy Ivy under `~/.ant/lib`. (Alternatively, you +can copy `ivy-<version>.jar` into the Ant home `lib` subfolder manually.) It's recommended to copy `build.properties.sample` into `build.properties`, and edit its content to fit your system. (Although basic jar building should succeeds without the build.properties file too.) - -Managing dependencies ---------------------- +To build `freemarker.jar`, just issue `ant` in the project root directory, and +it should download all dependencies automatically and build `freemarker.jar`. If later you change the dependencies in `ivy.xml`, or otherwise want to re-download some of them, it will not happen automatically anymore, and you must issue `ant update-deps`. +To test your build, issue `ant test`. + +To generate documentation, issue `ant javadoc` and `ant manualOffline`. + Eclipse and other IDE setup =========================== -Below you find the step-by-step setup for Eclipse Mars.1. If you are using a +Below you find the step-by-step setup for Eclipse Neon.1. If you are using a different version or an entierly different IDE, still read this, and try to apply it to your development environment:
