| 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. |