How to build and publish the website:

 1. Install Apache Maven 2.0.6 and make its binary 'mvn' available on your PATH.
 2. run "mvn -U -Plocal,parent clean install site:stage -DstagingDirectory={path}".
    - the -U will force mvn to update plugins (check new installed skin when building
      the project site.
    - the -Plocal will force mvn to not lookup remote maven repositories for standard
      dependencies.
    - the -Pparent will add the local "stage" repository to the build (this is needed
      so that the site generation for the parent folder will find the default maven
      skin (this is only a workaround: the default skin is not used).
    - install is needed because the site generated in the project module will search
      for an installed skin.
 3. Test the built site in your browser from the {path} folder
 4. If everything looks OK, copy the {path} folder to the checkout of james/site/trunk/www
    folder.
 5. If you are on windows make sure endlines are LF only
    hint: running "ant" from james/site/trunk/ will do this (this will take a lot).
 6. Commit changes to SVN
 7. Review generated pages on svn.apache.org/repos/asf/james/site/trunk/www
 8. svn-up on minotaur
 9. Wait for the changes to replicate to the Apache web server or setup 140.211.11.10:80 as 
    a proxy to review the changes (described here: http://www.apache.org/dev/project-site.html) 

The logical tree of the poms is the following

james-parent (parent/pom.xml) is the main parent.
|- maven-skin (maven-skin/pom.xml) is our skin
'- james-project (pom.xml)
   '- james-server-root (server/pom.xml) is the parent pom for JAMES server.
      '- james-server-2.2.0 (server/2.2.0/pom.xml) is the static website for old 2.2.0 documentation.

The "james-parent" artifact is needed because "james-project" uses the maven-skin but they needed
to share some common data so they cannot depend on each-other but on a third "parent" pom.
