Migrated build to maven
diff --git a/.checkstyle b/.checkstyle
deleted file mode 100644
index cec0a36..0000000
--- a/.checkstyle
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<fileset-config file-format-version="1.2.0" simple-config="true">
- <local-check-config name="Project style" location="checkstyle.xml" type="project" description="">
- <additional-data name="protect-config-file" value="false"/>
- </local-check-config>
- <fileset name="all" enabled="true" check-config-name="Project style" local="true">
- <file-match-pattern match-pattern="." include-pattern="true"/>
- </fileset>
-</fileset-config>
diff --git a/.classpath b/.classpath
deleted file mode 100644
index 27b9fae..0000000
--- a/.classpath
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="src" path="src/main"/>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
- <classpathentry kind="lib" path="ide-dependencies/ant-1.9.3.jar"/>
- <classpathentry kind="lib" path="ide-dependencies/ant-launcher-1.9.3.jar"/>
- <classpathentry kind="lib" path="ide-dependencies/isorelax-20030108.jar"/>
- <classpathentry kind="lib" path="ide-dependencies/jing-20091111.jar"/>
- <classpathentry kind="lib" path="ide-dependencies/saxon-8.7.jar"/>
- <classpathentry combineaccessrules="false" kind="src" path="/FreeMarker--2.3-gae"/>
- <classpathentry kind="output" path=".bin"/>
-</classpath>
diff --git a/.project b/.project
deleted file mode 100644
index 1d35c32..0000000
--- a/.project
+++ /dev/null
@@ -1,50 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>docgen</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.wst.common.project.facet.core.builder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.jdt.core.javabuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>net.sf.eclipsecs.core.CheckstyleBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.jdt.core.javanature</nature>
- <nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
- <nature>org.eclipse.wst.common.project.facet.core.nature</nature>
- <nature>org.apache.ivyde.eclipse.ivynature</nature>
- </natures>
- <filteredResources>
- <filter>
- <id>1435508834672</id>
- <name></name>
- <type>10</type>
- <matcher>
- <id>org.eclipse.ui.ide.multiFilter</id>
- <arguments>1.0-projectRelativePath-matches-false-false-build</arguments>
- </matcher>
- </filter>
- <filter>
- <id>1435508834699</id>
- <name></name>
- <type>10</type>
- <matcher>
- <id>org.eclipse.ui.ide.multiFilter</id>
- <arguments>1.0-projectRelativePath-matches-false-false-node_modules</arguments>
- </matcher>
- </filter>
- </filteredResources>
-</projectDescription>
diff --git a/.travis.yml b/.travis.yml
index 2bb7c54..934749b 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -16,13 +16,7 @@
# under the License.
language: java
-before_install: ant download-ivy
-install: ant all
-
-before_script: ant test
-script:
- - ant -f test.xml
- - npm run-script lint
-
jdk:
- - oraclejdk8
+ - openjdk8
+script:
+ - mvn clean install
diff --git a/README.md b/README.md
index 941b3b1..2aa762f 100644
--- a/README.md
+++ b/README.md
@@ -11,8 +11,8 @@
## Building
Before building for the first time:
-* JDK 8 must be used (tried with 1.8.0_20)
-* Apache Ant must be installed (tried with 1.8.1), and use JDK 8 for building.
+* JDK 8 must be used (tried with 1.8.0_212)
+* Apache Maven must be installed (tried with 3.6.1), and use JDK 8 for building.
* [Node.js](https://nodejs.org/) must be installed (tried with v10.16.2).
* Create a `build.properties` file based on `build.properties.sample`
* Issue `npm install` from the project directory to install Node.js
@@ -32,107 +32,41 @@
To build Docgen:
```sh
-ant all
+mvn install
```
-This will create `lib/docgen.jar` and `build/api`.
-
-For documentation see `build/api/index.html`. Especially, read the
-documentation of the `Transform` class there.
-
For some examples see:
* `src/test` and `test.xml` in this project
* `src/manual` in [the `freemarker` project](https://git-wip-us.apache.org/repos/asf/incubator-freemarker.git)
* `src/main/docgen` the [`site` project](https://git-wip-us.apache.org/repos/asf/incubator-freemarker-site.git)
For editing DocBook, we are using [XXE](http://www.xmlmind.com/xmleditor/)
-with the `src/xxe-addon` installed. Unfortunatelly, the free edition of XXE
-was discontinued long ago, but if there are problems with the old free
-version, or you will do serious amount of editing, we can contact XMLmind for
-more free licenses (in exchange for showing their logo on the generated pages).
-
-## Building tricks
-
-### Update dependencies
-
-If you run into dependency errors, you may need to issue:
-
-```sh
-ant update-deps
-```
-
-### Compiling LESS and JS
-
-To compile LESS and JS separately from the regular Ant build, run:
-
-```sh
-ant gulp
-```
-
-### Trying modifications without publishing
-
-If you have modified `docgen` and want to try the new version then we don't
-recomment doing that with Ant, because it's slow and also tricky if you need
-to try it in a dependent project. Instead, see the IDE section later.
-
-But if you must do it with Ant, issue:
-
-```sh
-ant publish-override
-```
-
-This will shadow the `docgen` artifact that comes from the Ivy repo on
-[freemarker.org](http://freemarker.org). Then, in the dependent project
-issue `ant update-deps` so that it picks up your version.
-
-## Eclipse and other IDE-s
-
-### Add project dependencies
-
-You need to run this:
-
-```sh
-ant ide-dependencies
-```
-
-This will create an `ide-dependencies` directory that contains all the jars
-that you have to add to the classpath in the IDE. Note that here we assume
-that you have run the build or at least `ant update-deps` earlier.
-
-You could also use IvyDE instead, with configuration name "IDE", but as the
-dependencies hardly ever change, it's unnecessary.
+with the `src/xxe-addon` installed.
### Try your modifications
If you want to try your modifications, let's say, by regenerating the
-FreeMarker Manual, don't fiddle with Ant. Just create a Run Configuration in
-Eclipse with main class `org.freemarker.docgen.TransformCommandLine`, then on
-the "Arguments" tab enter "Program arguments" like:
+FreeMarker Manual, just create a Run Configuration in you IDE, with main class
+`org.freemarker.docgen.TransformCommandLine`, then specify these command line
+arguments:
C:\work\freemarker\git\freemarker-2.3-gae\src\manual
C:\work\freemarker\git\freemarker-2.3-gae\build\manual
offline=true
To ease comparing outputs, you can set a fixed value for the last
-modification time in the "VM arguments" box be entering something like:
+modification with a java argument like this:
- -Ddocgen.generationTime=2015-12-19T17:00Z
+ -Ddocgen.generationTime=2020-07-15T17:00Z
+
+### Compiling LESS and JS
+
+This happens automatically during build, in the `generate-resources`.
+The generated output is in `target\resources-gulp`.
## Publishing a new Docgen version
-As of this writing, the "docgen" dependency is get by `freemarker` and `site`from the Ivy repo on
-`http://freemarker.org/repos/ivy/`. Those modifying docgen should upload the fresh `docgen.jar`
-there occasonally. For that, first issue:
-
-```sh
-ant server-publish-last-build
-```
-
-This won't actually upload anything, but you will find the directory structure to upload
-in the `build/dummy-server-ivy-repo` directory. See the README file in the
-[site Git repo](https://git-wip-us.apache.org/repos/asf/incubator-freemarker-site.git)
-on how to upload content to the FreeMarker homepage!
-
+TODO
## Icon Font Attribution
diff --git a/build.properties.sample b/build.properties.sample
deleted file mode 100644
index a78d741..0000000
--- a/build.properties.sample
+++ /dev/null
@@ -1,23 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements. See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership. The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied. See the License for the
-# specific language governing permissions and limitations
-# under the License.
-
-# Should point to the rt.jar of Java 8.
-# You may comment this property out, but for releases it should be set,
-# so Java 8 incompatibilities will cause compilation-time errors.
-boot.classpath=C:/Program Files/Java/jdk1.8.0/jre/lib/rt.jar
-
-nodeJsCommand=C:/Program Files/nodejs/node.exe
diff --git a/build.xml b/build.xml
deleted file mode 100644
index b35cf46..0000000
--- a/build.xml
+++ /dev/null
@@ -1,453 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you under the Apache License, Version 2.0 (the
- "License"); you may not use this file except in compliance
- with the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing,
- software distributed under the License is distributed on an
- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- KIND, either express or implied. See the License for the
- specific language governing permissions and limitations
- under the License.
--->
-
-<project basedir="." default="jar" name="docgen"
- xmlns:ivy="antlib:org.apache.ivy.ant"
- xmlns:docgen="http://freemarker.org/docgen"
- xmlns:u="http://freemarker.org/ant-utils"
- xmlns:rat="antlib:org.apache.rat.anttasks"
->
-
- <!-- ================================================================== -->
- <!-- Properties and filtering -->
- <!-- ================================================================== -->
-
- <!-- Ivy project coordinates: -->
- <property name="moduleOrg" value="org.freemarker" />
- <property name="moduleName" value="docgen" />
- <property name="moduleBranch" value="2.0" />
-
- <!-- Will be overidden on the server: -->
- <property name="server.ivy.repo.root" value="${basedir}/build/dummy-server-ivy-repo" />
-
- <!-- Needed for travis-ci build -->
- <property name="ivy.install.version" value="2.4.0" />
- <condition property="ivy.home" value="${env.IVY_HOME}">
- <isset property="env.IVY_HOME" />
- </condition>
- <property name="ivy.home" value="${user.home}/.ant" />
- <property name="ivy.jar.dir" value="${ivy.home}/lib" />
- <property name="ivy.jar.file" value="${ivy.jar.dir}/ivy.jar" />
-
- <property file="build.properties" />
-
- <!-- When boot.classpath is missing, this is the default: -->
- <property name="boot.classpath" value="${sun.boot.class.path}" />
- <!-- Checking the correctness of the boot.classpath -->
- <available classpath="${boot.classpath}"
- classname="java.lang.Object" ignoresystemclasses="true"
- property="boot.classpath.correct"
- />
-
- <property file="src/main/org/freemarker/docgen/version.properties" />
-
- <tstamp>
- <format property="timestamp" pattern="yyyy-MM-dd HH:mm:ss z"
- timezone="GMT"
- />
- </tstamp>
- <filter token="version" value="${version}" />
- <filter token="buildTimestamp" value="${timestamp}" />
-
- <!-- ================================================================== -->
- <!-- Paths -->
- <!-- ================================================================== -->
-
- <!-- Classpath-es (dependencies) separately for each module -->
-
- <!-- Needed for purely technical resons... -->
- <path id="classpath.empty" />
-
- <!-- ================================================================== -->
- <!-- Task definitions -->
- <!-- ================================================================== -->
-
- <!--
- A customized and extended version of the standrad javac task.
- It copies non-java files (resources).
- -->
- <macrodef name="javacAndCopyResources" uri="http://freemarker.org/ant-utils">
- <attribute name="srcDir" />
- <attribute name="destDir" />
- <attribute name="classpath" default="" />
- <attribute name="classpathRef" default="classpath.empty" />
- <sequential>
- <fail unless="boot.classpath.correct"><!--
- -->The "boot.classpath" property value (${boot.classpath}) <!--
- -->seems to be an incorrect boot classpath. Please fix it in <!--
- -->the <projectDir>/build.properties file, or wherever you <!--
- -->set it.<!--
- --></fail>
- <echo level="info">Using boot classpath: ${boot.classpath}</echo>
-
- <mkdir dir="@{destDir}" />
-
- <javac
- srcdir="@{srcDir}"
- destDir="@{destDir}"
- deprecation="on"
- debug="on"
- source="1.8"
- target="1.8"
- classpath="@{classpath}"
- classpathRef="@{classpathRef}"
- bootclasspath="${boot.classpath}"
- />
-
- <copy todir="@{destDir}" filtering="true" includeEmptyDirs="false">
- <fileset dir="@{srcDir}">
- <include name="**/*.properties" />
- </fileset>
- </copy>
- <copy todir="@{destDir}" filtering="false" includeEmptyDirs="false">
- <fileset dir="@{srcDir}">
- <exclude name="**/*.java" />
- <exclude name="**/package.html" />
- <exclude name="**/overview.html" />
- <exclude name="**/*.properties" />
- </fileset>
- </copy>
- </sequential>
- </macrodef>
-
- <!--
- A customized version of the standrad javadoc task.
- -->
- <macrodef name="javadoc" uri="http://freemarker.org/ant-utils">
- <attribute name="title" />
- <attribute name="srcDir" /> <!-- "main" usually -->
- <attribute name="packageNames" default="*" />
- <attribute name="excludePackages" default="non.such.package" />
- <attribute name="destDir" />
- <attribute name="classpath" default="" />
- <attribute name="classpathRef" default="classpath.empty" />
- <sequential>
- <echo level="info"><!--
- -->Javadoc generation for: @{title}<!--
- --></echo>
-
- <u:provideEmptyDir dir="@{destDir}" />
- <javadoc
- sourcepath="@{srcDir}"
- destdir="@{destDir}"
- doctitle="@{title}"
- packagenames="@{packageNames}"
- excludepackagenames="@{excludePackages}"
- windowtitle="@{title}"
- overview="@{srcDir}/overview.html"
- version="false"
- author="false"
- charset="UTF-8"
- docencoding="UTF-8"
- locale="en_US"
- use="yes"
- failonerror="yes"
- classpath="@{classpath}"
- classpathRef="@{classpathRef}"
- />
- </sequential>
- </macrodef>
-
- <macrodef name="provideEmptyDir" uri="http://freemarker.org/ant-utils">
- <attribute name="dir" />
- <sequential>
- <mkdir dir="@{dir}" />
- <delete includeEmptyDirs="true">
- <fileset dir="@{dir}" includes="**/*" defaultexcludes="no" />
- </delete>
- </sequential>
- </macrodef>
-
-
- <!-- ================================================================== -->
- <!-- Targets -->
- <!-- ================================================================== -->
-
- <target name="init">
- <condition property="deps.available">
- <and>
- <available file=".ivy" />
- <available file="node_modules" />
- </and>
- </condition>
- <antcall target="_autoget-deps" />
- </target>
-
- <target name="classes" depends="init, gulp"
- description='Compile + resource copy'
- >
- <u:provideEmptyDir dir="build/classes" />
- <ivy:cachepath pathid="ivy.dep" />
- <u:javacAndCopyResources
- srcDir="src/main"
- destDir="build/classes"
- classpathref="ivy.dep"
- />
- </target>
-
- <target name="jar" depends="classes"
- description='Build "build/docgen.jar".'
- >
- <mkdir dir="build/artifacts" />
- <jar jarfile="build/artifacts/docgen.jar">
- <fileset dir="build/classes" />
- <manifest>
- <attribute
- name="Main-Class"
- value="org.freemarker.docgen.TransformCommandLine"
- />
- <attribute
- name="Class-Path"
- value="freemarker.jar jing.jar"
- />
- <attribute name="Specification-Version" value="${version}" />
- <attribute name="Implementation-Version" value="${version}" />
- </manifest>
- </jar>
-
- <mkdir dir="build/lib" />
- <ivy:retrieve pattern="build/lib/[artifact].[ext]" />
- <copy file="build/artifacts/docgen.jar" todir="build/lib" />
- </target>
-
- <target name="javadoc" depends="init"
- description="Build the JavaDoc."
- >
- <ivy:cachepath pathid="ivy.dep" />
- <u:javadoc
- title="Docgen API"
- srcdir="src/main"
- destDir="build/api"
- classpathref="ivy.dep"
- />
- </target>
-
- <target name="all" depends="jar, javadoc"
- description='Build "docgen.jar" + javadocs'
- />
-
- <target name="clean" description='Delete output files.'>
- <u:provideEmptyDir dir="build" />
- <delete file="build/docgen.jar" />
- </target>
-
- <target name="test" depends="jar">
- <echo>***************************************</echo>
- <echo>* Now issue this in the command-line: *</echo>
- <echo>* ant -f test.xml *</echo>
- <echo>***************************************</echo>
- </target>
-
- <target name="archive"
- description='Archives project into the "archive" directory.'>
- <mkdir dir="archive" />
- <tstamp>
- <format property="tstamp" pattern="yyyyMMdd-HHmm" />
- </tstamp>
- <delete file="archive/docgen-${tstamp}.tar" />
- <delete file="archive/docgen-${tstamp}.tar.bz2" />
- <tar tarfile="archive/docgen-${tstamp}.tar"
- basedir="."
- longfile="gnu"
- excludes="build/** .build/** **/*.class **/*.jar archive/** lib/**"
- />
- <bzip2 src="archive/docgen-${tstamp}.tar"
- zipfile="archive/docgen-${tstamp}.tar.bz2"
- />
- <delete file="archive/docgen-${tstamp}.tar" />
- </target>
-
- <target name="artifacts" depends="jar"
- description="Creates the artifacts for Ivy."
- />
-
-
- <!-- ================================================================== -->
- <!-- Dependency management (keep it exactly identical for all projects) -->
- <!-- ================================================================== -->
-
- <!-- Needed for travis-ci build -->
- <target name="download-ivy" unless="offline">
-
- <mkdir dir="${ivy.jar.dir}"/>
- <!-- download Ivy from web site so that it can be used even without
- any special installation -->
- <get src="http://repo2.maven.org/maven2/org/apache/ivy/ivy/${ivy.install.version}/ivy-${ivy.install.version}.jar"
- dest="${ivy.jar.file}"
- usetimestamp="true"/>
- </target>
-
-
- <target name="_autoget-deps" unless="deps.available">
- <antcall target="update-deps" />
- <antcall target="node-deps" />
- </target>
-
- <target name="update-deps"
- description="Gets the latest version of the dependencies from the Web"
- >
- <echo>Getting dependencies...</echo>
- <echo>-------------------------------------------------------</echo>
- <ivy:settings id="remote" url="https://freemarker.apache.org/repos/ivy/ivysettings-remote.xml" />
- <!-- Build an own repository that will serve us even offline: -->
- <ivy:retrieve settingsRef="remote" sync="true"
- ivypattern=".ivy.part/repo/[organisation]/[module]/ivy-[revision].xml"
- pattern=".ivy.part/repo/[organisation]/[module]/[artifact]-[revision].[ext]"
- />
- <echo>-------------------------------------------------------</echo>
- <echo>*** Successfully acquired dependencies from the Web ***</echo>
- <echo>Eclipse users: Now right-click on ivy.xml and Resolve! </echo>
- <echo>-------------------------------------------------------</echo>
- <!-- Only now that we got all the dependencies will we delete anything. -->
- <!-- Thus a net or repo outage doesn't left us without the dependencies. -->
-
- <!-- Save the resolution cache from the soon coming <delete>: -->
- <move todir=".ivy.part/update-deps-reso-cache">
- <fileset dir=".ivy/update-deps-reso-cache" />
- </move>
- <!-- Drop all the old stuff: -->
- <delete dir=".ivy" />
- <!-- And use the new stuff instead: -->
- <move todir=".ivy">
- <fileset dir=".ivy.part" />
- </move>
- </target>
-
- <!-- Do NOT call this from 'clean'; offline guys would stuck after that. -->
- <target name="clean-deps"
- description="Deletes all dependencies"
- >
- <delete dir=".ivy" />
- <delete dir="node_modules" />
- </target>
-
- <!-- See README.md about installing node.js and Gulp! -->
- <target name="node-deps">
- <exec executable="npm" dir="${basedir}" failonerror="true" osfamily="unix">
- <arg line="install" />
- </exec>
- <exec executable="cmd" dir="${basedir}" failonerror="true" osfamily="windows">
- <arg line="/c npm install" />
- </exec>
- </target>
-
- <target name="gulp">
- <exec executable="node" failonerror="true" dir="${basedir}">
- <arg line="node_modules/gulp/bin/gulp.js"/>
- </exec>
-
- <!--
- <exec executable="${nodeJsCommand}" failonerror="true" dir="${basedir}">
- <arg value="node_modules/gulp/bin/gulp.js"/>
- </exec>
- -->
- </target>
-
- <target name="publish-override" depends="artifacts"
- description="Ivy-publishes THIS project locally as an override"
- >
- <ivy:resolve />
- <ivy:publish
- pubrevision="${moduleBranch}-branch-head"
- overwrite="true" forcedeliver="true"
- resolver="freemarker-devel-local-override"
- >
- <artifacts pattern="build/artifacts/[artifact].[ext]" />
- </ivy:publish>
- <echo>-------------------------------------------------------</echo>
- <echo>*** Don't forget to `ant unpublish-override` later! ***</echo>
- </target>
-
- <target name="unpublish-override"
- description="Undoes publish-override (made in THIS project)"
- >
- <delete dir="${user.home}/.ivy2/freemarker-devel-local-override/${moduleOrg}/${moduleName}" />
- <delete dir="${user.home}/.ivy2/freemarker-devel-local-override-cache/${moduleOrg}/${moduleName}" />
- </target>
-
- <target name="unpublish-override-all"
- description="Undoes publish-override-s made in ALL projects"
- >
- <delete dir="${user.home}/.ivy2/freemarker-devel-local-override" />
- <delete dir="${user.home}/.ivy2/freemarker-devel-local-override-cache" />
- </target>
-
- <target name="uninstall"
- description="Deletes external files created by FreeMarker developement"
- >
- <delete dir="${user.home}/.ivy2/freemarker-devel-cache" />
- <delete dir="${user.home}/.ivy2/freemarker-devel-local-override" />
- <delete dir="${user.home}/.ivy2/freemarker-devel-local-override-cache " />
- </target>
-
- <target name="report-deps"
- description="Creates a HTML document that summarizes the dependencies."
- >
- <mkdir dir="build/deps-report" />
- <ivy:resolve />
- <ivy:report todir="build/deps-report" />
- </target>
-
- <target name="ide-dependencies" description="If your IDE has no Ivy support, this generates ide-lib/*.jar for it">
- <mkdir dir="ide-dependencies" />
- <delete includeEmptyDirs="true">
- <fileset dir="ide-dependencies">
- <include name="*/**" />
- </fileset>
- </delete>
- <ivy:retrieve pattern="ide-dependencies/[artifact]-[revision].[ext]" />
- </target>
-
- <!--
- This meant to be called on the Continuous Integration server, so the
- integration builds appear in the freemarker.org public Ivy repository.
- The artifacts must be already built.
- -->
- <target name="server-publish-last-build"
- description="(For the Continuous Integration server only)"
- >
- <delete dir="build/dummy-server-ivy-repo" />
- <ivy:resolve />
- <ivy:publish
- pubrevision="${moduleBranch}-branch-head"
- overwrite="true" forcedeliver="true"
- resolver="server-publishing-target"
- >
- <artifacts pattern="build/artifacts/[artifact].[ext]" />
- </ivy:publish>
- </target>
-
- <target name="rat" description="Generates Apache RAT report">
- <ivy:cachepath conf="rat" pathid="ivy.dep" />
- <taskdef
- uri="antlib:org.apache.rat.anttasks"
- resource="org/apache/rat/anttasks/antlib.xml"
- classpathref="ivy.dep"
- />
-
- <rat:report reportFile="build/rat-report.txt">
- <fileset dir="" excludesfile="rat-excludes" />
- </rat:report>
- <echo level="info"><!--
- -->Rat reports were written into build/rat-report.txt<!--
- --></echo>
- </target>
-
-</project>
diff --git a/gulpfile.js b/gulpfile.js
index 59c43dd..c31c731 100644
--- a/gulpfile.js
+++ b/gulpfile.js
@@ -31,8 +31,8 @@
var concat = require('gulp-concat');
var headerfooter = require('gulp-headerfooter');
-var BASE_DIR = path.join(__dirname, 'src', 'main', 'org', 'freemarker', 'docgen');
-var OUT_DIR = path.join(BASE_DIR, 'statics');
+var BASE_DIR = path.join(__dirname, 'src', 'main', 'resources-gulp', 'org', 'freemarker', 'docgen');
+var OUT_DIR = path.join(__dirname, 'target', 'resources-gulp', 'org', 'freemarker', 'docgen', 'statics');
var copyrightHeader = fs.readFileSync(path.join(__dirname, 'gulp-output-copyright-header.txt'));
var doNotEditHeader = "/*\n"
diff --git a/pom.xml b/pom.xml
new file mode 100644
index 0000000..e32e061
--- /dev/null
+++ b/pom.xml
@@ -0,0 +1,143 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache</groupId>
+ <artifactId>apache</artifactId>
+ <version>23</version>
+ </parent>
+
+ <groupId>org.apache.freemarker.docgen</groupId>
+ <artifactId>freemarker-docgen</artifactId>
+ <version>0.0.1-SNAPSHOT</version>
+ <name>Apache FreeMarker Docgen</name>
+ <description>Internally used tool to generate HTML from an XDocBook document.</description>
+
+ <properties>
+ <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+ <maven.compiler.source>1.8</maven.compiler.source>
+ <maven.compiler.target>1.8</maven.compiler.target>
+ </properties>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.freemarker</groupId>
+ <artifactId>freemarker</artifactId>
+ <version>2.3.30</version>
+ </dependency>
+ <dependency>
+ <groupId>com.thaiopensource</groupId>
+ <artifactId>jing</artifactId>
+ <version>20091111</version>
+ <exclusions>
+ <exclusion>
+ <groupId>xerces</groupId>
+ <artifactId>xercesImpl</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>xml-apis</groupId>
+ <artifactId>xml-apis</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <!-- Needed on Java 9+ -->
+ <groupId>xalan</groupId>
+ <artifactId>xalan</artifactId>
+ <version>2.7.2</version>
+ <exclusions>
+ <exclusion>
+ <groupId>xml-apis</groupId>
+ <artifactId>xml-apis</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.ant</groupId>
+ <artifactId>ant</artifactId>
+ <version>1.9.3</version>
+ <scope>provided</scope>
+ </dependency>
+ </dependencies>
+
+ <build>
+ <resources>
+ <resource>
+ <directory>src/main/resources</directory>
+ </resource>
+ <resource>
+ <directory>${project.build.directory}/resources-gulp</directory>
+ </resource>
+ </resources>
+
+ <plugins>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>exec-maven-plugin</artifactId>
+ <version>3.0.0</version>
+ <executions>
+ <execution>
+ <id>gulp</id>
+ <goals>
+ <goal>exec</goal>
+ </goals>
+ <phase>generate-resources</phase>
+ <configuration>
+ <executable>node</executable>
+ <arguments>
+ <argument>node_modules/gulp/bin/gulp.js</argument>
+ </arguments>
+ <useMavenLogger>true</useMavenLogger>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-jar-plugin</artifactId>
+ <configuration>
+ <archive>
+ <manifest>
+ <mainClass>org.freemarker.docgen.TransformCommandLine</mainClass>
+ </manifest>
+ </archive>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.rat</groupId>
+ <artifactId>apache-rat-plugin</artifactId>
+ <version>0.13</version>
+ <executions>
+ <execution>
+ <phase>verify</phase>
+ <goals>
+ <goal>check</goal>
+ </goals>
+ </execution>
+ </executions>
+ <configuration>
+ <excludesFile>rat-excludes</excludesFile>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+</project>
diff --git a/rat-excludes b/rat-excludes
index 3e66a63..e3b6765 100644
--- a/rat-excludes
+++ b/rat-excludes
@@ -19,19 +19,19 @@
# --------
# Files covered in the LICENSE file:
-src/main/org/freemarker/docgen/schema/docbook.rng
-src/main/org/freemarker/docgen/statics/fonts/icomoon.svg
-src/main/org/freemarker/docgen/statics/fonts/icomoon.eot
-src/main/org/freemarker/docgen/statics/fonts/icomoon.ttf
-src/main/org/freemarker/docgen/statics/fonts/icomoon.woff
+src/main/resources/org/freemarker/docgen/schema/docbook.rng
+src/main/resources/org/freemarker/docgen/statics/fonts/icomoon.svg
+src/main/resources/org/freemarker/docgen/statics/fonts/icomoon.eot
+src/main/resources/org/freemarker/docgen/statics/fonts/icomoon.ttf
+src/main/resources/org/freemarker/docgen/statics/fonts/icomoon.woff
# Files without license header that were created in the FreeMarker project:
package.json
package-lock.json
-src/main/org/freemarker/docgen/statics/fonts/selection.json
-src/main/org/freemarker/docgen/statics/img/patterned-bg.png
-src/main/org/freemarker/docgen/statics/img/xxe.gif
-src/main/org/freemarker/docgen/statics/img/xxe.png
+src/main/resources/org/freemarker/docgen/statics/fonts/selection.json
+src/main/resources/org/freemarker/docgen/statics/img/patterned-bg.png
+src/main/resources/org/freemarker/docgen/statics/img/xxe.gif
+src/main/resources/org/freemarker/docgen/statics/img/xxe.png
src/test/1/bat.jpg
src/test/1/figures/model2sketch.png
src/test/1/figures/overview.png
diff --git a/src/main/org/freemarker/docgen/BugException.java b/src/main/java/org/freemarker/docgen/BugException.java
similarity index 100%
rename from src/main/org/freemarker/docgen/BugException.java
rename to src/main/java/org/freemarker/docgen/BugException.java
diff --git a/src/main/org/freemarker/docgen/CJSONInterpreter.java b/src/main/java/org/freemarker/docgen/CJSONInterpreter.java
similarity index 100%
rename from src/main/org/freemarker/docgen/CJSONInterpreter.java
rename to src/main/java/org/freemarker/docgen/CJSONInterpreter.java
diff --git a/src/main/org/freemarker/docgen/CollectingErrorHandler.java b/src/main/java/org/freemarker/docgen/CollectingErrorHandler.java
similarity index 100%
rename from src/main/org/freemarker/docgen/CollectingErrorHandler.java
rename to src/main/java/org/freemarker/docgen/CollectingErrorHandler.java
diff --git a/src/main/org/freemarker/docgen/CommandLineExitException.java b/src/main/java/org/freemarker/docgen/CommandLineExitException.java
similarity index 100%
rename from src/main/org/freemarker/docgen/CommandLineExitException.java
rename to src/main/java/org/freemarker/docgen/CommandLineExitException.java
diff --git a/src/main/org/freemarker/docgen/DocBook5Constants.java b/src/main/java/org/freemarker/docgen/DocBook5Constants.java
similarity index 100%
rename from src/main/org/freemarker/docgen/DocBook5Constants.java
rename to src/main/java/org/freemarker/docgen/DocBook5Constants.java
diff --git a/src/main/org/freemarker/docgen/DocgenException.java b/src/main/java/org/freemarker/docgen/DocgenException.java
similarity index 100%
rename from src/main/org/freemarker/docgen/DocgenException.java
rename to src/main/java/org/freemarker/docgen/DocgenException.java
diff --git a/src/main/org/freemarker/docgen/DocgenLogger.java b/src/main/java/org/freemarker/docgen/DocgenLogger.java
similarity index 100%
rename from src/main/org/freemarker/docgen/DocgenLogger.java
rename to src/main/java/org/freemarker/docgen/DocgenLogger.java
diff --git a/src/main/org/freemarker/docgen/DocgenRestrictionsValidator.java b/src/main/java/org/freemarker/docgen/DocgenRestrictionsValidator.java
similarity index 100%
rename from src/main/org/freemarker/docgen/DocgenRestrictionsValidator.java
rename to src/main/java/org/freemarker/docgen/DocgenRestrictionsValidator.java
diff --git a/src/main/org/freemarker/docgen/DocgenValidationOptions.java b/src/main/java/org/freemarker/docgen/DocgenValidationOptions.java
similarity index 100%
rename from src/main/org/freemarker/docgen/DocgenValidationOptions.java
rename to src/main/java/org/freemarker/docgen/DocgenValidationOptions.java
diff --git a/src/main/org/freemarker/docgen/FileUtil.java b/src/main/java/org/freemarker/docgen/FileUtil.java
similarity index 100%
rename from src/main/org/freemarker/docgen/FileUtil.java
rename to src/main/java/org/freemarker/docgen/FileUtil.java
diff --git a/src/main/org/freemarker/docgen/Logo.java b/src/main/java/org/freemarker/docgen/Logo.java
similarity index 100%
rename from src/main/org/freemarker/docgen/Logo.java
rename to src/main/java/org/freemarker/docgen/Logo.java
diff --git a/src/main/org/freemarker/docgen/MessageStreamActivityMonitor.java b/src/main/java/org/freemarker/docgen/MessageStreamActivityMonitor.java
similarity index 100%
rename from src/main/org/freemarker/docgen/MessageStreamActivityMonitor.java
rename to src/main/java/org/freemarker/docgen/MessageStreamActivityMonitor.java
diff --git a/src/main/org/freemarker/docgen/RelaxNGValidator.java b/src/main/java/org/freemarker/docgen/RelaxNGValidator.java
similarity index 100%
rename from src/main/org/freemarker/docgen/RelaxNGValidator.java
rename to src/main/java/org/freemarker/docgen/RelaxNGValidator.java
diff --git a/src/main/org/freemarker/docgen/TableSimplifier.java b/src/main/java/org/freemarker/docgen/TableSimplifier.java
similarity index 100%
rename from src/main/org/freemarker/docgen/TableSimplifier.java
rename to src/main/java/org/freemarker/docgen/TableSimplifier.java
diff --git a/src/main/org/freemarker/docgen/TextUtil.java b/src/main/java/org/freemarker/docgen/TextUtil.java
similarity index 100%
rename from src/main/org/freemarker/docgen/TextUtil.java
rename to src/main/java/org/freemarker/docgen/TextUtil.java
diff --git a/src/main/org/freemarker/docgen/Transform.java b/src/main/java/org/freemarker/docgen/Transform.java
similarity index 100%
rename from src/main/org/freemarker/docgen/Transform.java
rename to src/main/java/org/freemarker/docgen/Transform.java
diff --git a/src/main/org/freemarker/docgen/TransformAntTask.java b/src/main/java/org/freemarker/docgen/TransformAntTask.java
similarity index 100%
rename from src/main/org/freemarker/docgen/TransformAntTask.java
rename to src/main/java/org/freemarker/docgen/TransformAntTask.java
diff --git a/src/main/org/freemarker/docgen/TransformCommandLine.java b/src/main/java/org/freemarker/docgen/TransformCommandLine.java
similarity index 100%
rename from src/main/org/freemarker/docgen/TransformCommandLine.java
rename to src/main/java/org/freemarker/docgen/TransformCommandLine.java
diff --git a/src/main/org/freemarker/docgen/ValidatingDOMBuilder.java b/src/main/java/org/freemarker/docgen/ValidatingDOMBuilder.java
similarity index 100%
rename from src/main/org/freemarker/docgen/ValidatingDOMBuilder.java
rename to src/main/java/org/freemarker/docgen/ValidatingDOMBuilder.java
diff --git a/src/main/org/freemarker/docgen/ValidatingDOMBuilderWithLocations.java b/src/main/java/org/freemarker/docgen/ValidatingDOMBuilderWithLocations.java
similarity index 100%
rename from src/main/org/freemarker/docgen/ValidatingDOMBuilderWithLocations.java
rename to src/main/java/org/freemarker/docgen/ValidatingDOMBuilderWithLocations.java
diff --git a/src/main/org/freemarker/docgen/XMLUtil.java b/src/main/java/org/freemarker/docgen/XMLUtil.java
similarity index 100%
rename from src/main/org/freemarker/docgen/XMLUtil.java
rename to src/main/java/org/freemarker/docgen/XMLUtil.java
diff --git a/src/main/overview.html b/src/main/java/overview.html
similarity index 100%
rename from src/main/overview.html
rename to src/main/java/overview.html
diff --git a/src/main/org/freemarker/docgen/js/make-toc.js b/src/main/resources-gulp/org/freemarker/docgen/js/make-toc.js
similarity index 100%
rename from src/main/org/freemarker/docgen/js/make-toc.js
rename to src/main/resources-gulp/org/freemarker/docgen/js/make-toc.js
diff --git a/src/main/org/freemarker/docgen/js/page-menu.js b/src/main/resources-gulp/org/freemarker/docgen/js/page-menu.js
similarity index 100%
rename from src/main/org/freemarker/docgen/js/page-menu.js
rename to src/main/resources-gulp/org/freemarker/docgen/js/page-menu.js
diff --git a/src/main/org/freemarker/docgen/js/search.js b/src/main/resources-gulp/org/freemarker/docgen/js/search.js
similarity index 100%
rename from src/main/org/freemarker/docgen/js/search.js
rename to src/main/resources-gulp/org/freemarker/docgen/js/search.js
diff --git a/src/main/org/freemarker/docgen/js/use-strict.js b/src/main/resources-gulp/org/freemarker/docgen/js/use-strict.js
similarity index 100%
rename from src/main/org/freemarker/docgen/js/use-strict.js
rename to src/main/resources-gulp/org/freemarker/docgen/js/use-strict.js
diff --git a/src/main/org/freemarker/docgen/less/lib/base.less b/src/main/resources-gulp/org/freemarker/docgen/less/lib/base.less
similarity index 100%
rename from src/main/org/freemarker/docgen/less/lib/base.less
rename to src/main/resources-gulp/org/freemarker/docgen/less/lib/base.less
diff --git a/src/main/org/freemarker/docgen/less/lib/components/bookmarks.less b/src/main/resources-gulp/org/freemarker/docgen/less/lib/components/bookmarks.less
similarity index 100%
rename from src/main/org/freemarker/docgen/less/lib/components/bookmarks.less
rename to src/main/resources-gulp/org/freemarker/docgen/less/lib/components/bookmarks.less
diff --git a/src/main/org/freemarker/docgen/less/lib/components/breadcrumb.less b/src/main/resources-gulp/org/freemarker/docgen/less/lib/components/breadcrumb.less
similarity index 100%
rename from src/main/org/freemarker/docgen/less/lib/components/breadcrumb.less
rename to src/main/resources-gulp/org/freemarker/docgen/less/lib/components/breadcrumb.less
diff --git a/src/main/org/freemarker/docgen/less/lib/components/callout.less b/src/main/resources-gulp/org/freemarker/docgen/less/lib/components/callout.less
similarity index 100%
rename from src/main/org/freemarker/docgen/less/lib/components/callout.less
rename to src/main/resources-gulp/org/freemarker/docgen/less/lib/components/callout.less
diff --git a/src/main/org/freemarker/docgen/less/lib/components/code-block.less b/src/main/resources-gulp/org/freemarker/docgen/less/lib/components/code-block.less
similarity index 100%
rename from src/main/org/freemarker/docgen/less/lib/components/code-block.less
rename to src/main/resources-gulp/org/freemarker/docgen/less/lib/components/code-block.less
diff --git a/src/main/org/freemarker/docgen/less/lib/components/logo.less b/src/main/resources-gulp/org/freemarker/docgen/less/lib/components/logo.less
similarity index 100%
rename from src/main/org/freemarker/docgen/less/lib/components/logo.less
rename to src/main/resources-gulp/org/freemarker/docgen/less/lib/components/logo.less
diff --git a/src/main/org/freemarker/docgen/less/lib/components/marked-text.less b/src/main/resources-gulp/org/freemarker/docgen/less/lib/components/marked-text.less
similarity index 100%
rename from src/main/org/freemarker/docgen/less/lib/components/marked-text.less
rename to src/main/resources-gulp/org/freemarker/docgen/less/lib/components/marked-text.less
diff --git a/src/main/org/freemarker/docgen/less/lib/components/page-menu.less b/src/main/resources-gulp/org/freemarker/docgen/less/lib/components/page-menu.less
similarity index 100%
rename from src/main/org/freemarker/docgen/less/lib/components/page-menu.less
rename to src/main/resources-gulp/org/freemarker/docgen/less/lib/components/page-menu.less
diff --git a/src/main/org/freemarker/docgen/less/lib/components/pagers.less b/src/main/resources-gulp/org/freemarker/docgen/less/lib/components/pagers.less
similarity index 100%
rename from src/main/org/freemarker/docgen/less/lib/components/pagers.less
rename to src/main/resources-gulp/org/freemarker/docgen/less/lib/components/pagers.less
diff --git a/src/main/org/freemarker/docgen/less/lib/components/search-form.less b/src/main/resources-gulp/org/freemarker/docgen/less/lib/components/search-form.less
similarity index 100%
rename from src/main/org/freemarker/docgen/less/lib/components/search-form.less
rename to src/main/resources-gulp/org/freemarker/docgen/less/lib/components/search-form.less
diff --git a/src/main/org/freemarker/docgen/less/lib/components/search-results.less b/src/main/resources-gulp/org/freemarker/docgen/less/lib/components/search-results.less
similarity index 100%
rename from src/main/org/freemarker/docgen/less/lib/components/search-results.less
rename to src/main/resources-gulp/org/freemarker/docgen/less/lib/components/search-results.less
diff --git a/src/main/org/freemarker/docgen/less/lib/components/secondary-tabs.less b/src/main/resources-gulp/org/freemarker/docgen/less/lib/components/secondary-tabs.less
similarity index 100%
rename from src/main/org/freemarker/docgen/less/lib/components/secondary-tabs.less
rename to src/main/resources-gulp/org/freemarker/docgen/less/lib/components/secondary-tabs.less
diff --git a/src/main/org/freemarker/docgen/less/lib/components/social-icons.less b/src/main/resources-gulp/org/freemarker/docgen/less/lib/components/social-icons.less
similarity index 100%
rename from src/main/org/freemarker/docgen/less/lib/components/social-icons.less
rename to src/main/resources-gulp/org/freemarker/docgen/less/lib/components/social-icons.less
diff --git a/src/main/org/freemarker/docgen/less/lib/components/table-of-contents.less b/src/main/resources-gulp/org/freemarker/docgen/less/lib/components/table-of-contents.less
similarity index 100%
rename from src/main/org/freemarker/docgen/less/lib/components/table-of-contents.less
rename to src/main/resources-gulp/org/freemarker/docgen/less/lib/components/table-of-contents.less
diff --git a/src/main/org/freemarker/docgen/less/lib/components/table.less b/src/main/resources-gulp/org/freemarker/docgen/less/lib/components/table.less
similarity index 100%
rename from src/main/org/freemarker/docgen/less/lib/components/table.less
rename to src/main/resources-gulp/org/freemarker/docgen/less/lib/components/table.less
diff --git a/src/main/org/freemarker/docgen/less/lib/components/tabs.less b/src/main/resources-gulp/org/freemarker/docgen/less/lib/components/tabs.less
similarity index 100%
rename from src/main/org/freemarker/docgen/less/lib/components/tabs.less
rename to src/main/resources-gulp/org/freemarker/docgen/less/lib/components/tabs.less
diff --git a/src/main/org/freemarker/docgen/less/lib/icons.less b/src/main/resources-gulp/org/freemarker/docgen/less/lib/icons.less
similarity index 100%
rename from src/main/org/freemarker/docgen/less/lib/icons.less
rename to src/main/resources-gulp/org/freemarker/docgen/less/lib/icons.less
diff --git a/src/main/org/freemarker/docgen/less/lib/layout/content.less b/src/main/resources-gulp/org/freemarker/docgen/less/lib/layout/content.less
similarity index 100%
rename from src/main/org/freemarker/docgen/less/lib/layout/content.less
rename to src/main/resources-gulp/org/freemarker/docgen/less/lib/layout/content.less
diff --git a/src/main/org/freemarker/docgen/less/lib/layout/footer.less b/src/main/resources-gulp/org/freemarker/docgen/less/lib/layout/footer.less
similarity index 100%
rename from src/main/org/freemarker/docgen/less/lib/layout/footer.less
rename to src/main/resources-gulp/org/freemarker/docgen/less/lib/layout/footer.less
diff --git a/src/main/org/freemarker/docgen/less/lib/layout/header.less b/src/main/resources-gulp/org/freemarker/docgen/less/lib/layout/header.less
similarity index 100%
rename from src/main/org/freemarker/docgen/less/lib/layout/header.less
rename to src/main/resources-gulp/org/freemarker/docgen/less/lib/layout/header.less
diff --git a/src/main/org/freemarker/docgen/less/lib/mixins.less b/src/main/resources-gulp/org/freemarker/docgen/less/lib/mixins.less
similarity index 100%
rename from src/main/org/freemarker/docgen/less/lib/mixins.less
rename to src/main/resources-gulp/org/freemarker/docgen/less/lib/mixins.less
diff --git a/src/main/org/freemarker/docgen/less/lib/utilities.less b/src/main/resources-gulp/org/freemarker/docgen/less/lib/utilities.less
similarity index 100%
rename from src/main/org/freemarker/docgen/less/lib/utilities.less
rename to src/main/resources-gulp/org/freemarker/docgen/less/lib/utilities.less
diff --git a/src/main/org/freemarker/docgen/less/lib/variables.less b/src/main/resources-gulp/org/freemarker/docgen/less/lib/variables.less
similarity index 100%
rename from src/main/org/freemarker/docgen/less/lib/variables.less
rename to src/main/resources-gulp/org/freemarker/docgen/less/lib/variables.less
diff --git a/src/main/org/freemarker/docgen/less/styles.less b/src/main/resources-gulp/org/freemarker/docgen/less/styles.less
similarity index 100%
rename from src/main/org/freemarker/docgen/less/styles.less
rename to src/main/resources-gulp/org/freemarker/docgen/less/styles.less
diff --git a/src/main/org/freemarker/docgen/antlib.properties b/src/main/resources/org/freemarker/docgen/antlib.properties
similarity index 100%
rename from src/main/org/freemarker/docgen/antlib.properties
rename to src/main/resources/org/freemarker/docgen/antlib.properties
diff --git a/src/main/org/freemarker/docgen/schema/docbook.rng b/src/main/resources/org/freemarker/docgen/schema/docbook.rng
similarity index 100%
rename from src/main/org/freemarker/docgen/schema/docbook.rng
rename to src/main/resources/org/freemarker/docgen/schema/docbook.rng
diff --git a/src/main/org/freemarker/docgen/statics/fonts/NOTICE b/src/main/resources/org/freemarker/docgen/statics/fonts/NOTICE
similarity index 100%
rename from src/main/org/freemarker/docgen/statics/fonts/NOTICE
rename to src/main/resources/org/freemarker/docgen/statics/fonts/NOTICE
diff --git a/src/main/org/freemarker/docgen/statics/fonts/icomoon.eot b/src/main/resources/org/freemarker/docgen/statics/fonts/icomoon.eot
similarity index 100%
rename from src/main/org/freemarker/docgen/statics/fonts/icomoon.eot
rename to src/main/resources/org/freemarker/docgen/statics/fonts/icomoon.eot
Binary files differ
diff --git a/src/main/org/freemarker/docgen/statics/fonts/icomoon.svg b/src/main/resources/org/freemarker/docgen/statics/fonts/icomoon.svg
similarity index 100%
rename from src/main/org/freemarker/docgen/statics/fonts/icomoon.svg
rename to src/main/resources/org/freemarker/docgen/statics/fonts/icomoon.svg
diff --git a/src/main/org/freemarker/docgen/statics/fonts/icomoon.ttf b/src/main/resources/org/freemarker/docgen/statics/fonts/icomoon.ttf
similarity index 100%
rename from src/main/org/freemarker/docgen/statics/fonts/icomoon.ttf
rename to src/main/resources/org/freemarker/docgen/statics/fonts/icomoon.ttf
Binary files differ
diff --git a/src/main/org/freemarker/docgen/statics/fonts/icomoon.woff b/src/main/resources/org/freemarker/docgen/statics/fonts/icomoon.woff
similarity index 100%
rename from src/main/org/freemarker/docgen/statics/fonts/icomoon.woff
rename to src/main/resources/org/freemarker/docgen/statics/fonts/icomoon.woff
Binary files differ
diff --git a/src/main/org/freemarker/docgen/statics/fonts/selection.json b/src/main/resources/org/freemarker/docgen/statics/fonts/selection.json
similarity index 100%
rename from src/main/org/freemarker/docgen/statics/fonts/selection.json
rename to src/main/resources/org/freemarker/docgen/statics/fonts/selection.json
diff --git a/src/main/org/freemarker/docgen/statics/img/patterned-bg.png b/src/main/resources/org/freemarker/docgen/statics/img/patterned-bg.png
similarity index 100%
rename from src/main/org/freemarker/docgen/statics/img/patterned-bg.png
rename to src/main/resources/org/freemarker/docgen/statics/img/patterned-bg.png
Binary files differ
diff --git a/src/main/org/freemarker/docgen/statics/img/xxe.gif b/src/main/resources/org/freemarker/docgen/statics/img/xxe.gif
similarity index 100%
rename from src/main/org/freemarker/docgen/statics/img/xxe.gif
rename to src/main/resources/org/freemarker/docgen/statics/img/xxe.gif
Binary files differ
diff --git a/src/main/org/freemarker/docgen/statics/img/xxe.png b/src/main/resources/org/freemarker/docgen/statics/img/xxe.png
similarity index 100%
rename from src/main/org/freemarker/docgen/statics/img/xxe.png
rename to src/main/resources/org/freemarker/docgen/statics/img/xxe.png
Binary files differ
diff --git a/src/main/org/freemarker/docgen/templates/customizations.ftlh b/src/main/resources/org/freemarker/docgen/templates/customizations.ftlh
similarity index 100%
rename from src/main/org/freemarker/docgen/templates/customizations.ftlh
rename to src/main/resources/org/freemarker/docgen/templates/customizations.ftlh
diff --git a/src/main/org/freemarker/docgen/templates/eclipse-toc.ftlx b/src/main/resources/org/freemarker/docgen/templates/eclipse-toc.ftlx
similarity index 100%
rename from src/main/org/freemarker/docgen/templates/eclipse-toc.ftlx
rename to src/main/resources/org/freemarker/docgen/templates/eclipse-toc.ftlx
diff --git a/src/main/org/freemarker/docgen/templates/footer.ftlh b/src/main/resources/org/freemarker/docgen/templates/footer.ftlh
similarity index 100%
rename from src/main/org/freemarker/docgen/templates/footer.ftlh
rename to src/main/resources/org/freemarker/docgen/templates/footer.ftlh
diff --git a/src/main/org/freemarker/docgen/templates/google.ftlh b/src/main/resources/org/freemarker/docgen/templates/google.ftlh
similarity index 100%
rename from src/main/org/freemarker/docgen/templates/google.ftlh
rename to src/main/resources/org/freemarker/docgen/templates/google.ftlh
diff --git a/src/main/org/freemarker/docgen/templates/header.ftlh b/src/main/resources/org/freemarker/docgen/templates/header.ftlh
similarity index 100%
rename from src/main/org/freemarker/docgen/templates/header.ftlh
rename to src/main/resources/org/freemarker/docgen/templates/header.ftlh
diff --git a/src/main/org/freemarker/docgen/templates/navigation.ftlh b/src/main/resources/org/freemarker/docgen/templates/navigation.ftlh
similarity index 100%
rename from src/main/org/freemarker/docgen/templates/navigation.ftlh
rename to src/main/resources/org/freemarker/docgen/templates/navigation.ftlh
diff --git a/src/main/org/freemarker/docgen/templates/node-handlers.ftlh b/src/main/resources/org/freemarker/docgen/templates/node-handlers.ftlh
similarity index 100%
rename from src/main/org/freemarker/docgen/templates/node-handlers.ftlh
rename to src/main/resources/org/freemarker/docgen/templates/node-handlers.ftlh
diff --git a/src/main/org/freemarker/docgen/templates/page.ftlh b/src/main/resources/org/freemarker/docgen/templates/page.ftlh
similarity index 100%
rename from src/main/org/freemarker/docgen/templates/page.ftlh
rename to src/main/resources/org/freemarker/docgen/templates/page.ftlh
diff --git a/src/main/org/freemarker/docgen/templates/sitemap.ftlx b/src/main/resources/org/freemarker/docgen/templates/sitemap.ftlx
similarity index 100%
rename from src/main/org/freemarker/docgen/templates/sitemap.ftlx
rename to src/main/resources/org/freemarker/docgen/templates/sitemap.ftlx
diff --git a/src/main/org/freemarker/docgen/templates/toc-json.ftl b/src/main/resources/org/freemarker/docgen/templates/toc-json.ftl
similarity index 100%
rename from src/main/org/freemarker/docgen/templates/toc-json.ftl
rename to src/main/resources/org/freemarker/docgen/templates/toc-json.ftl
diff --git a/src/main/org/freemarker/docgen/templates/util.ftl b/src/main/resources/org/freemarker/docgen/templates/util.ftl
similarity index 100%
rename from src/main/org/freemarker/docgen/templates/util.ftl
rename to src/main/resources/org/freemarker/docgen/templates/util.ftl
diff --git a/src/main/org/freemarker/docgen/version.properties b/src/main/resources/org/freemarker/docgen/version.properties
similarity index 95%
rename from src/main/org/freemarker/docgen/version.properties
rename to src/main/resources/org/freemarker/docgen/version.properties
index ea53be7..4312e9f 100644
--- a/src/main/org/freemarker/docgen/version.properties
+++ b/src/main/resources/org/freemarker/docgen/version.properties
@@ -15,5 +15,6 @@
# specific language governing permissions and limitations
# under the License.
-version=0.0.0
+version=0.1.1
+mavenVersion=0.1.1
buildInfo=@buildTimestamp@