HowToBuildMarauroa
Building Marauroa is very simple if you use ant and you satisfy the dependencies.
Requirements
To compile Marauroa you will need:
- Java SDK 1.5
http://java.sun.com - Ant 1.6
http://ant.apache.org - Log4J
http://logging.apache.org/log4j/
In order to get it working with MySQL you will also need at runtime:
- MySQL Connector/J
http://www.mysql.com/downloads/api-jdbc-stable.html
Optionally:
- JUnit 1.3.8
http://junit.sourceforge.net - Jython 2.1
http://www.jython.org/download.html
Build
Build using ant
First you need ant properly installed on your system to build Marauroa.
cd /foo/bar/marauroa ant -Dlibdir=./dependencies jar
Where dependencies is a directory that contains all the libraries, you can omit it if you have configured correctly your classpath.
There are several ant tasks. You have to run it as:
ant task_name -D...
compile
Compiles Marauroa into build folder and copies all needed files to their correct place.
Buildfile: build.xml
init:
[mkdir] Created dir: D:\Desarrollo\arianne\marauroa\build
[mkdir] Created dir: D:\Desarrollo\arianne\marauroa\lib
[mkdir] Created dir: D:\Desarrollo\arianne\marauroa\javadocs
installation:
[copy] Copying 1 file to D:\Desarrollo\arianne\marauroa\build\marauroa\server
[copy] Copying 1 file to D:\Desarrollo\arianne\marauroa\build\marauroa\server
compile:
[javac] Compiling 91 source files to D:\Desarrollo\arianne\marauroa\build
BUILD SUCCESSFUL
Total time: 4 seconds
clean
Removes any trace of compiled stuff from marauroa.
D:\Desarrollo\arianne\marauroa>ant clean Buildfile: build.xml clean: [delete] Deleting directory D:\Desarrollo\arianne\marauroa\build [delete] Deleting directory D:\Desarrollo\arianne\marauroa\lib [delete] Deleting directory D:\Desarrollo\arianne\marauroa\javadocs BUILD SUCCESSFUL Total time: 0 seconds
jar
Builds a marauroa-version.jar file inside the lib folder.
Buildfile: build.xml
init:
[mkdir] Created dir: D:\Desarrollo\arianne\marauroa\build
[mkdir] Created dir: D:\Desarrollo\arianne\marauroa\lib
[mkdir] Created dir: D:\Desarrollo\arianne\marauroa\javadocs
installation:
[copy] Copying 1 file to D:\Desarrollo\arianne\marauroa\build\marauroa\server
[copy] Copying 1 file to D:\Desarrollo\arianne\marauroa\build\marauroa\server
compile:
[javac] Compiling 91 source files to D:\Desarrollo\arianne\marauroa\build
jar:
[jar] Building jar: D:\Desarrollo\arianne\marauroa\lib\marauroa-0.90.jar
[copy] Copying 1 file to D:\Desarrollo\arianne\marauroa\lib
BUILD SUCCESSFUL
Total time: 5 seconds
release
This is a convenience task used to build the released files of marauroa:
- marauroa-version-src.tar.gz that contains all source code
- marauroa-version.zip that contains the compiled version of marauroa plus the needed dependencies to make it work.
Buildfile: build.xml
init:
[mkdir] Created dir: D:\Desarrollo\arianne\marauroa\build
[mkdir] Created dir: D:\Desarrollo\arianne\marauroa\lib
[mkdir] Created dir: D:\Desarrollo\arianne\marauroa\javadocs
installation:
[copy] Copying 1 file to D:\Desarrollo\arianne\marauroa\build\marauroa\server
[copy] Copying 1 file to D:\Desarrollo\arianne\marauroa\build\marauroa\server
compile:
[javac] Compiling 91 source files to D:\Desarrollo\arianne\marauroa\build
jar:
[jar] Building jar: D:\Desarrollo\arianne\marauroa\lib\marauroa-0.90.jar
[copy] Copying 1 file to D:\Desarrollo\arianne\marauroa\lib
release_binary:
[mkdir] Created dir: D:\Desarrollo\arianne\marauroa\marauroa-0.90
[copy] Copying 1 file to D:\Desarrollo\arianne\marauroa\marauroa-0.90
[copy] Copying 1 file to D:\Desarrollo\arianne\marauroa\marauroa-0.90
[copy] Copying 1 file to D:\Desarrollo\arianne\marauroa\marauroa-0.90
[copy] Copying 1 file to D:\Desarrollo\arianne\marauroa\marauroa-0.90
[copy] Copying 1 file to D:\Desarrollo\arianne\marauroa\marauroa-0.90
[copy] Copying 1 file to D:\Desarrollo\arianne\marauroa\marauroa-0.90
[copy] Copying 1 file to D:\Desarrollo\arianne\marauroa\marauroa-0.90
[copy] Copying 1 file to D:\Desarrollo\arianne\marauroa\marauroa-0.90
[copy] Copying 1 file to D:\Desarrollo\arianne\marauroa\marauroa-0.90
[copy] Copying 1 file to D:\Desarrollo\arianne\marauroa\marauroa-0.90
[zip] Building zip: D:\Desarrollo\arianne\marauroa\marauroa-0.90.zip
[delete] Deleting directory D:\Desarrollo\arianne\marauroa\marauroa-0.90
clean:
[delete] Deleting directory D:\Desarrollo\arianne\marauroa\build
[delete] Deleting directory D:\Desarrollo\arianne\marauroa\lib
[delete] Deleting directory D:\Desarrollo\arianne\marauroa\javadocs
release_source:
[mkdir] Created dir: D:\Desarrollo\arianne\marauroa\marauroa-0.90
[copy] Copying 97 files to D:\Desarrollo\arianne\marauroa\marauroa-0.90\src
[copy] Copying 15 files to D:\Desarrollo\arianne\marauroa\marauroa-0.90\extras
[copy] Copying 1 file to D:\Desarrollo\arianne\marauroa\marauroa-0.90
[copy] Copying 1 file to D:\Desarrollo\arianne\marauroa\marauroa-0.90
[copy] Copying 1 file to D:\Desarrollo\arianne\marauroa\marauroa-0.90
[copy] Copying 1 file to D:\Desarrollo\arianne\marauroa\marauroa-0.90
[copy] Copying 1 file to D:\Desarrollo\arianne\marauroa\marauroa-0.90
[copy] Copying 1 file to D:\Desarrollo\arianne\marauroa\marauroa-0.90
[tar] Building tar: D:\Desarrollo\arianne\marauroa\marauroa-0.90-src.tar.gz
[delete] Deleting directory D:\Desarrollo\arianne\marauroa\marauroa-0.90
release:
BUILD SUCCESSFUL
Total time: 6 seconds
docs
This task generates the java docs documentation.
You better take a look at this wiki if you are looking for documentation.
What to read next
When you have successfully compiled Marauroa please read InitialStepsWithMarauroa.