The build tool used for Moria is Maven. Instructions on how to install and use Maven can be found at Maven's official web site.
Moria has been divided into several modules. Each such module is configured as a separate Maven project. Common Maven goals as java:compile, test, site:generate and jar can therefore be run in each separate module.
To minimize the effort needed to maintain the build configuration and reduce the risks of inconsistencies between the modules Moria make use of Maven's built in support for property and POM inheritance. Read more about this in the Maven user guide.
Moria is dependent on a number of java packages, which again may depend on other packages. To manage the handling of the many different jar files, Moria makes use of the fact the POM is a xml document and defines all dependencies as entities in an external document called dependencies.ent. Details surrounding this setup can be found in the Maven Wiki.
Most of Moria's dependencies are found in Mavens default repository at iBiblio. Other are found in our own repository at Sourceforge.
Some of the modules and the main project has spesial goals defined their respective maven.xml files. These goals are documented where they are defined, but it can be mentioned that the root project file contains goals for building, deployment and site generation of the complete project. These goals use the reactor directly and not the multiproject plugin (this is primarily due to leagacy reasons). All locally defined goals use a project: prefix.