You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by hb...@apache.org on 2018/01/03 17:41:14 UTC

[maven-site-plugin] 01/30: Move version 2 from trunk to a branch.

This is an automated email from the ASF dual-hosted git repository.

hboutemy pushed a commit to annotated tag maven-site-plugin-2.4
in repository https://gitbox.apache.org/repos/asf/maven-site-plugin.git

commit 81de3a39efc50fa1212d4584f098d0dfcf5d5a28
Author: Dennis Lundberg <de...@apache.org>
AuthorDate: Sun Jul 24 09:41:12 2011 +0000

    Move version 2 from trunk to a branch.
    
    git-svn-id: https://svn.apache.org/repos/asf/maven/plugins/branches/maven-site-plugin-2.x@1150307 13f79535-47bb-0310-9956-ffa450edef68
---
 pom.xml                                            | 486 +++++++++++++
 src/it/MSITE-159/invoker.properties                |   1 +
 src/it/MSITE-159/pom.xml                           |  50 ++
 src/it/MSITE-159/src/site/apt/index.apt            |  18 +
 src/it/MSITE-159/src/site/site.xml                 |  19 +
 src/it/MSITE-159/verify.bsh                        |  59 ++
 src/it/MSITE-265/invoker.properties                |   1 +
 src/it/MSITE-265/pom.xml                           |  69 ++
 src/it/MSITE-265/src/main/java/foo/App.java        |  32 +
 src/it/MSITE-265/src/site/apt/download.apt.vm      |  36 +
 src/it/MSITE-265/src/site/site.xml                 |  44 ++
 src/it/MSITE-265/src/site/xdoc/index.xml           |  28 +
 .../src/site/xdoc/releases/release1.6.3.xml        |  28 +
 .../src/site/xdoc/releases/release1.6.xml          |  28 +
 src/it/MSITE-265/verify.bsh                        |  98 +++
 src/it/MSITE-304/child/pom.xml                     |  33 +
 src/it/MSITE-304/invoker.properties                |   2 +
 src/it/MSITE-304/pom.xml                           |  69 ++
 src/it/MSITE-304/src/site/site.xml                 |  30 +
 src/it/MSITE-304/verify.bsh                        |  77 +++
 src/it/MSITE-312/child/pom.xml                     |  20 +
 src/it/MSITE-312/child/src/site/site.xml           |  17 +
 src/it/MSITE-312/invoker.properties                |   1 +
 src/it/MSITE-312/pom.xml                           |  49 ++
 src/it/MSITE-312/src/site/site.xml                 |  17 +
 src/it/MSITE-312/verify.bsh                        |  94 +++
 src/it/MSITE-322/invoker.properties                |   2 +
 src/it/MSITE-322/mymodule/pom.xml                  |  14 +
 .../mymodule/src/main/java/test/Test.java          |   6 +
 .../MSITE-322/mymodule/src/site/fr/xdoc/index.xml  |  16 +
 src/it/MSITE-322/mymodule/src/site/site.xml        |  15 +
 src/it/MSITE-322/mymodule/src/site/site_fr.xml     |  15 +
 .../MSITE-322/mymodule/src/site/xdoc/contact.xml   |  23 +
 src/it/MSITE-322/mymodule/src/site/xdoc/index.xml  |  16 +
 src/it/MSITE-322/pom.xml                           |  54 ++
 src/it/MSITE-322/src/site/fr/xdoc/index.xml        |  16 +
 .../src/site/resources/css/maven-base.css          | 143 ++++
 .../src/site/resources/css/maven-theme.css         | 214 ++++++
 src/it/MSITE-322/src/site/resources/css/print.css  |   7 +
 src/it/MSITE-322/src/site/resources/css/site.css   |   5 +
 src/it/MSITE-322/src/site/site.xml                 |  19 +
 src/it/MSITE-322/src/site/site_fr.xml              |  19 +
 src/it/MSITE-322/src/site/xdoc/index.xml           |  16 +
 src/it/MSITE-322/verify.bsh                        | 125 ++++
 src/it/MSITE-354/goals.txt                         |   1 +
 src/it/MSITE-354/pom.xml                           |  70 ++
 src/it/MSITE-354/verify.bsh                        |  54 ++
 src/it/MSITE-456/child/pom.xml                     |  36 +
 src/it/MSITE-456/invoker.properties                |   1 +
 src/it/MSITE-456/pom.xml                           |  64 ++
 src/it/MSITE-456/verify.bsh                        |  93 +++
 src/it/MSITE-458/first/pom.xml                     |  22 +
 src/it/MSITE-458/invoker.properties                |   3 +
 src/it/MSITE-458/pom.xml                           |  47 ++
 src/it/MSITE-458/second/pom.xml                    |  13 +
 src/it/MSITE-458/src/site/apt/index.apt            |  32 +
 src/it/MSITE-458/src/site/site.xml                 |   5 +
 src/it/MSITE-458/verify.bsh                        |  64 ++
 src/it/MSITE-497/apps/app/pom.xml                  |  26 +
 .../app/src/main/java/org/apache/maven/App.java    |  12 +
 .../src/test/java/org/apache/maven/AppTest.java    |  38 ++
 src/it/MSITE-497/apps/pom.xml                      |  17 +
 src/it/MSITE-497/invoker.properties                |   1 +
 src/it/MSITE-497/pom.xml                           |  76 +++
 src/it/MSITE-497/src/site/apt/index.apt            |  18 +
 src/it/MSITE-497/src/site/site.xml                 |  14 +
 src/it/MSITE-504/invoker.properties                |   1 +
 src/it/MSITE-504/maven-plugin-consumer/pom.xml     |  24 +
 src/it/MSITE-504/maven-plugin/pom.xml              |  23 +
 .../src/main/java/msite504/mavenplugin/MyMojo.java |  48 ++
 src/it/MSITE-504/pom.xml                           |  35 +
 src/it/MSITE-506/invoker.properties                |   1 +
 src/it/MSITE-506/pom.xml                           |  43 ++
 .../MSITE-506/src/main/java/mavenjavadoc/App.java  |  13 +
 .../src/test/java/mavenjavadoc/AppTest.java        |  38 ++
 src/it/MSITE-507/invoker.properties                |   1 +
 src/it/MSITE-507/pom.xml                           | 750 +++++++++++++++++++++
 .../MSITE-507/src/main/java/my/group/id/App.java   |  10 +
 .../src/test/java/my/group/id/AppTest.java         |  18 +
 src/it/MSITE-512/invoker.properties                |   1 +
 src/it/MSITE-512/parent-usage-test/pom.xml         |  67 ++
 .../parent-usage-test/src/main/java/App.java       |  12 +
 .../main/java/org/apache/maven/titi/AppFoo.java    |  12 +
 .../src/main/java/org/apache/maven/toto/App.java   |  12 +
 .../src/main/javadoc/stylesheet.css                |  32 +
 .../parent-usage-test/src/test/java/AppTest.java   |  36 +
 src/it/MSITE-512/pom.xml                           |  26 +
 src/it/MSITE-512/verify.groovy                     |  28 +
 src/it/MSITE-537/invoker.properties                |   2 +
 src/it/MSITE-537/parent/pom.xml                    |  49 ++
 src/it/MSITE-537/pom.xml                           |  16 +
 src/it/MSITE-537/verify.bsh                        |  49 ++
 src/it/MSITE-548/invoker.properties                |   2 +
 src/it/MSITE-548/module1/pom.xml                   |  16 +
 src/it/MSITE-548/module2/pom.xml                   |  16 +
 src/it/MSITE-548/pom.xml                           |  50 ++
 src/it/MSITE-548/root/pom.xml                      |  53 ++
 src/it/MSITE-548/verify.bsh                        |  69 ++
 src/it/MSITE-550/pom.xml                           |  30 +
 src/it/MSITE-550/src/site/apt/index.apt            |  17 +
 src/it/MSITE-550/src/site/site.vm                  |   2 +
 src/it/MSITE-550/src/site/site.xml                 |  14 +
 src/it/MSITE-550/verify.bsh                        |  51 ++
 src/it/MSITE-566/invoker.properties                |   1 +
 src/it/MSITE-566/pom.xml                           |  30 +
 src/it/MSITE-566/src/site/apt/index.apt            |  18 +
 src/it/MSITE-566/src/site/site.xml                 |  11 +
 src/it/MSITE-566/verify.bsh                        |  82 +++
 src/it/emma-plugin-it/a/pom.xml                    |  15 +
 .../a/src/main/java/hello/Hello.java               |  10 +
 .../a/src/test/java/hello/HelloTest.java           |  13 +
 src/it/emma-plugin-it/b/pom.xml                    |  15 +
 .../b/src/main/java/byebye/ByeBye.java             |  10 +
 .../b/src/test/java/byebye/ByeByeTest.java         |  14 +
 src/it/emma-plugin-it/invoker.properties           |   1 +
 src/it/emma-plugin-it/pom.xml                      |  63 ++
 src/it/emma-plugin-it/verify.bsh                   |  29 +
 src/it/empty-report-set/pom.xml                    |  58 ++
 src/it/empty-report-set/verify.bsh                 |  10 +
 src/it/full-reporting/invoker.properties           |   2 +
 src/it/full-reporting/pom.xml                      |  82 +++
 .../org/apache/maven/plugins/site/its/App.java     |  32 +
 .../org/apache/maven/plugins/site/its/AppTest.java |  44 ++
 src/it/full-reporting/verify.groovy                |  45 ++
 src/it/inheritedMenus/README                       |   5 +
 src/it/inheritedMenus/invoker.properties           |   2 +
 .../parentAsRef/childAsRef/grandChildAsRef/pom.xml |  17 +
 .../childAsRef/grandChildAsRef/src/site/site.xml   |  15 +
 .../inheritedMenus/parentAsRef/childAsRef/pom.xml  |  21 +
 .../parentAsRef/childAsRef/src/site/site.xml       |  15 +
 src/it/inheritedMenus/parentAsRef/pom.xml          |  54 ++
 .../inheritedMenus/parentAsRef/src/site/site.xml   |  27 +
 .../childNotAsRef/grandChildNotAsRef/pom.xml       |  17 +
 .../grandChildNotAsRef/src/site/site.xml           |  15 +
 .../parentNotAsRef/childNotAsRef/pom.xml           |  21 +
 .../parentNotAsRef/childNotAsRef/src/site/site.xml |  15 +
 src/it/inheritedMenus/parentNotAsRef/pom.xml       |  54 ++
 .../parentNotAsRef/src/site/site.xml               |  27 +
 src/it/inheritedMenus/pom.xml                      |  33 +
 src/it/inheritedMenus/verify.bsh                   | 202 ++++++
 src/it/inheritedReports/child/pom.xml              |  35 +
 src/it/inheritedReports/invoker.properties         |   4 +
 src/it/inheritedReports/pom.xml                    |  46 ++
 src/it/inheritedReports/verify.bsh                 |  61 ++
 src/it/interpolation/invoker.properties            |   2 +
 src/it/interpolation/parent/pom.xml                |  45 ++
 src/it/interpolation/pom.xml                       |  67 ++
 src/it/interpolation/src/site/site.xml             |  32 +
 src/it/interpolation/src/site/xdoc/index.xml       |  28 +
 src/it/interpolation/verify.bsh                    |  58 ++
 src/it/it-plugin-test/pom.xml                      |  37 +
 .../java/org/apache/maven/plugins/it/MyMojo.java   |  81 +++
 src/it/no-version/invoker.properties               |   1 +
 src/it/no-version/pom.xml                          |  47 ++
 .../org/apache/maven/plugins/site/its/App.java     |  13 +
 .../org/apache/maven/plugins/site/its/AppTest.java |  44 ++
 src/it/no-version/verify.groovy                    |  31 +
 .../report-changes-generation/invoker.properties   |   1 +
 src/it/report-changes-generation/pom.xml           | 112 +++
 .../src/changes/changes.xml                        |  65 ++
 src/it/report-changes-generation/verify.bsh        |  81 +++
 src/it/settings.xml                                |  55 ++
 src/it/site-attach-descriptor/goals.txt            |   1 +
 src/it/site-attach-descriptor/invoker.properties   |   1 +
 src/it/site-attach-descriptor/pom.xml              |  86 +++
 src/it/site-attach-descriptor/src/site/site.xml    |  43 ++
 src/it/site-attach-descriptor/src/site/site_sv.xml |  43 ++
 .../site-attach-descriptor/src/site/xdoc/index.xml |  28 +
 src/it/site-attach-descriptor/verify.bsh           |  63 ++
 src/it/site-deploy/goals.txt                       |   1 +
 src/it/site-deploy/pom.xml                         |  70 ++
 src/it/site-deploy/src/main/java/foo/App.java      |  32 +
 src/it/site-deploy/src/site/apt/download.apt.vm    |  36 +
 src/it/site-deploy/src/site/site.xml               |  44 ++
 src/it/site-deploy/src/site/xdoc/index.xml         |  28 +
 .../src/site/xdoc/releases/release1.6.3.xml        |  28 +
 .../src/site/xdoc/releases/release1.6.xml          |  28 +
 src/it/site-deploy/verify.bsh                      |  81 +++
 src/it/site-inheritance/aggregator/pom.xml         |  56 ++
 src/it/site-inheritance/child_and_module/pom.xml   |  26 +
 .../child_and_module/src/site/apt/index.apt        |  11 +
 .../child_and_module/src/site/site.xml             |  25 +
 src/it/site-inheritance/inheriting_child/pom.xml   |  21 +
 .../inheriting_child/src/site/apt/index.apt        |  11 +
 .../inheriting_child/src/site/site.xml             |  25 +
 src/it/site-inheritance/invoker.properties         |   3 +
 src/it/site-inheritance/module/pom.xml             |  55 ++
 .../site-inheritance/module/src/site/apt/index.apt |  11 +
 src/it/site-inheritance/module/src/site/site.xml   |  26 +
 src/it/site-inheritance/parent/pom.xml             |  50 ++
 .../site-inheritance/parent/src/site/apt/index.apt |  11 +
 src/it/site-inheritance/parent/src/site/site.xml   |  25 +
 src/it/site-inheritance/pom.xml                    |  54 ++
 src/it/site-inheritance/sub_module/pom.xml         |  15 +
 .../sub_module/src/site/apt/index.apt              |  11 +
 .../site-inheritance/sub_module/src/site/site.xml  |  25 +
 src/it/site-inheritance/verify.bsh                 | 569 ++++++++++++++++
 src/it/site-jar/goals.txt                          |   1 +
 src/it/site-jar/pom.xml                            |  70 ++
 src/it/site-jar/src/main/java/foo/App.java         |  32 +
 src/it/site-jar/src/site/apt/download.apt.vm       |  36 +
 src/it/site-jar/src/site/site.xml                  |  44 ++
 src/it/site-jar/src/site/xdoc/index.xml            |  28 +
 .../src/site/xdoc/releases/release1.6.3.xml        |  28 +
 .../site-jar/src/site/xdoc/releases/release1.6.xml |  28 +
 src/it/site-jar/verify.bsh                         |  76 +++
 src/it/site-skip/invoker.properties                |   2 +
 src/it/site-skip/pom.xml                           |  38 ++
 src/it/site-skip/site/pom.xml                      |  15 +
 src/it/site-skip/skip-site-deploy/pom.xml          |  27 +
 src/it/site-skip/skip-site/pom.xml                 |  28 +
 src/it/site-skip/verify.bsh                        | 159 +++++
 src/it/site-stage-deploy/invoker.properties        |   2 +
 .../plugins/maven-rocks-plugin/pom.xml             |  18 +
 src/it/site-stage-deploy/plugins/plugins/pom.xml   |  20 +
 src/it/site-stage-deploy/plugins/pom.xml           |  31 +
 src/it/site-stage-deploy/pom.xml                   |  51 ++
 src/it/site-stage-deploy/pom/pom.xml               |  32 +
 src/it/site-stage-deploy/verify.bsh                | 115 ++++
 src/it/surefire-report/invoker.properties          |   1 +
 src/it/surefire-report/pom.xml                     |  42 ++
 .../org/apache/maven/plugins/site/its/App.java     |  13 +
 .../org/apache/maven/plugins/site/its/AppTest.java |  44 ++
 src/it/surefire-report/verify.groovy               |  31 +
 src/it/top-parent-no-site/invoker.properties       |   2 +
 src/it/top-parent-no-site/module1/pom.xml          |  16 +
 src/it/top-parent-no-site/pom.xml                  |  31 +
 src/it/top-parent-no-site/root/pom.xml             |  39 ++
 src/it/top-parent-no-site/verify.bsh               |  54 ++
 .../maven/plugins/site/AbstractDeployMojo.java     | 679 +++++++++++++++++++
 .../maven/plugins/site/AbstractSiteMojo.java       | 177 +++++
 .../plugins/site/AbstractSiteRenderingMojo.java    | 480 +++++++++++++
 .../site/CategorySummaryDocumentRenderer.java      | 194 ++++++
 .../maven/plugins/site/EffectiveSiteMojo.java      | 211 ++++++
 .../maven/plugins/site/ReportDocumentRenderer.java | 324 +++++++++
 .../apache/maven/plugins/site/SiteDeployMojo.java  |  69 ++
 .../site/SiteDescriptorArtifactMetadata.java       | 125 ++++
 .../plugins/site/SiteDescriptorAttachMojo.java     | 110 +++
 .../org/apache/maven/plugins/site/SiteJarMojo.java | 146 ++++
 .../org/apache/maven/plugins/site/SiteMap.java     | 190 ++++++
 .../org/apache/maven/plugins/site/SiteMojo.java    | 209 ++++++
 .../org/apache/maven/plugins/site/SiteRunMojo.java | 239 +++++++
 .../maven/plugins/site/SiteStageDeployMojo.java    | 144 ++++
 .../apache/maven/plugins/site/SiteStageMojo.java   | 110 +++
 .../apache/maven/plugins/site/wagon/PathUtils.java | 500 ++++++++++++++
 .../plugins/site/wagon/repository/Repository.java  | 314 +++++++++
 .../maven/plugins/site/webapp/DoxiaBean.java       |  84 +++
 .../maven/plugins/site/webapp/DoxiaFilter.java     | 205 ++++++
 src/main/resources/site-plugin.properties          |  30 +
 src/main/resources/site-plugin_ca.properties       |  26 +
 src/main/resources/site-plugin_cs.properties       |  26 +
 src/main/resources/site-plugin_da.properties       |  26 +
 src/main/resources/site-plugin_de.properties       |  30 +
 src/main/resources/site-plugin_en.properties       |  23 +
 src/main/resources/site-plugin_es.properties       |  26 +
 src/main/resources/site-plugin_fr.properties       |  26 +
 src/main/resources/site-plugin_gl.properties       |  26 +
 src/main/resources/site-plugin_hu.properties       |  26 +
 src/main/resources/site-plugin_it.properties       |  26 +
 src/main/resources/site-plugin_ja.properties       |  26 +
 src/main/resources/site-plugin_ko.properties       |  26 +
 src/main/resources/site-plugin_lt.properties       |  26 +
 src/main/resources/site-plugin_nl.properties       |  26 +
 src/main/resources/site-plugin_no.properties       |  26 +
 src/main/resources/site-plugin_pl.properties       |  26 +
 src/main/resources/site-plugin_pt.properties       |  26 +
 src/main/resources/site-plugin_pt_BR.properties    |  26 +
 src/main/resources/site-plugin_ru.properties       |  29 +
 src/main/resources/site-plugin_sk.properties       |  26 +
 src/main/resources/site-plugin_sv.properties       |  30 +
 src/main/resources/site-plugin_tr.properties       |  26 +
 src/main/resources/site-plugin_zh_CN.properties    |  26 +
 src/main/resources/site-plugin_zh_TW.properties    |  27 +
 src/main/resources/webapp/web.xml                  |  34 +
 src/site/apt/examples/configuring-reports.apt      |  94 +++
 src/site/apt/examples/creating-content.apt.vm      | 221 ++++++
 src/site/apt/examples/creatingskins.apt            |  85 +++
 src/site/apt/examples/moduleexcludes.apt.vm        |  76 +++
 src/site/apt/examples/multimodule.apt              |  96 +++
 .../examples/site-deploy-to-sourceforge.net.apt    | 233 +++++++
 src/site/apt/examples/sitedescriptor.apt           | 252 +++++++
 src/site/apt/examples/siterun.apt.vm               |  59 ++
 src/site/apt/examples/templatefile.apt.vm          |  98 +++
 src/site/apt/index.apt                             | 106 +++
 src/site/apt/migrate.apt                           |  81 +++
 src/site/apt/usage.apt                             | 175 +++++
 src/site/fml/faq.fml                               | 187 +++++
 src/site/site.xml                                  |  49 ++
 src/site/xdoc/i18n.xml                             | 413 ++++++++++++
 .../maven/plugins/site/SiteDeployMojoTest.java     | 123 ++++
 .../apache/maven/plugins/site/SiteMojoTest.java    |  66 ++
 .../plugins/site/stubs/SiteMavenProjectStub.java   |  69 ++
 .../framework11/framework111/framework1111/pom.xml |  39 ++
 .../java/org/apache/maven/plugin/site/App.java     |  13 +
 .../framework111/framework1111/src/site/site.xml   |  40 ++
 .../java/org/apache/maven/plugin/site/AppTest.java |  38 ++
 .../framework1/framework11/framework111/pom.xml    |  43 ++
 .../framework1/framework11/framework112/pom.xml    |  39 ++
 .../java/org/apache/maven/plugin/site/App.java     |  13 +
 .../framework11/framework112/src/site/site.xml     |  40 ++
 .../java/org/apache/maven/plugin/site/AppTest.java |  38 ++
 .../framework1/framework11/pom.xml                 |  53 ++
 .../framework1/framework12/pom.xml                 |  39 ++
 .../java/org/apache/maven/plugin/site/App.java     |  13 +
 .../framework1/framework12/src/site/site.xml       |  40 ++
 .../java/org/apache/maven/plugin/site/AppTest.java |  38 ++
 .../framework1/framework13/pom.xml                 |  39 ++
 .../java/org/apache/maven/plugin/site/App.java     |  13 +
 .../framework1/framework13/src/site/site.xml       |  40 ++
 .../java/org/apache/maven/plugin/site/AppTest.java |  38 ++
 .../framework1411/framework14111/pom.xml           |  39 ++
 .../java/org/apache/maven/plugin/site/App.java     |  13 +
 .../framework1411/framework14111/src/site/site.xml |  40 ++
 .../java/org/apache/maven/plugin/site/AppTest.java |  38 ++
 .../framework1411/framework14112/pom.xml           |  39 ++
 .../java/org/apache/maven/plugin/site/App.java     |  13 +
 .../framework1411/framework14112/src/site/site.xml |  40 ++
 .../java/org/apache/maven/plugin/site/AppTest.java |  38 ++
 .../framework14/framework141/framework1411/pom.xml |  44 ++
 .../framework14/framework141/framework1412/pom.xml |  39 ++
 .../java/org/apache/maven/plugin/site/App.java     |  13 +
 .../framework141/framework1412/src/site/site.xml   |  40 ++
 .../java/org/apache/maven/plugin/site/AppTest.java |  38 ++
 .../framework1/framework14/framework141/pom.xml    |  44 ++
 .../framework1/framework14/pom.xml                 |  43 ++
 .../site-plugin-multiproject/framework1/pom.xml    |  53 ++
 .../framework2/framework21/pom.xml                 |  39 ++
 .../java/org/apache/maven/plugin/site/App.java     |  13 +
 .../framework2/framework21/src/site/site.xml       |  40 ++
 .../java/org/apache/maven/plugin/site/AppTest.java |  38 ++
 .../framework2211/framework22111/pom.xml           |  39 ++
 .../java/org/apache/maven/plugin/site/App.java     |  13 +
 .../framework2211/framework22111/src/site/site.xml |  40 ++
 .../java/org/apache/maven/plugin/site/AppTest.java |  38 ++
 .../framework22/framework221/framework2211/pom.xml |  43 ++
 .../framework22/framework221/framework2212/pom.xml |  39 ++
 .../java/org/apache/maven/plugin/site/App.java     |  13 +
 .../framework221/framework2212/src/site/site.xml   |  40 ++
 .../java/org/apache/maven/plugin/site/AppTest.java |  38 ++
 .../framework2/framework22/framework221/pom.xml    |  44 ++
 .../framework2221/framework22211/pom.xml           |  39 ++
 .../java/org/apache/maven/plugin/site/App.java     |  13 +
 .../framework2221/framework22211/src/site/site.xml |  40 ++
 .../java/org/apache/maven/plugin/site/AppTest.java |  38 ++
 .../framework22/framework222/framework2221/pom.xml |  43 ++
 .../framework22/framework222/framework2222/pom.xml |  39 ++
 .../java/org/apache/maven/plugin/site/App.java     |  13 +
 .../framework222/framework2222/src/site/site.xml   |  40 ++
 .../java/org/apache/maven/plugin/site/AppTest.java |  38 ++
 .../framework2/framework22/framework222/pom.xml    |  44 ++
 .../framework2/framework22/pom.xml                 |  44 ++
 .../framework2/framework23/pom.xml                 |  39 ++
 .../java/org/apache/maven/plugin/site/App.java     |  13 +
 .../framework2/framework23/src/site/site.xml       |  40 ++
 .../java/org/apache/maven/plugin/site/AppTest.java |  38 ++
 .../site-plugin-multiproject/framework2/pom.xml    |  52 ++
 src/test/projects/site-plugin-multiproject/pom.xml |  80 +++
 .../projects/site-plugin-test-encoding/pom.xml     |  23 +
 .../site-plugin-test-encoding/src/site/apt/apt.apt | Bin 0 -> 796 bytes
 .../site-plugin-test-encoding/src/site/site.xml    | Bin 0 -> 3656 bytes
 .../src/site/xdoc/xdoc-different.xml               |  42 ++
 .../src/site/xdoc/xdoc-same.xml                    | Bin 0 -> 2782 bytes
 src/test/projects/site-plugin-test1/pom.xml        |  61 ++
 .../org/apache/maven/plugin/site/test1/App.java    |  13 +
 .../site-plugin-test1/src/site/apt/test.apt        |  12 +
 .../projects/site-plugin-test1/src/site/site.xml   |  41 ++
 .../apache/maven/plugin/site/test1/AppTest.java    |  38 ++
 src/test/projects/site-plugin-test10/maven-site.vm | 269 ++++++++
 src/test/projects/site-plugin-test10/pom.xml       |  67 ++
 .../projects/site-plugin-test11/framework/pom.xml  |  66 ++
 .../framework/source/mysite/apt/index.apt          |  12 +
 .../framework/source/mysite/apt/test1.apt          |  12 +
 .../framework/source/mysite/site.xml               |  44 ++
 .../org/apache/maven/plugin/site/test11/App.java   |  13 +
 .../apache/maven/plugin/site/test11/AppTest.java   |  38 ++
 .../projects/site-plugin-test11/framework2/pom.xml |  66 ++
 .../framework2/source/mysite/apt/index.apt         |  12 +
 .../framework2/source/mysite/apt/test2.apt         |  12 +
 .../framework2/source/mysite/site.xml              |  44 ++
 .../org/apache/maven/plugin/site/test11/App.java   |  13 +
 .../apache/maven/plugin/site/test11/AppTest.java   |  38 ++
 src/test/projects/site-plugin-test11/pom.xml       |  68 ++
 .../site-plugin-test11/source/mysite/apt/test.apt  |  12 +
 .../site-plugin-test11/source/mysite/site.xml      |  44 ++
 .../org/apache/maven/plugin/site/test11/App.java   |  13 +
 .../apache/maven/plugin/site/test11/AppTest.java   |  38 ++
 src/test/projects/site-plugin-test12/pom.xml       |   9 +
 .../projects/site-plugin-test12/src/site/site.xml  |  19 +
 src/test/projects/site-plugin-test13/pom.xml       |  11 +
 src/test/projects/site-plugin-test2/pom.xml        |  53 ++
 .../org/apache/maven/plugin/site/test2/App.java    |  13 +
 .../site-plugin-test2/src/site/apt/test.apt        |  12 +
 .../projects/site-plugin-test2/src/site/site.xml   |  41 ++
 .../apache/maven/plugin/site/test2/AppTest.java    |  38 ++
 src/test/projects/site-plugin-test3/pom.xml        |  53 ++
 .../org/apache/maven/plugin/site/test3/App.java    |  13 +
 .../site-plugin-test3/src/site/apt/test.apt        |  12 +
 .../projects/site-plugin-test3/src/site/site.xml   |  41 ++
 .../apache/maven/plugin/site/test3/AppTest.java    |  38 ++
 src/test/projects/site-plugin-test4/pom.xml        |  53 ++
 .../org/apache/maven/plugin/site/test4/App.java    |  13 +
 .../site-plugin-test4/src/site/apt/index.apt       |  12 +
 .../site-plugin-test4/src/site/apt/test.apt        |  12 +
 .../projects/site-plugin-test4/src/site/site.xml   |  41 ++
 .../apache/maven/plugin/site/test4/AppTest.java    |  38 ++
 src/test/projects/site-plugin-test5/pom.xml        |  53 ++
 .../org/apache/maven/plugin/site/test5/App.java    |  13 +
 .../site-plugin-test5/src/site/apt/index.apt       |  12 +
 .../site-plugin-test5/src/site/apt/test.apt        |  12 +
 .../projects/site-plugin-test5/src/site/site.xml   |  41 ++
 .../site-plugin-test5/src/site/xdoc/index.xml      |  35 +
 .../apache/maven/plugin/site/test5/AppTest.java    |  38 ++
 src/test/projects/site-plugin-test6/pom.xml        |  53 ++
 .../org/apache/maven/plugin/site/test6/App.java    |  13 +
 .../site-plugin-test6/src/site/apt/alpha/index.apt |  12 +
 .../src/site/apt/alpha/one/index.apt               |  12 +
 .../src/site/apt/alpha/two/index.apt               |  12 +
 .../site-plugin-test6/src/site/apt/beta/index.apt  |  12 +
 .../src/site/apt/beta/one/index.apt                |  12 +
 .../src/site/apt/beta/two/index.apt                |  12 +
 .../site-plugin-test6/src/site/apt/gamma/index.apt |  12 +
 .../src/site/apt/gamma/one/index.apt               |  12 +
 .../src/site/apt/gamma/one/one/index.apt           |  12 +
 .../src/site/apt/gamma/one/two/index.apt           |  12 +
 .../src/site/apt/gamma/two/index.apt               |  12 +
 .../src/site/apt/gamma/two/one/index.apt           |  12 +
 .../src/site/apt/gamma/two/two/index.apt           |  12 +
 .../site-plugin-test6/src/site/apt/item.apt        |  12 +
 .../site-plugin-test6/src/site/apt/theta/index.apt |  12 +
 .../src/site/apt/theta/one/index.apt               |  12 +
 .../src/site/apt/theta/two/index.apt               |  12 +
 .../projects/site-plugin-test6/src/site/site.xml   |  73 ++
 .../apache/maven/plugin/site/test6/AppTest.java    |  38 ++
 src/test/projects/site-plugin-test7/pom.xml        |  57 ++
 .../org/apache/maven/plugin/site/test7/App.java    |  13 +
 .../apache/maven/plugin/site/test7/AppTest.java    |  38 ++
 .../projects/site-plugin-test8/framework/pom.xml   |  66 ++
 .../org/apache/maven/plugin/site/test8/App.java    |  13 +
 .../framework/src/site/apt/index.apt               |  12 +
 .../site-plugin-test8/framework/src/site/site.xml  |  40 ++
 .../apache/maven/plugin/site/test8/AppTest.java    |  38 ++
 .../projects/site-plugin-test8/framework2/pom.xml  |  66 ++
 .../org/apache/maven/plugin/site/test8/App.java    |  13 +
 .../framework2/src/site/apt/index.apt              |  12 +
 .../site-plugin-test8/framework2/src/site/site.xml |  40 ++
 .../apache/maven/plugin/site/test8/AppTest.java    |  38 ++
 src/test/projects/site-plugin-test8/pom.xml        |  65 ++
 .../org/apache/maven/plugin/site/test8/App.java    |  13 +
 .../site-plugin-test8/src/site/apt/index.apt       |  12 +
 .../projects/site-plugin-test8/src/site/site.xml   |  40 ++
 .../apache/maven/plugin/site/test8/AppTest.java    |  38 ++
 src/test/projects/site-plugin-test9/pom.xml        |  71 ++
 .../src/site/apt/issue-tracking.apt                |  12 +
 .../site-plugin-test9/src/site/apt/test.apt        |  12 +
 .../site-plugin-test9/src/site/fr/apt/index.apt    |  12 +
 .../src/site/fr/apt/issue-tracking.apt             |  12 +
 .../site-plugin-test9/src/site/fr/apt/test.apt     |  12 +
 .../src/site/fr/xdoc/source-repository.xml         |  35 +
 .../site-plugin-test9/src/site/fr/xdoc/test1.xml   |  35 +
 .../projects/site-plugin-test9/src/site/site.xml   |  41 ++
 .../site-plugin-test9/src/site/site_fr.xml         |  41 ++
 .../site-plugin-test9/src/site/xdoc/test1.xml      |  35 +
 src/test/resources/unit/interpolated-site/pom.xml  |  74 ++
 .../unit/interpolated-site/src/site/apt/test.apt   |  29 +
 .../unit/interpolated-site/src/site/site.xml       |  43 ++
 465 files changed, 22679 insertions(+)

diff --git a/pom.xml b/pom.xml
new file mode 100644
index 0000000..c1fe60e
--- /dev/null
+++ b/pom.xml
@@ -0,0 +1,486 @@
+<?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/xsd/maven-4.0.0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <parent>
+    <groupId>org.apache.maven.plugins</groupId>
+    <artifactId>maven-plugins</artifactId>
+    <version>21</version>
+    <relativePath>../maven-plugins/pom.xml</relativePath>
+  </parent>
+
+  <artifactId>maven-site-plugin</artifactId>
+  <version>2.4-SNAPSHOT</version>
+  <packaging>maven-plugin</packaging>
+
+  <name>Maven Site Plugin 2</name>
+  <description>The Maven Site Plugin is a plugin that generates a site for the current project.</description>
+
+  <contributors>
+    <contributor>
+      <name>Naoki Nose</name>
+      <email>ikkoan@mail.goo.ne.jp</email>
+      <roles>
+        <role>Japanese translator</role>
+      </roles>
+    </contributor>
+    <contributor>
+      <name>Michael Wechner</name>
+      <email>michael.wechner@wyona.com</email>
+      <roles>
+        <role>German translator</role>
+      </roles>
+    </contributor>
+    <contributor>
+      <name>Christian Schulte</name>
+      <email>cs@schulte.it</email>
+      <roles>
+        <role>German translator</role>
+      </roles>
+    </contributor>
+    <contributor>
+      <name>Piotr Bzdyl</name>
+      <email>piotr@bzdyl.net</email>
+      <roles>
+        <role>Polish translator</role>
+      </roles>
+    </contributor>
+    <contributor>
+      <name>Domingos Creado</name>
+      <email>dcreado@users.sf.net</email>
+      <roles>
+        <role>Brazilian Portuguese translator</role>
+      </roles>
+    </contributor>
+    <contributor>
+      <name>John Allen</name>
+      <email>john_h_allen@hotmail.com</email>
+    </contributor>
+    <contributor>
+      <name>Laszlo Hornyak Kocka</name>
+      <email>laszlo.hornyak@gmail.com</email>
+      <roles>
+        <role>Hungarian translator</role>
+      </roles>
+    </contributor>
+    <contributor>
+      <name>Hermod Opstvedt</name>
+      <email>hermod.opstvedt@dnbnor.no</email>
+      <roles>
+        <role>Norwegian translator</role>
+      </roles>
+    </contributor>
+    <contributor>
+      <name>Yue Ni</name>
+      <email>ni2yue4@gmail.com</email>
+      <roles>
+        <role>Chinese translator</role>
+      </roles>
+    </contributor>
+    <contributor>
+      <name>Arturo Vazquez</name>
+      <email>vaz@root.com.mx</email>
+      <roles>
+        <role>Spanish translator</role>
+      </roles>
+    </contributor>
+    <contributor>
+      <name>Woonsan Ko</name>
+      <email>woon_san@yahoo.com</email>
+      <roles>
+        <role>Korean translator</role>
+      </roles>
+    </contributor>
+    <contributor>
+      <name>Martin Vysny</name>
+      <email>mvy@whitestein.com</email>
+      <roles>
+        <role>Slovak translator</role>
+      </roles>
+    </contributor>
+    <contributor>
+      <name>Petr Ferschmann</name>
+      <email>pferschmann@softeu.com</email>
+      <roles>
+        <role>Czech translator</role>
+      </roles>
+    </contributor>
+    <contributor>
+      <name>Kristian Mandrup</name>
+      <email>kristian@mandrup.dk</email>
+      <roles>
+        <role>Danish translator</role>
+      </roles>
+    </contributor>
+    <contributor>
+      <name>Samuel Santos</name>
+      <email>samaxes@gmail.com</email>
+      <roles>
+        <role>Portuguese translator</role>
+      </roles>
+    </contributor>
+    <contributor>
+      <name>Mindaugas Greibus</name>
+      <email>spantus@gmail.com</email>
+      <roles>
+        <role>Lithuanian translator</role>
+      </roles>
+    </contributor>
+    <contributor>
+      <name>Yevgeny Nyden</name>
+      <email>yev@curre.net</email>
+      <roles>
+        <role>Russian translator</role>
+      </roles>
+    </contributor>
+    <contributor>
+      <name>Daniel Fernández</name>
+      <email>daniel.fernandez.garrido@gmail.com</email>
+      <roles>
+        <role>Galician translator</role>
+      </roles>
+    </contributor>
+  </contributors>
+
+  <prerequisites>
+    <maven>${mavenVersion}</maven>
+  </prerequisites>
+
+  <scm>
+    <connection>scm:svn:http://svn.apache.org/repos/asf/maven/plugins/trunk/maven-site-plugin/</connection>
+    <developerConnection>scm:svn:https://svn.apache.org/repos/asf/maven/plugins/trunk/maven-site-plugin/</developerConnection>
+    <url>http://svn.apache.org/viewvc/maven/plugins/trunk/maven-site-plugin/</url>
+  </scm>
+  <issueManagement>
+    <system>JIRA</system>
+    <url>http://jira.codehaus.org/browse/MSITE</url>
+  </issueManagement>
+
+  <properties>
+    <doxiaVersion>1.2</doxiaVersion>
+    <doxiaSitetoolsVersion>1.2.1-SNAPSHOT</doxiaSitetoolsVersion>
+    <mavenVersion>2.2.0</mavenVersion>
+    <wagonVersion>1.0-beta-6</wagonVersion>
+    <!-- for ITs -->
+    <javadocPluginVersion>2.6.1</javadocPluginVersion>
+    <projectInfoReportsPluginVersion>2.2</projectInfoReportsPluginVersion>
+    <checkstylePluginVersion>2.5</checkstylePluginVersion>
+  </properties>
+
+  <dependencies>
+    <dependency>
+      <groupId>org.apache.maven.reporting</groupId>
+      <artifactId>maven-reporting-api</artifactId>
+      <version>3.0</version>
+    </dependency>
+
+    <!-- Maven -->
+    <dependency>
+      <groupId>org.apache.maven</groupId>
+      <artifactId>maven-artifact</artifactId>
+      <version>${mavenVersion}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven</groupId>
+      <artifactId>maven-artifact-manager</artifactId>
+      <version>${mavenVersion}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven</groupId>
+      <artifactId>maven-model</artifactId>
+      <version>${mavenVersion}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven</groupId>
+      <artifactId>maven-plugin-api</artifactId>
+      <version>${mavenVersion}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven</groupId>
+      <artifactId>maven-project</artifactId>
+      <version>${mavenVersion}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven</groupId>
+      <artifactId>maven-settings</artifactId>
+      <version>${mavenVersion}</version>
+    </dependency>
+
+    <!-- Doxia -->
+    <dependency>
+      <groupId>org.apache.maven.doxia</groupId>
+      <artifactId>doxia-sink-api</artifactId>
+      <version>${doxiaVersion}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven.doxia</groupId>
+      <artifactId>doxia-logging-api</artifactId>
+      <version>${doxiaVersion}</version>
+    </dependency>
+
+    <dependency>
+      <groupId>org.apache.maven.doxia</groupId>
+      <artifactId>doxia-core</artifactId>
+      <version>${doxiaVersion}</version>
+      <exclusions>
+        <exclusion>
+          <groupId>commons-logging</groupId>
+          <artifactId>commons-logging</artifactId>
+        </exclusion>
+      </exclusions>
+    </dependency>
+
+    <dependency>
+      <groupId>org.apache.maven.doxia</groupId>
+      <artifactId>doxia-module-xhtml</artifactId>
+      <version>${doxiaVersion}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven.doxia</groupId>
+      <artifactId>doxia-module-apt</artifactId>
+      <version>${doxiaVersion}</version>
+      <scope>runtime</scope>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven.doxia</groupId>
+      <artifactId>doxia-module-xdoc</artifactId>
+      <version>${doxiaVersion}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven.doxia</groupId>
+      <artifactId>doxia-module-fml</artifactId>
+      <version>${doxiaVersion}</version>
+      <scope>runtime</scope>
+    </dependency>
+
+    <dependency>
+      <groupId>javax.servlet</groupId>
+      <artifactId>servlet-api</artifactId>
+      <version>2.5</version>
+    </dependency>
+
+    <!-- Doxia-sitetools -->
+    <dependency>
+      <groupId>org.apache.maven.doxia</groupId>
+      <artifactId>doxia-decoration-model</artifactId>
+      <version>${doxiaSitetoolsVersion}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven.doxia</groupId>
+      <artifactId>doxia-site-renderer</artifactId>
+      <version>${doxiaSitetoolsVersion}</version>
+    </dependency>
+
+    <dependency>
+      <groupId>org.apache.maven.shared</groupId>
+      <artifactId>maven-doxia-tools</artifactId>
+      <version>1.4</version>
+    </dependency>
+
+    <!-- Wagon -->
+    <dependency>
+      <groupId>org.apache.maven.wagon</groupId>
+      <artifactId>wagon-provider-api</artifactId>
+      <version>${wagonVersion}</version>
+    </dependency>
+
+    <!-- Plexus -->
+    <dependency>
+      <groupId>org.codehaus.plexus</groupId>
+      <artifactId>plexus-archiver</artifactId>
+      <version>1.0</version>
+    </dependency>
+    <dependency>
+      <groupId>org.codehaus.plexus</groupId>
+      <artifactId>plexus-container-default</artifactId>
+      <version>1.0-alpha-9</version>
+    </dependency>
+    <dependency>
+      <groupId>org.codehaus.plexus</groupId>
+      <artifactId>plexus-i18n</artifactId>
+      <version>1.0-beta-7</version>
+      <exclusions>
+        <exclusion>
+          <groupId>org.codehaus.plexus</groupId>
+          <artifactId>plexus-component-api</artifactId>
+        </exclusion>
+      </exclusions>
+    </dependency>
+    <dependency>
+      <groupId>org.codehaus.plexus</groupId>
+      <artifactId>plexus-velocity</artifactId>
+      <version>1.1.8</version>
+      <exclusions>
+        <exclusion><!-- not needed with 1.1.9+ -->
+          <artifactId>velocity</artifactId>
+          <groupId>velocity</groupId>
+        </exclusion>
+      </exclusions>
+    </dependency>
+    <dependency>
+      <groupId>org.codehaus.plexus</groupId>
+      <artifactId>plexus-utils</artifactId>
+      <version>1.5.10</version>
+    </dependency>
+
+    <!-- misc -->
+    <dependency>
+      <groupId>org.mortbay.jetty</groupId>
+      <artifactId>jetty</artifactId>
+      <version>6.1.5</version>
+    </dependency>
+
+    <!-- test -->
+    <dependency>
+      <groupId>org.apache.maven.plugin-testing</groupId>
+      <artifactId>maven-plugin-testing-harness</artifactId>
+      <version>1.2</version>
+      <scope>test</scope>
+    </dependency>
+  </dependencies>
+
+  <build>
+    <pluginManagement>
+      <plugins>
+        <plugin>
+          <groupId>org.apache.maven.plugins</groupId>
+          <artifactId>maven-compiler-plugin</artifactId>
+          <configuration>
+            <source>1.5</source>
+            <target>1.5</target>
+          </configuration>
+        </plugin>
+      </plugins>
+    </pluginManagement>
+  </build>
+
+  <reporting>
+    <plugins>
+      <plugin>
+        <artifactId>maven-project-info-reports-plugin</artifactId>
+        <version>2.3.1</version>
+      </plugin>
+      <plugin>
+        <artifactId>maven-pmd-plugin</artifactId>
+        <version>2.5</version>
+        <configuration>
+          <targetJdk>1.5</targetJdk>
+        </configuration>
+      </plugin>
+    </plugins>
+  </reporting>
+
+  <profiles>
+    <profile>
+      <id>run-its</id>
+      <build>
+        <plugins>
+          <plugin>
+            <groupId>org.apache.maven.plugins</groupId>
+            <artifactId>maven-invoker-plugin</artifactId>
+            <version>1.5</version>
+            <configuration>
+              <projectsDirectory>src/it</projectsDirectory>
+              <cloneProjectsTo>${project.build.directory}/it</cloneProjectsTo>
+              <showVersion>true</showVersion>
+              <pomIncludes>
+                <pomInclude>*/pom.xml</pomInclude>
+              </pomIncludes>
+              <postBuildHookScript>verify</postBuildHookScript>
+              <localRepositoryPath>${project.build.directory}/local-repo</localRepositoryPath>
+              <goals>
+                <goal>clean</goal>
+                <goal>${project.groupId}:${project.artifactId}:${project.version}:site</goal>
+              </goals>
+              <settingsFile>src/it/settings.xml</settingsFile>
+            </configuration>
+            <executions>
+              <execution>
+                <id>integration-test</id>
+                <goals>
+                  <goal>install</goal>
+                  <goal>run</goal>
+                </goals>
+              </execution>
+           </executions>
+          </plugin>
+        </plugins>
+      </build>
+    </profile>
+    <profile>
+      <id>reporting</id>
+      <build>
+        <pluginManagement>
+          <plugins>
+            <plugin>
+              <groupId>org.apache.maven.plugins</groupId>
+              <artifactId>maven-site-plugin</artifactId>
+              <version>${project.version}</version>
+            </plugin>
+          </plugins>
+        </pluginManagement>
+      </build>
+      <reporting>
+        <plugins>
+          <plugin>
+            <groupId>org.codehaus.mojo</groupId>
+            <artifactId>l10n-maven-plugin</artifactId>
+            <version>1.0-alpha-2</version>
+            <configuration>
+              <locales>
+                <locale>ca</locale>
+                <locale>cs</locale>
+                <locale>da</locale>
+                <locale>de</locale>
+                <locale>es</locale>
+                <locale>fr</locale>
+                <locale>gl</locale>
+                <locale>hu</locale>
+                <locale>it</locale>
+                <locale>ja</locale>
+                <locale>ko</locale>
+                <locale>lt</locale>
+                <locale>nl</locale>
+                <locale>no</locale>
+                <locale>pl</locale>
+                <locale>pt</locale>
+                <locale>pt_BR</locale>
+                <locale>ru</locale>
+                <locale>sk</locale>
+                <locale>sv</locale>
+                <locale>tr</locale>
+                <locale>zh_CN</locale>
+                <locale>zh_TW</locale>
+              </locales>
+            </configuration>
+          </plugin>
+          <plugin>
+            <groupId>org.apache.maven.plugins</groupId>
+            <artifactId>maven-invoker-plugin</artifactId>
+            <version>1.5</version>
+          </plugin>
+        </plugins>
+      </reporting>
+    </profile>
+  </profiles>
+</project>
diff --git a/src/it/MSITE-159/invoker.properties b/src/it/MSITE-159/invoker.properties
new file mode 100644
index 0000000..6749c64
--- /dev/null
+++ b/src/it/MSITE-159/invoker.properties
@@ -0,0 +1 @@
+invoker.goals.1 = clean site:site
diff --git a/src/it/MSITE-159/pom.xml b/src/it/MSITE-159/pom.xml
new file mode 100644
index 0000000..7954904
--- /dev/null
+++ b/src/it/MSITE-159/pom.xml
@@ -0,0 +1,50 @@
+<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/xsd/maven-4.0.0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <groupId>msite159</groupId>
+  <artifactId>check</artifactId>
+  <version>1.0-SNAPSHOT</version>
+  <packaging>pom</packaging>
+  <name>MSITE-159</name>
+
+  <url>http://webhost.company.com/</url>
+
+  <distributionManagement>
+    <site>
+      <id>website</id>
+      <url>scp://webhost.company.com/www/website</url>
+    </site>
+  </distributionManagement>
+
+  <build>
+    <pluginManagement>
+      <plugins>
+        <plugin>
+          <artifactId>maven-site-plugin</artifactId>
+          <version>@project.version@</version>
+          <configuration>
+            <relativizeDecorationLinks>false</relativizeDecorationLinks>
+          </configuration>
+        </plugin>
+      </plugins>
+    </pluginManagement>
+  </build>
+
+  <reporting>
+    <plugins>
+      <plugin>
+        <artifactId>maven-project-info-reports-plugin</artifactId>
+        <version>2.3.1</version>
+        <reportSets>
+          <reportSet>
+            <reports>
+              <report>index</report>
+            </reports>
+          </reportSet>
+        </reportSets>
+      </plugin>
+    </plugins>
+  </reporting>
+
+</project>
diff --git a/src/it/MSITE-159/src/site/apt/index.apt b/src/it/MSITE-159/src/site/apt/index.apt
new file mode 100644
index 0000000..31b6246
--- /dev/null
+++ b/src/it/MSITE-159/src/site/apt/index.apt
@@ -0,0 +1,18 @@
+ -----
+ Title Here
+ -----
+ Author Here
+ -----
+ Date Here
+ -----
+
+Maven Site for your project
+
+ Congratulations! If you are looking at this page then you have successfully generated a
+ template site employing the site archetype and you have run:
+  
++-----+
+
+mvn site
+
++-----+
diff --git a/src/it/MSITE-159/src/site/site.xml b/src/it/MSITE-159/src/site/site.xml
new file mode 100644
index 0000000..5a64a36
--- /dev/null
+++ b/src/it/MSITE-159/src/site/site.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+
+<project name="Maven" xmlns="http://maven.apache.org/DECORATION/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:schemaLocation="http://maven.apache.org/DECORATION/1.0.0 http://maven.apache.org/xsd/decoration-1.0.0.xsd">
+
+  <body>
+    <links>
+      <item name="Link" href="http://webhost.company.com/"/>
+    </links>
+    <breadcrumbs>
+      <item name="Breadcrumb" href="http://webhost.company.com/index.html"/>
+    </breadcrumbs>
+
+    <menu name="Documentation">
+      <item name="Home" href="index.html"/>
+      <item name="Menu" href="http://webhost.company.com/"/>
+    </menu>
+  </body>
+</project>
diff --git a/src/it/MSITE-159/verify.bsh b/src/it/MSITE-159/verify.bsh
new file mode 100644
index 0000000..8b9b875
--- /dev/null
+++ b/src/it/MSITE-159/verify.bsh
@@ -0,0 +1,59 @@
+
+/*
+ * 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.
+ */
+
+import java.io.*;
+
+import org.codehaus.plexus.util.*;
+
+boolean result = true;
+
+try
+{
+    final File siteDirectory = new File( basedir, "target/site" );
+    if ( !siteDirectory.exists() || !siteDirectory.isDirectory() )
+    {
+        System.err.println( "site is missing or not a directory." );
+        result = false;
+    }
+
+    File index = new File( siteDirectory, "index.html" );
+    if ( !index.exists() || index.isDirectory() )
+    {
+        System.err.println( "no index file or is a directory." );
+        result = false;
+    }
+
+    String content = FileUtils.fileRead( index, "UTF-8" );
+    int index1 = content.indexOf( "<a href=\"http://webhost.company.com/index.html\" class=\"externalLink\" title=\"Breadcrumb\">Breadcrumb</a>" );
+    int index2 = content.indexOf( "<a href=\"http://webhost.company.com/\" class=\"externalLink\" title=\"Link\">Link</a>" );
+    int index3 = content.indexOf( "<a href=\"http://webhost.company.com/\" class=\"externalLink\" title=\"Menu\">Menu</a>" );
+    if ( index1 < 0 || index2 < 0 || index3 < 0 )
+    {
+        System.err.println( "index.html has incorrect links!" );
+        result = false;
+    }
+}
+catch ( IOException e )
+{
+    e.printStackTrace();
+    result = false;
+}
+
+return result;
diff --git a/src/it/MSITE-265/invoker.properties b/src/it/MSITE-265/invoker.properties
new file mode 100644
index 0000000..66a1bf4
--- /dev/null
+++ b/src/it/MSITE-265/invoker.properties
@@ -0,0 +1 @@
+invoker.maven.version = 3.0-
diff --git a/src/it/MSITE-265/pom.xml b/src/it/MSITE-265/pom.xml
new file mode 100644
index 0000000..5a4979d
--- /dev/null
+++ b/src/it/MSITE-265/pom.xml
@@ -0,0 +1,69 @@
+<!--
+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/xsd/maven-4.0.0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <groupId>org.apache.maven.plugins.site.its</groupId>
+  <artifactId>MSITE-265</artifactId>
+  <version>1.0-SNAPSHOT</version>
+  <packaging>pom</packaging>
+
+  <name>MSITE-265 It</name>
+
+  <properties>
+    <currentVersion>2.0.7</currentVersion>
+    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+  </properties>
+
+  <build>
+    <plugins>
+      <plugin>
+        <artifactId>maven-site-plugin</artifactId>
+        <version>@project.version@</version>
+        <configuration>
+          <locales>en,ca,cs,da,de,es,fr,hu,it,ja,ko,nl,no,pl,pt,pt_BR,sk,sv,tr,zh_CN</locales>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
+  <reporting>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-project-info-reports-plugin</artifactId>
+        <version>2.1.2</version>
+        <reportSets>
+          <reportSet>
+            <reports>
+              <report>index</report>
+            </reports>
+          </reportSet>
+        </reportSets>
+      </plugin>
+      <plugin>
+        <groupId>org.codehaus.mojo</groupId>
+        <artifactId>taglist-maven-plugin</artifactId>
+        <version>2.0</version>
+      </plugin>
+    </plugins>
+  </reporting>
+</project>
diff --git a/src/it/MSITE-265/src/main/java/foo/App.java b/src/it/MSITE-265/src/main/java/foo/App.java
new file mode 100644
index 0000000..6e61fcf
--- /dev/null
+++ b/src/it/MSITE-265/src/main/java/foo/App.java
@@ -0,0 +1,32 @@
+package foo;
+
+/*
+ * 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.
+ */
+
+/**
+ * Hello world!
+ *
+ */
+public class App 
+{
+    public static void main( String[] args )
+    {
+        System.out.println( "Hello World!" );
+    }
+}
diff --git a/src/it/MSITE-265/src/site/apt/download.apt.vm b/src/it/MSITE-265/src/site/apt/download.apt.vm
new file mode 100644
index 0000000..26b2f06
--- /dev/null
+++ b/src/it/MSITE-265/src/site/apt/download.apt.vm
@@ -0,0 +1,36 @@
+ ------
+Download Maven ${currentVersion}
+ ------
+Brett Porter
+Jason van Zyl
+ ------
+4 October 2005
+ ------
+
+ ~~ 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.
+
+
+Download Maven ${currentVersion}
+
+  Encoding support test:
+
+  * source file encoding is configured in <<<pom.xml>>>: <<<UTF-8>>>
+
+  * using default reporting output files encoding: <<<UTF-8>>>
+
+  * demo character: € (euro)
\ No newline at end of file
diff --git a/src/it/MSITE-265/src/site/site.xml b/src/it/MSITE-265/src/site/site.xml
new file mode 100644
index 0000000..6401bcd
--- /dev/null
+++ b/src/it/MSITE-265/src/site/site.xml
@@ -0,0 +1,44 @@
+<?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 name="MSITE-265" xmlns="http://maven.apache.org/DECORATION/1.0.0"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xsi:schemaLocation="http://maven.apache.org/DECORATION/1.0.0 http://maven.apache.org/xsd/decoration-1.0.0.xsd">
+  <publishDate format="dd MMM yyyy HH:mm"/>
+  <version position="left"/>
+  <skin>
+    <groupId>org.apache.maven.skins</groupId>
+    <artifactId>maven-stylus-skin</artifactId>
+    <version>1.3</version>
+  </skin>
+  <body>
+    <breadcrumbs>
+      <item name="Maven" href="http://maven.apache.org/${currentVersion}"/>
+    </breadcrumbs>
+    <menu name="Releases TODO">
+      <item name="release1.6" href="releases/release1.6.html"/>
+      <item name="release1.6.3" href="releases/release1.6.3.html"/>
+    </menu>
+    <menu ref="parent"/>
+    <menu ref="reports"/>
+    <menu ref="modules"/>
+  </body>
+</project>
diff --git a/src/it/MSITE-265/src/site/xdoc/index.xml b/src/it/MSITE-265/src/site/xdoc/index.xml
new file mode 100644
index 0000000..104a9e2
--- /dev/null
+++ b/src/it/MSITE-265/src/site/xdoc/index.xml
@@ -0,0 +1,28 @@
+<?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.
+-->
+
+<document>
+  <body>
+    <section name="Overview">
+      <p>MSITE-265.</p>
+    </section>
+  </body>
+</document>
\ No newline at end of file
diff --git a/src/it/MSITE-265/src/site/xdoc/releases/release1.6.3.xml b/src/it/MSITE-265/src/site/xdoc/releases/release1.6.3.xml
new file mode 100644
index 0000000..cfe9685
--- /dev/null
+++ b/src/it/MSITE-265/src/site/xdoc/releases/release1.6.3.xml
@@ -0,0 +1,28 @@
+<?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.
+-->
+
+<document>
+  <body>
+    <section name="todo">
+      <p>Release TODO 1.6.3</p>
+    </section>
+  </body>
+</document>
diff --git a/src/it/MSITE-265/src/site/xdoc/releases/release1.6.xml b/src/it/MSITE-265/src/site/xdoc/releases/release1.6.xml
new file mode 100644
index 0000000..13ebe2e
--- /dev/null
+++ b/src/it/MSITE-265/src/site/xdoc/releases/release1.6.xml
@@ -0,0 +1,28 @@
+<?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.
+-->
+
+<document>
+  <body>
+    <section name="todo">
+      <p>Release TODO 1.6</p>
+    </section>
+  </body>
+</document>
\ No newline at end of file
diff --git a/src/it/MSITE-265/verify.bsh b/src/it/MSITE-265/verify.bsh
new file mode 100644
index 0000000..e45d763
--- /dev/null
+++ b/src/it/MSITE-265/verify.bsh
@@ -0,0 +1,98 @@
+
+/*
+ * 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.
+ */
+
+import java.io.*;
+import org.codehaus.plexus.util.*;
+
+boolean result = true;
+
+try
+{
+    File target = new File( basedir, "target" );
+    if ( !target.exists() || !target.isDirectory() )
+    {
+        System.err.println( "target file is missing or not a directory." );
+        return false;
+    }
+
+    File siteDirectory = new File( target, "site" );
+    if ( !siteDirectory.exists() || !siteDirectory.isDirectory() )
+    {
+        System.err.println( "site file is missing or not a directory." );
+        return false;
+    }
+
+    File releaseDirectory = new File( siteDirectory, "releases" );
+    if ( !releaseDirectory.exists() || !releaseDirectory.isDirectory() )
+    {
+        System.err.println( "releaseDirectory file is missing or not a directory." );
+        return false;
+    }
+    File release163 = new File( releaseDirectory, "release1.6.3.html" );
+    if ( !release163.exists() || release163.isDirectory() )
+    {
+        System.err.println( "release163 file is missing or a directory." );
+        return false;
+    }
+    File release16 = new File( releaseDirectory, "release1.6.html" );
+    if ( !release16.exists() || release16.isDirectory() )
+    {
+        System.err.println( "release16 file is missing or a directory." );
+        return false;
+    }
+
+    File download = new File( siteDirectory, "download.html" );
+    if ( !download.exists() || download.isDirectory() )
+    {
+        System.err.println( "download.html file is missing or a directory." );
+        return false;
+    }
+    String downloadContent = FileUtils.fileRead( download, "UTF-8" );
+    int indexOf = downloadContent.indexOf( "Download Maven 2.0.7" );
+    if ( indexOf < 0 )
+    {
+        System.err.println( "download.html doesn't contain Download Maven 2.0.7" );
+        return false;
+    }
+    if ( downloadContent.indexOf( "charset=UTF-8" ) < 0 )
+    {
+        System.err.println( "download.html doesn't contain 'charset=UTF-8' directive" );
+        return false;
+    }
+    if ( downloadContent.indexOf( "demo character: &#x20ac; (euro)" ) < 0 )
+    {
+        System.err.println( "download.html doesn't contain euro symbol" );
+        return false;
+    }
+
+    File reports = new File( siteDirectory, "project-reports.html" );
+    if ( !reports.exists() || reports.isDirectory() )
+    {
+        System.err.println( "project-reports.html file is missing or a directory." );
+        return false;
+    }
+}
+catch ( IOException e )
+{
+    e.printStackTrace();
+    result = false;
+}
+
+return result;
diff --git a/src/it/MSITE-304/child/pom.xml b/src/it/MSITE-304/child/pom.xml
new file mode 100644
index 0000000..b5f3e64
--- /dev/null
+++ b/src/it/MSITE-304/child/pom.xml
@@ -0,0 +1,33 @@
+<!--
+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/xsd/maven-4.0.0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+  <parent>
+    <groupId>org.apache.maven.plugins.site.its</groupId>
+    <artifactId>MSITE-304-parent</artifactId>
+    <version>1.0-SNAPSHOT</version>
+  </parent>
+
+  <artifactId>MSITE-304-child</artifactId>
+  <version>1.0-SNAPSHOT</version>
+  <packaging>pom</packaging>
+
+  <name>MSITE-304 IT child</name>
+  <url>http://www.example.com/parent/child/</url>
+</project>
diff --git a/src/it/MSITE-304/invoker.properties b/src/it/MSITE-304/invoker.properties
new file mode 100644
index 0000000..1fd418d
--- /dev/null
+++ b/src/it/MSITE-304/invoker.properties
@@ -0,0 +1,2 @@
+invoker.goals.1 = clean
+invoker.goals.2 = site:site site:stage site:stage-deploy
diff --git a/src/it/MSITE-304/pom.xml b/src/it/MSITE-304/pom.xml
new file mode 100644
index 0000000..675687b
--- /dev/null
+++ b/src/it/MSITE-304/pom.xml
@@ -0,0 +1,69 @@
+<!--
+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/xsd/maven-4.0.0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <groupId>org.apache.maven.plugins.site.its</groupId>
+  <artifactId>MSITE-304-parent</artifactId>
+  <version>1.0-SNAPSHOT</version>
+  <packaging>pom</packaging>
+
+  <name>MSITE-304 IT parent</name>
+  <url>http://www.example.com/parent/</url>
+
+  <distributionManagement>
+    <site>
+      <id>msite-304</id>
+      <name>Example company web server</name>
+      <url>file://${java.io.tmpdir}/www.example.com/parent</url>
+    </site>
+  </distributionManagement>
+
+  <modules>
+    <module>child</module>
+  </modules>
+
+  <build>
+    <pluginManagement>
+      <plugins>
+        <plugin>
+          <artifactId>maven-site-plugin</artifactId>
+          <version>@project.version@</version>
+        </plugin>
+      </plugins>
+    </pluginManagement>
+  </build>
+
+  <reporting>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-project-info-reports-plugin</artifactId>
+        <version>2.1.2</version>
+        <reportSets>
+          <reportSet>
+            <reports>
+              <report>index</report>
+            </reports>
+          </reportSet>
+        </reportSets>
+      </plugin>
+    </plugins>
+  </reporting>
+</project>
diff --git a/src/it/MSITE-304/src/site/site.xml b/src/it/MSITE-304/src/site/site.xml
new file mode 100644
index 0000000..a881cc2
--- /dev/null
+++ b/src/it/MSITE-304/src/site/site.xml
@@ -0,0 +1,30 @@
+<?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 xmlns="http://maven.apache.org/DECORATION/1.0.0"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xsi:schemaLocation="http://maven.apache.org/DECORATION/1.0.0 http://maven.apache.org/xsd/decoration-1.0.0.xsd">
+  <body>
+    <menu ref="parent"/>
+    <menu ref="reports"/>
+    <menu ref="modules"/>
+  </body>
+</project>
diff --git a/src/it/MSITE-304/verify.bsh b/src/it/MSITE-304/verify.bsh
new file mode 100644
index 0000000..39ff211
--- /dev/null
+++ b/src/it/MSITE-304/verify.bsh
@@ -0,0 +1,77 @@
+
+/*
+ * 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.
+ */
+
+import java.io.*;
+
+boolean result = true;
+
+try
+{
+    File target = new File( basedir, "target" );
+    if ( !target.exists() || !target.isDirectory() )
+    {
+        System.err.println( "Target directory '" + target + "' is missing or not a directory." );
+        return false;
+    }
+
+    File stagingDirectory = new File( target, "staging" );
+    if ( !stagingDirectory.exists() || !stagingDirectory.isDirectory() )
+    {
+        System.err.println( "Staging directory '" + stagingDirectory + "' is missing or not a directory." );
+        return false;
+    }
+
+    String tmpDir = System.getProperty( "java.io.tmpdir" );
+
+    File childDirectory = new File( stagingDirectory, "MSITE-304-child" );
+    if ( !childDirectory.exists() || !childDirectory.isDirectory() )
+    {
+        System.err.println( "Staging directory for child '" + childDirectory + "' is missing or not a directory." );
+        return false;
+    }
+
+    File stageDeployDirectory = new File( tmpDir + "/www.example.com/parent" );
+    if ( !stageDeployDirectory.exists() || !stageDeployDirectory.isDirectory() )
+    {
+        System.err.println( "Stage deploy directory '" + stageDeployDirectory + "' is missing or not a directory." );
+        return false;
+    }
+
+    File validChildStageDeployDirectory = new File( stageDeployDirectory, "staging/MSITE-304-child" );
+    if ( !validChildStageDeployDirectory.exists() || !validChildStageDeployDirectory.isDirectory() )
+    {
+        System.err.println( "Valid stage deploy directory for child '" + validChildStageDeployDirectory + "' is missing or not a directory." );
+        return false;
+    }
+
+    File invalidChildStageDeployDirectory = new File( stageDeployDirectory, "MSITE-304-child/staging" );
+    if ( invalidChildStageDeployDirectory.exists() && invalidChildStageDeployDirectory.isDirectory() )
+    {
+        System.err.println( "Invalid stage deploy directory for child '" + invalidChildStageDeployDirectory + "' is present." );
+        return false;
+    }
+}
+catch ( IOException e )
+{
+    e.printStackTrace();
+    result = false;
+}
+
+return result;
diff --git a/src/it/MSITE-312/child/pom.xml b/src/it/MSITE-312/child/pom.xml
new file mode 100644
index 0000000..5c09718
--- /dev/null
+++ b/src/it/MSITE-312/child/pom.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project>
+  <modelVersion>4.0.0</modelVersion>
+
+  <parent>
+    <groupId>msite312</groupId>
+    <artifactId>parent</artifactId>
+    <version>1.0</version>
+    <relativePath>../pom.xml</relativePath>
+  </parent>
+
+  <artifactId>child</artifactId>
+
+  <name>Child</name>
+
+  <properties>
+    <childprop>child</childprop>
+  </properties>
+
+</project>
diff --git a/src/it/MSITE-312/child/src/site/site.xml b/src/it/MSITE-312/child/src/site/site.xml
new file mode 100644
index 0000000..1f2bb26
--- /dev/null
+++ b/src/it/MSITE-312/child/src/site/site.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<project>
+
+    <bannerLeft>
+		<name>${project.name}</name>
+		<href>${project.url}</href>
+	</bannerLeft>
+
+    <body>
+		<menu name="Local">
+            <item name="${project.name}" href="${project.url}" />
+			<item name="${parentprop}" href="local/${parentprop}" />
+			<item name="${childprop}" href="local/${childprop}" />
+		</menu>
+	</body>
+
+</project>
\ No newline at end of file
diff --git a/src/it/MSITE-312/invoker.properties b/src/it/MSITE-312/invoker.properties
new file mode 100644
index 0000000..66a1bf4
--- /dev/null
+++ b/src/it/MSITE-312/invoker.properties
@@ -0,0 +1 @@
+invoker.maven.version = 3.0-
diff --git a/src/it/MSITE-312/pom.xml b/src/it/MSITE-312/pom.xml
new file mode 100644
index 0000000..450102f
--- /dev/null
+++ b/src/it/MSITE-312/pom.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project>
+	<modelVersion>4.0.0</modelVersion>
+
+    <groupId>msite312</groupId>
+    <artifactId>parent</artifactId>
+    <version>1.0</version>
+    <packaging>pom</packaging>
+
+    <name>Parent</name>
+    <url>http://example.com/parent/</url>
+
+    <build>
+      <pluginManagement>
+		<plugins>
+          <plugin>
+            <groupId>org.apache.maven.plugins</groupId>
+            <artifactId>maven-site-plugin</artifactId>
+            <version>@project.version@</version>
+          </plugin>
+		</plugins>
+      </pluginManagement>
+	</build>
+
+    <properties>
+      <parentprop>parent</parentprop>
+    </properties>
+
+  <reporting>
+    <plugins>
+      <plugin>
+        <artifactId>maven-project-info-reports-plugin</artifactId>
+        <version>2.3.1</version>
+        <reportSets>
+          <reportSet>
+            <reports>
+              <report>index</report>
+            </reports>
+          </reportSet>
+        </reportSets>
+      </plugin>
+    </plugins>
+  </reporting>
+
+  <modules>
+    <module>child</module>
+  </modules>
+
+</project>
diff --git a/src/it/MSITE-312/src/site/site.xml b/src/it/MSITE-312/src/site/site.xml
new file mode 100644
index 0000000..d335323
--- /dev/null
+++ b/src/it/MSITE-312/src/site/site.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<project name="${project.name}">
+
+    <bannerLeft>
+		<name>${project.name}</name>
+		<href>${project.url}</href>
+	</bannerLeft>
+
+	<body>
+		<menu name="Inherited" inherit="top">
+            <item name="${project.name}" href="${project.url}" />
+			<item name="${parentprop}" href="inherited/${parentprop}" />
+			<item name="${childprop}" href="inherited/${childprop}" />
+		</menu>
+	</body>
+
+</project>
\ No newline at end of file
diff --git a/src/it/MSITE-312/verify.bsh b/src/it/MSITE-312/verify.bsh
new file mode 100644
index 0000000..8fc5652
--- /dev/null
+++ b/src/it/MSITE-312/verify.bsh
@@ -0,0 +1,94 @@
+
+/*
+ * 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.
+ */
+
+import java.io.*;
+import org.codehaus.plexus.util.*;
+
+boolean result = true;
+
+try
+{
+    final File parentDirectory = new File( basedir, "target/site" );
+    if ( !parentDirectory.exists() || !parentDirectory.isDirectory() )
+    {
+        System.err.println( "parent is missing or not a directory." );
+        return false;
+    }
+
+    File parentIndex = new File( parentDirectory, "index.html" );
+    if ( !parentIndex.exists() || parentIndex.isDirectory() )
+    {
+        System.err.println( "no index file in parent or is a directory." );
+        return false;
+    }
+
+    String content = FileUtils.fileRead( parentIndex, "UTF-8" );
+    int index1 = content.indexOf( "<a href=\"./\" title=\"Parent\">Parent</a>" );
+    int index2 = content.indexOf( "<a href=\"inherited/parent\" title=\"parent\">parent</a>" );
+    int index3 = content.indexOf( "<a href=\"inherited/${childprop}\" title=\"${childprop}\">${childprop}</a>" );
+
+    if ( index1 < 0 || index2 < 0 || index3 < 0 )
+    {
+        System.err.println( "parent index.html has wrong menu items!" );
+        return false;
+    }
+
+    final File childDirectory = new File( basedir, "child/target/site" );
+    if ( !childDirectory.exists() || !childDirectory.isDirectory() )
+    {
+        System.err.println( "child is missing or not a directory." );
+        return false;
+    }
+
+    File childIndex = new File( childDirectory, "index.html" );
+    if ( !childIndex.exists() || childIndex.isDirectory() )
+    {
+        System.err.println( "no index file in child or is a directory." );
+        return false;
+    }
+
+    content = FileUtils.fileRead( childIndex, "UTF-8" );
+    int index1 = content.indexOf( "<a href=\"../\" title=\"Parent\">Parent</a>" );
+    int index2 = content.indexOf( "<a href=\"inherited/parent\" title=\"parent\">parent</a>" );
+    int index3 = content.indexOf( "<a href=\"inherited/${childprop}\" title=\"${childprop}\">${childprop}</a>" );
+
+    if ( index1 < 0 || index2 < 0 || index3 < 0 )
+    {
+        System.err.println( "child index.html has wrong menu items in inherited menu!" );
+        return false;
+    }
+
+    index1 = content.indexOf( "<a href=\"./\" title=\"Child\">Child</a>" );
+    index2 = content.indexOf( "<a href=\"local/parent\" title=\"parent\">parent</a>" );
+    index3 = content.indexOf( "<a href=\"local/child\" title=\"child\">child</a>" );
+
+    if ( index1 < 0 || index2 < 0 || index3 < 0 )
+    {
+        System.err.println( "child index.html has wrong menu items in child menu!" );
+        return false;
+    }
+}
+catch ( IOException e )
+{
+    e.printStackTrace();
+    result = false;
+}
+
+return result;
diff --git a/src/it/MSITE-322/invoker.properties b/src/it/MSITE-322/invoker.properties
new file mode 100644
index 0000000..ea32a8f
--- /dev/null
+++ b/src/it/MSITE-322/invoker.properties
@@ -0,0 +1,2 @@
+invoker.goals.1 = clean
+invoker.goals.2 = site:site site:deploy site:stage site:stage-deploy
diff --git a/src/it/MSITE-322/mymodule/pom.xml b/src/it/MSITE-322/mymodule/pom.xml
new file mode 100644
index 0000000..9632165
--- /dev/null
+++ b/src/it/MSITE-322/mymodule/pom.xml
@@ -0,0 +1,14 @@
+<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>mygroupid</groupId>
+    <artifactId>multimodule</artifactId>
+    <version>1.0.0-SNAPSHOT</version>
+  </parent>
+
+  <groupId>com.francetelecom.multimodule</groupId>
+  <artifactId>mymodule</artifactId>
+  <name>mymodule</name>
+
+</project>
diff --git a/src/it/MSITE-322/mymodule/src/main/java/test/Test.java b/src/it/MSITE-322/mymodule/src/main/java/test/Test.java
new file mode 100644
index 0000000..b13dae9
--- /dev/null
+++ b/src/it/MSITE-322/mymodule/src/main/java/test/Test.java
@@ -0,0 +1,6 @@
+package test;
+
+public class Test {
+	public void test(){
+	}
+}
diff --git a/src/it/MSITE-322/mymodule/src/site/fr/xdoc/index.xml b/src/it/MSITE-322/mymodule/src/site/fr/xdoc/index.xml
new file mode 100644
index 0000000..361ad7a
--- /dev/null
+++ b/src/it/MSITE-322/mymodule/src/site/fr/xdoc/index.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="ISO-8859-15"?>
+<document>
+	<properties>
+		<author>A. Gerodolle</author>
+		<title>Bienvenue sur le site du projet mymodule</title>
+	</properties>
+	<body>
+
+		<section name="presentation">
+			<p>
+				ceci est la page en fran�ais du projet mymodule
+			</p>
+		</section>
+
+	</body>
+</document>
diff --git a/src/it/MSITE-322/mymodule/src/site/site.xml b/src/it/MSITE-322/mymodule/src/site/site.xml
new file mode 100644
index 0000000..362680b
--- /dev/null
+++ b/src/it/MSITE-322/mymodule/src/site/site.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="ISO-8859-15"?>
+
+<project name="${project.name}">
+	<version position="left" />
+	<body>
+		<menu name="${project.name}">
+			<item name="Welcome mymodule" href="index.html" />
+			<item name="Contacts" href="contact.html" />
+			<item name="back to multi" href="../index.html" />
+		</menu>
+		<menu name="Java Doc">
+			<item name="javadoc" href="apidocs/index.html" />
+		</menu>
+	</body>
+</project>
diff --git a/src/it/MSITE-322/mymodule/src/site/site_fr.xml b/src/it/MSITE-322/mymodule/src/site/site_fr.xml
new file mode 100644
index 0000000..73cccb6
--- /dev/null
+++ b/src/it/MSITE-322/mymodule/src/site/site_fr.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="ISO-8859-15"?>
+
+<project name="${project.name}">
+	<version position="left" />
+	<body>
+		<menu name="${project.name}">
+			<item name="Accueil" href="index.html" />
+			<item name="Contacts" href="contact.html" />
+			<item name="Retour multi" href="../index.html" />
+		</menu>
+		<menu name="Java Doc">
+			<item name="javadoc" href="apidocs/index.html" />
+		</menu>
+	</body>
+</project>
diff --git a/src/it/MSITE-322/mymodule/src/site/xdoc/contact.xml b/src/it/MSITE-322/mymodule/src/site/xdoc/contact.xml
new file mode 100644
index 0000000..548e8d4
--- /dev/null
+++ b/src/it/MSITE-322/mymodule/src/site/xdoc/contact.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="ISO-8859-15"?>
+<document>
+	<properties>
+		<author>A. Gerodolle</author>
+		<title>mymodule : contacts</title>
+	</properties>
+	<body>
+
+		<section name="Contacts">
+
+			<ul>
+				<li>
+					<a
+						href="mailto:anne.gerodolle@orange-ftgroup.com">
+						Anne Gerodolle
+					</a>
+				</li>
+			</ul>
+
+		</section>
+
+	</body>
+</document>
diff --git a/src/it/MSITE-322/mymodule/src/site/xdoc/index.xml b/src/it/MSITE-322/mymodule/src/site/xdoc/index.xml
new file mode 100644
index 0000000..c9e8709
--- /dev/null
+++ b/src/it/MSITE-322/mymodule/src/site/xdoc/index.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="ISO-8859-15"?>
+<document>
+	<properties>
+		<author>A. Gerodolle</author>
+		<title>Welcome on mymodule project</title>
+	</properties>
+	<body>
+
+		<section name="first section">
+			<p>
+				 this is the mymodule page in english 
+			</p>
+		</section>
+
+	</body>
+</document>
diff --git a/src/it/MSITE-322/pom.xml b/src/it/MSITE-322/pom.xml
new file mode 100755
index 0000000..a893f41
--- /dev/null
+++ b/src/it/MSITE-322/pom.xml
@@ -0,0 +1,54 @@
+<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>
+
+  <groupId>mygroupid</groupId>
+  <artifactId>multimodule</artifactId>
+  <version>1.0.0-SNAPSHOT</version>
+  <packaging>pom</packaging>
+  <name>Multimodule</name>
+
+  <url>http://my.url.com/</url>
+
+  <distributionManagement>
+    <site>
+      <id>website</id>
+      <name>MSITE-322 Web Site</name>
+      <url>file://@project.build.directory@/it/MSITE-322/deploy/</url>
+    </site>
+  </distributionManagement>
+
+  <build>
+    <pluginManagement>
+      <plugins>
+        <plugin>
+          <artifactId>maven-site-plugin</artifactId>
+          <version>@project.version@</version>
+           <configuration>
+             <locales>en,fr</locales>
+          </configuration>
+        </plugin>
+      </plugins>
+    </pluginManagement>
+  </build>
+
+  <reporting>
+    <plugins>
+      <plugin>
+        <artifactId>maven-project-info-reports-plugin</artifactId>
+        <version>2.3.1</version>
+        <reportSets>
+          <reportSet>
+            <reports>
+              <report>index</report>
+            </reports>
+          </reportSet>
+        </reportSets>
+      </plugin>
+    </plugins>
+  </reporting>
+
+  <modules>
+    <module>mymodule</module>
+  </modules>
+
+</project>
diff --git a/src/it/MSITE-322/src/site/fr/xdoc/index.xml b/src/it/MSITE-322/src/site/fr/xdoc/index.xml
new file mode 100644
index 0000000..b866702
--- /dev/null
+++ b/src/it/MSITE-322/src/site/fr/xdoc/index.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="ISO-8859-15"?>
+<document>
+	<properties>
+		<author>A. Gerodolle</author>
+		<title>Bienvenue sur le site du projet Multimodule</title>
+	</properties>
+	<body>
+
+		<section name="presentation">
+			<p>
+				ceci est la page en fran�ais du projet Multimodule
+			</p>
+		</section>
+
+	</body>
+</document>
diff --git a/src/it/MSITE-322/src/site/resources/css/maven-base.css b/src/it/MSITE-322/src/site/resources/css/maven-base.css
new file mode 100644
index 0000000..e11961e
--- /dev/null
+++ b/src/it/MSITE-322/src/site/resources/css/maven-base.css
@@ -0,0 +1,143 @@
+body {
+  margin: 0px;
+  padding: 0px;
+}
+img {
+  border:none;
+}
+table {
+  padding:0px;
+  width: 100%;
+  margin-left: -2px;
+  margin-right: -2px;
+}
+acronym {
+  cursor: help;
+  border-bottom: 1px dotted #feb;
+}
+table.bodyTable th, table.bodyTable td {
+  padding: 2px 4px 2px 4px;
+  vertical-align: top;
+}
+div.clear{
+  clear:both;
+  visibility: hidden;
+}
+div.clear hr{
+  display: none;
+}
+#bannerLeft, #bannerRight {
+  font-size: xx-large;
+  font-weight: bold;
+}
+#bannerLeft img, #bannerRight img {
+  margin: 0px;
+}
+.xleft, #bannerLeft img {
+  float:left;
+}
+.xright, #bannerRight {
+  float:right;
+}
+#banner {
+  padding: 0px;
+}
+#banner img {
+  border: none;
+}
+#breadcrumbs {
+  padding: 3px 10px 3px 10px;
+}
+#leftColumn {
+ width: 170px;
+ float:left;
+ overflow: auto;
+}
+#bodyColumn {
+  margin-right: 1.5em;
+  margin-left: 197px;
+}
+#legend {
+  padding: 8px 0 8px 0;
+}
+#navcolumn {
+  padding: 8px 4px 0 8px;
+}
+#navcolumn h5 {
+  margin: 0;
+  padding: 0;
+  font-size: small;
+}
+#navcolumn ul {
+  margin: 0;
+  padding: 0;
+  font-size: small;
+}
+#navcolumn li {
+  list-style-type: none;
+  background-image: none;
+  background-repeat: no-repeat;
+  background-position: 0 0.4em;
+  padding-left: 16px;
+  list-style-position: outside;
+  line-height: 1.2em;
+  font-size: smaller;
+}
+#navcolumn li.expanded {
+  background-image: url(../images/expanded.gif);
+}
+#navcolumn li.collapsed {
+  background-image: url(../images/collapsed.gif);
+}
+#poweredBy {
+  text-align: center;
+}
+#navcolumn img {
+  margin-top: 10px;
+  margin-bottom: 3px;
+}
+#poweredBy img {
+  display:block;
+  margin: 20px 0 20px 17px;
+}
+#search img {
+    margin: 0px;
+    display: block;
+}
+#search #q, #search #btnG {
+    border: 1px solid #999;
+    margin-bottom:10px;
+}
+#search form {
+    margin: 0px;
+}
+#lastPublished {
+  font-size: x-small;
+}
+.navSection {
+  margin-bottom: 2px;
+  padding: 8px;
+}
+.navSectionHead {
+  font-weight: bold;
+  font-size: x-small;
+}
+.section {
+  padding: 4px;
+}
+#footer {
+  padding: 3px 10px 3px 10px;
+  font-size: x-small;
+}
+#breadcrumbs {
+  font-size: x-small;
+  margin: 0pt;
+}
+.source {
+  padding: 12px;
+  margin: 1em 7px 1em 7px;
+}
+.source pre {
+  margin: 0px;
+  padding: 0px;
+}
diff --git a/src/it/MSITE-322/src/site/resources/css/maven-theme.css b/src/it/MSITE-322/src/site/resources/css/maven-theme.css
new file mode 100644
index 0000000..e742c2a
--- /dev/null
+++ b/src/it/MSITE-322/src/site/resources/css/maven-theme.css
@@ -0,0 +1,214 @@
+body {
+  margin: 0;
+  padding: 10px;
+  background: #ffffff;
+  color: #333;
+  font-family: helvetica,arial,verdana,sans-serif;
+}
+
+a:link, a:visited { 
+  text-decoration: none;
+  color: #0000FF;
+}
+a:active { 
+  text-decoration: none; 
+  color: #000000;
+}
+a:hover { 
+  text-decoration: underline;
+  color: #ff6600; 
+}
+
+td, select, input, li{
+  font-family: Verdana, Helvetica, Arial, sans-serif;
+  font-size: 12px;
+  color: #333333;
+}
+code{
+  font-size: 12px;
+}
+
+#legend li.externalLink {
+  background: url(../images/external.png) left top no-repeat;
+  padding-left: 18px;
+}
+a.externalLink, a.externalLink:link, a.externalLink:visited, a.externalLink:active, a.externalLink:hover {
+  background: url(../images/external.png) right center no-repeat;
+  padding-right: 18px;
+}
+#legend li.newWindow {
+  background: url(../images/newwindow.png) left top no-repeat;
+  padding-left: 18px;
+}
+a.newWindow, a.newWindow:link, a.newWindow:visited, a.newWindow:active, a.newWindow:hover {
+  background: url(../images/newwindow.png) right center no-repeat;
+  padding-right: 18px;
+}
+h2 {
+	font-size: 17px;
+	color: #333333;  
+}
+h3 {
+	padding: 4px 4px 4px 24px;
+	color: #666;
+	background-color: #ccc;
+	font-weight: bold;
+	font-size: 14px;
+	background-image: url(../images/h3.jpg);
+	background-repeat: no-repeat;
+	background-position: left bottom;
+}
+p {
+  font-family: Verdana, Helvetica, Arial, sans-serif;
+  line-height: 1.3em;
+  font-size: 12px;
+  color: #000;
+}
+
+#breadcrumbs {
+  height: 13px;
+  padding: 5px 10px 5px 20px;
+  background: #ffffff;
+  border-style: solid;
+  border-width: 5px;
+  border-color: #ff852c;
+}
+
+* html #breadcrumbs {
+  padding-bottom: 4px;
+}
+#leftColumn {
+	margin: 10px 0 10px 0;
+	border-top-color: #ccc;
+	border-top-style: solid;
+	border-top-width: 1px;
+	border-right-color: #ccc;
+	border-right-style: solid;
+	border-right-width: 1px;
+	border-bottom-color: #ccc;
+	border-bottom-style: solid;
+	border-bottom-width: 1px;
+	padding-right: 5px;
+	padding-left: 5px;
+}
+#navcolumn h5 {
+  font-size: smaller;
+  border-bottom: 1px solid #aaaaaa;
+  padding-top: 2px;
+  padding-left: 9px;
+  color: #ff6600;
+  background-image: url(../images/h5.jpg);
+  background-repeat: no-repeat;
+  background-position: left bottom;
+}
+
+table.bodyTable th {
+  color: white;
+  background-color: #bbb;
+  text-align: left;
+  font-weight: bold;
+}
+
+table.bodyTable th, table.bodyTable td {
+  font-size: 11px;
+}
+
+table.bodyTable tr.a {
+  background-color: #ddd;
+}
+
+table.bodyTable tr.b {
+  background-color: #eee;
+}
+
+.source {
+  border: 1px solid #999;
+  overflow: auto;
+}
+dt {
+	padding: 4px 4px 4px 24px;
+	color: #333333;
+	background-color: #ccc;
+	font-weight: bold;
+	font-size: 14px;
+	background-image: url(../images/h3.jpg);
+	background-repeat: no-repeat;
+	background-position: left bottom;
+}
+.subsectionTitle {
+	font-size: 13px;
+	font-weight: bold;
+	color: #666;
+
+}
+
+table {
+	font-size: 10px;
+}
+
+.xright a:link, .xright a:visited, .xright a:active {
+  text-decoration: none;
+  padding-left: 8px;
+  color: #666666;
+  font-size: 12px;
+  background-image: url(../images/fl_fg.png);
+  background-repeat: no-repeat;
+  background-position: left middle; 
+}
+.xright a:hover {
+  text-decoration: underline;
+  padding-left: 8px;
+  color: #ff6600;
+  font-size: 12px;
+  background-image: url(../images/fl_fg.png);
+  background-repeat: no-repeat;
+  background-position: left middle; 
+}
+#banner {
+  height: 43px;
+}
+#navcolumn ul {
+  margin: 5px 0 15px -0em;
+}
+#navcolumn ul a {
+  color: #333333;
+}
+#navcolumn ul a:hover {
+  color: red;
+}
+#intro {
+	border: solid #ccc 1px;
+	margin: 6px 0px 0px 0px;
+	padding: 10px 40px 10px 40px;
+}
+.subsection {
+	margin-left: 3px;
+	color: #333333;
+}
+
+.subsection p {
+	font-size: 12px;
+}
+#footer {
+  padding: 10px;
+  margin: 20px 0px 20px 0px;
+  border-top: solid #ccc 1px; 
+  color: #333333;
+}
+
+.errormark, .warningmark, .donemark, .infomark {
+  background: url(../images/icon_error_sml.gif) no-repeat;
+}
+
+.warningmark {
+  background-image: url(../images/icon_warning_sml.gif);
+}
+
+.donemark {
+  background-image: url(../images/icon_success_sml.gif);
+}
+
+.infomark {
+  background-image: url(../images/icon_info_sml.gif);
+}
+
diff --git a/src/it/MSITE-322/src/site/resources/css/print.css b/src/it/MSITE-322/src/site/resources/css/print.css
new file mode 100644
index 0000000..f09d546
--- /dev/null
+++ b/src/it/MSITE-322/src/site/resources/css/print.css
@@ -0,0 +1,7 @@
+#banner, #footer, #leftcol, #breadcrumbs, .docs #toc, .docs .courtesylinks, #leftColumn, #navColumn {
+	display: none !important;
+}
+#bodyColumn, body.docs div.docs {
+	margin: 0 !important;
+	border: none !important
+}
diff --git a/src/it/MSITE-322/src/site/resources/css/site.css b/src/it/MSITE-322/src/site/resources/css/site.css
new file mode 100644
index 0000000..62e99a3
--- /dev/null
+++ b/src/it/MSITE-322/src/site/resources/css/site.css
@@ -0,0 +1,5 @@
+a:link, a:visited {
+  text-decoration: none;
+  color: #6666FF;
+}
+
diff --git a/src/it/MSITE-322/src/site/site.xml b/src/it/MSITE-322/src/site/site.xml
new file mode 100644
index 0000000..f8a7e17
--- /dev/null
+++ b/src/it/MSITE-322/src/site/site.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="ISO-8859-15"?>
+
+<project name="${project.name}">
+	<version position="left" />
+	
+	<body>
+		<menu name="${project.name}">
+			<item name="Accueil" href="index.html" />
+			<item name="Contacts" href="contact.html" />
+			<item name="Retour" href="../index.html" />
+		</menu>
+		<menu name="Doc">
+			<item name="specs" href="doc.html" />
+			<item name="guide" href="gettingstarted.html" />
+		</menu>
+        <menu ref="modules"/> 
+	<menu ref="reports"/>
+	</body>
+</project>
diff --git a/src/it/MSITE-322/src/site/site_fr.xml b/src/it/MSITE-322/src/site/site_fr.xml
new file mode 100644
index 0000000..f8a7e17
--- /dev/null
+++ b/src/it/MSITE-322/src/site/site_fr.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="ISO-8859-15"?>
+
+<project name="${project.name}">
+	<version position="left" />
+	
+	<body>
+		<menu name="${project.name}">
+			<item name="Accueil" href="index.html" />
+			<item name="Contacts" href="contact.html" />
+			<item name="Retour" href="../index.html" />
+		</menu>
+		<menu name="Doc">
+			<item name="specs" href="doc.html" />
+			<item name="guide" href="gettingstarted.html" />
+		</menu>
+        <menu ref="modules"/> 
+	<menu ref="reports"/>
+	</body>
+</project>
diff --git a/src/it/MSITE-322/src/site/xdoc/index.xml b/src/it/MSITE-322/src/site/xdoc/index.xml
new file mode 100644
index 0000000..2ded0a7
--- /dev/null
+++ b/src/it/MSITE-322/src/site/xdoc/index.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="ISO-8859-15"?>
+<document>
+	<properties>
+		<author>A. Gerodolle</author>
+		<title>Welcome on multimodule project</title>
+	</properties>
+	<body>
+
+		<section name="first section">
+			<p>
+				 this is the multimodule page in english 
+			</p>
+		</section>
+
+	</body>
+</document>
diff --git a/src/it/MSITE-322/verify.bsh b/src/it/MSITE-322/verify.bsh
new file mode 100644
index 0000000..0d1f6f5
--- /dev/null
+++ b/src/it/MSITE-322/verify.bsh
@@ -0,0 +1,125 @@
+
+/*
+ * 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.
+ */
+
+import java.io.*;
+
+boolean result = true;
+
+// TODO: also verify module links in generated files!
+
+try
+{
+    // STAGING
+
+    File topLevelDirectory = new File( basedir, "target/staging" );
+    if ( !topLevelDirectory.exists() || !topLevelDirectory.isDirectory() )
+    {
+        System.err.println( "Staging directory '" + topLevelDirectory + "' is missing or not a directory." );
+        return false;
+    }
+
+    File moduleDirectory = new File( topLevelDirectory, "mymodule" );
+    if ( !moduleDirectory.exists() || !moduleDirectory.isDirectory() )
+    {
+        System.err.println( "Staging module directory '" + moduleDirectory + "' is missing or not a directory." );
+        return false;
+    }
+
+    File frDirectory = new File( topLevelDirectory, "fr" );
+    if ( !frDirectory.exists() || !frDirectory.isDirectory() )
+    {
+        System.err.println( "Staging fr directory '" + frDirectory + "' is missing or not a directory." );
+        return false;
+    }
+
+    File frModuleDirectory = new File( frDirectory, "mymodule" );
+    if ( !frModuleDirectory.exists() || !frModuleDirectory.isDirectory() )
+    {
+        System.err.println( "Staging fr module directory '" + frModuleDirectory + "' is missing or not a directory." );
+        return false;
+    }
+
+    // DEPLOY
+
+    topLevelDirectory = new File( basedir, "deploy" );
+    if ( !topLevelDirectory.exists() || !topLevelDirectory.isDirectory() )
+    {
+        System.err.println( "Deploy directory '" + topLevelDirectory + "' is missing or not a directory." );
+        return false;
+    }
+
+    moduleDirectory = new File( topLevelDirectory, "mymodule" );
+    if ( !moduleDirectory.exists() || !moduleDirectory.isDirectory() )
+    {
+        System.err.println( "Staging module directory '" + moduleDirectory + "' is missing or not a directory." );
+        return false;
+    }
+
+    frDirectory = new File( topLevelDirectory, "fr" );
+    if ( !frDirectory.exists() || !frDirectory.isDirectory() )
+    {
+        System.err.println( "Staging fr directory '" + frDirectory + "' is missing or not a directory." );
+        return false;
+    }
+
+    frModuleDirectory = new File( frDirectory, "mymodule" );
+    if ( !frModuleDirectory.exists() || !frModuleDirectory.isDirectory() )
+    {
+        System.err.println( "Staging fr module directory '" + frModuleDirectory + "' is missing or not a directory." );
+        return false;
+    }
+
+    // STAGE DEPLOY
+
+    topLevelDirectory = new File( topLevelDirectory, "staging" );
+    if ( !topLevelDirectory.exists() || !topLevelDirectory.isDirectory() )
+    {
+        System.err.println( "Stage deploy directory '" + topLevelDirectory + "' is missing or not a directory." );
+        return false;
+    }
+
+    moduleDirectory = new File( topLevelDirectory, "mymodule" );
+    if ( !moduleDirectory.exists() || !moduleDirectory.isDirectory() )
+    {
+        System.err.println( "Staging module directory '" + moduleDirectory + "' is missing or not a directory." );
+        return false;
+    }
+
+    frDirectory = new File( topLevelDirectory, "fr" );
+    if ( !frDirectory.exists() || !frDirectory.isDirectory() )
+    {
+        System.err.println( "Staging fr directory '" + frDirectory + "' is missing or not a directory." );
+        return false;
+    }
+
+    frModuleDirectory = new File( frDirectory, "mymodule" );
+    if ( !frModuleDirectory.exists() || !frModuleDirectory.isDirectory() )
+    {
+        System.err.println( "Staging fr module directory '" + frModuleDirectory + "' is missing or not a directory." );
+        return false;
+    }
+}
+catch ( IOException e )
+{
+    e.printStackTrace();
+    result = false;
+}
+
+return result;
diff --git a/src/it/MSITE-354/goals.txt b/src/it/MSITE-354/goals.txt
new file mode 100644
index 0000000..99d0605
--- /dev/null
+++ b/src/it/MSITE-354/goals.txt
@@ -0,0 +1 @@
+clean site:site
\ No newline at end of file
diff --git a/src/it/MSITE-354/pom.xml b/src/it/MSITE-354/pom.xml
new file mode 100644
index 0000000..21baab6
--- /dev/null
+++ b/src/it/MSITE-354/pom.xml
@@ -0,0 +1,70 @@
+<!--
+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/xsd/maven-4.0.0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <groupId>org.test</groupId>
+  <artifactId>MSITE-354</artifactId>
+  <version>1.0-SNAPSHOT</version>
+  <packaging>jar</packaging>
+
+  <name>MSITE-354</name>
+  <url>http://maven.apache.org</url>
+
+  <properties>
+    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+  </properties>
+
+  <dependencies>
+    <dependency>
+      <groupId>junit</groupId>
+      <artifactId>junit</artifactId>
+      <version>3.8.1</version>
+      <scope>test</scope>
+    </dependency>
+  </dependencies>
+
+  <build>
+    <plugins>
+      <plugin>
+        <artifactId>maven-site-plugin</artifactId>
+        <version>@project.version@</version>
+        <configuration>
+          <generateProjectInfo>false</generateProjectInfo>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
+  
+  <reporting>
+    <plugins>
+      <plugin>
+        <artifactId>maven-project-info-reports-plugin</artifactId>
+        <version>2.3.1</version>
+        <reportSets>
+          <reportSet>
+            <reports>
+              <report>dependencies</report>
+            </reports>
+          </reportSet>
+        </reportSets>
+      </plugin>
+    </plugins>
+  </reporting>
+</project>
diff --git a/src/it/MSITE-354/verify.bsh b/src/it/MSITE-354/verify.bsh
new file mode 100644
index 0000000..ba63f6c
--- /dev/null
+++ b/src/it/MSITE-354/verify.bsh
@@ -0,0 +1,54 @@
+
+/*
+ * 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.
+ */
+
+import java.io.*;
+
+boolean result = true;
+
+try
+{
+    File target = new File( basedir, "target" );
+    if ( !target.exists() || !target.isDirectory() )
+    {
+        System.err.println( "target directory is missing or not a directory." );
+        return false;
+    }
+
+    File site = new File( target, "site" );
+    if ( !site.exists() || !site.isDirectory() )
+    {
+        System.err.println( "site directory is missing or not a directory." );
+        return false;
+    }
+
+    File projectInfo = new File( site, "project-info.html" );
+    if ( projectInfo.exists() || projectInfo.isDirectory() )
+    {
+        System.err.println( "project-info.html file is present although it shouldn't, or is a directory." );
+        return false;
+    }
+}
+catch ( IOException e )
+{
+    e.printStackTrace();
+    result = false;
+}
+
+return result;
diff --git a/src/it/MSITE-456/child/pom.xml b/src/it/MSITE-456/child/pom.xml
new file mode 100644
index 0000000..029a0b9
--- /dev/null
+++ b/src/it/MSITE-456/child/pom.xml
@@ -0,0 +1,36 @@
+<?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>
+  <modelVersion>4.0.0</modelVersion>
+  
+  <parent>
+    <groupId>msite-456</groupId>
+    <artifactId>parent</artifactId>
+    <version>0.1</version>
+    <relativePath>../pom.xml</relativePath>
+  </parent>
+
+  <artifactId>child</artifactId>
+  <name>MSITE-456 - child</name>
+  <packaging>pom</packaging>
+
+</project>
diff --git a/src/it/MSITE-456/invoker.properties b/src/it/MSITE-456/invoker.properties
new file mode 100644
index 0000000..66a1bf4
--- /dev/null
+++ b/src/it/MSITE-456/invoker.properties
@@ -0,0 +1 @@
+invoker.maven.version = 3.0-
diff --git a/src/it/MSITE-456/pom.xml b/src/it/MSITE-456/pom.xml
new file mode 100644
index 0000000..8c90d18
--- /dev/null
+++ b/src/it/MSITE-456/pom.xml
@@ -0,0 +1,64 @@
+<?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>
+  <modelVersion>4.0.0</modelVersion>
+
+  <groupId>msite-456</groupId>
+  <artifactId>parent</artifactId>
+  <version>0.1</version>
+  <name>MSITE-456 - parent</name>
+  <packaging>pom</packaging>
+
+  <build>
+    <pluginManagement>
+      <plugins>
+        <plugin>
+          <groupId>org.apache.maven.plugins</groupId>
+          <artifactId>maven-site-plugin</artifactId>
+          <version>@project.version@</version>
+        </plugin>
+      </plugins>
+    </pluginManagement>
+  </build>
+
+  <reporting>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-project-info-reports-plugin</artifactId>
+        <version>2.3.1</version>
+        <reportSets>
+          <reportSet>
+            <reports>
+              <report>index</report>
+            </reports>
+          </reportSet>
+        </reportSets>
+      </plugin>
+    </plugins>
+  </reporting>
+
+  <modules>
+    <module>child</module>
+  </modules>
+
+</project>
diff --git a/src/it/MSITE-456/verify.bsh b/src/it/MSITE-456/verify.bsh
new file mode 100644
index 0000000..f54f9bc
--- /dev/null
+++ b/src/it/MSITE-456/verify.bsh
@@ -0,0 +1,93 @@
+
+/*
+ * 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.
+ */
+
+import java.io.*;
+import org.codehaus.plexus.util.*;
+
+boolean result = true;
+
+try
+{
+    File parentSiteDirectory = new File( basedir, "target/site" );
+    if ( !parentSiteDirectory.exists() || !parentSiteDirectory.isDirectory() )
+    {
+        System.err.println( "parent site is missing or not a directory." );
+        result = false;
+    }
+
+    File parentIndex = new File( parentSiteDirectory, "index.html" );
+    if ( !parentIndex.exists() || parentIndex.isDirectory() )
+    {
+        System.err.println( "no index file in parent or is a directory." );
+        result = false;
+    }
+
+    String content = FileUtils.fileRead( parentIndex, "UTF-8" );
+    int index1 = content.indexOf( "<a href=\"child/index.html\" title=\"MSITE-456 - child\">MSITE-456 - child</a>" );
+    int index2 = content.indexOf( "<a href=\"project-info.html\" title=\"Project Information\">Project Information</a>" );
+
+
+    if ( index1 < 0 || index2 < 0 )
+    {
+        System.err.println( "parent index.html has wrong navigation menu!" );
+        result = false;
+    }
+
+    // CHILD
+
+
+    File childDirectory = new File( basedir, "child" );
+    if ( !childDirectory.exists() || !childDirectory.isDirectory() )
+    {
+        System.err.println( "child is missing or not a directory." );
+        result = false;
+    }
+
+    File childSiteDirectory = new File( childDirectory, "target/site" );
+    if ( !childSiteDirectory.exists() || !childSiteDirectory.isDirectory() )
+    {
+        System.err.println( "child site is missing or not a directory." );
+        result = false;
+    }
+
+    File childIndex = new File( childSiteDirectory, "index.html" );
+    if ( !childIndex.exists() || childIndex.isDirectory() )
+    {
+        System.err.println( "no index file in child or is a directory." );
+        result = false;
+    }
+
+    content = FileUtils.fileRead( childIndex, "UTF-8" );
+    index1 = content.indexOf( "<a href=\"../index.html\" title=\"MSITE-456 - parent\">MSITE-456 - parent</a>" );
+    index2 = content.indexOf( "<a href=\"project-info.html\" title=\"Project Information\">Project Information</a>" );
+
+    if ( index1 < 0 || index2 < 0 )
+    {
+        System.err.println( "child index.html has wrong navigation menu!" );
+        result = false;
+    }
+}
+catch ( IOException e )
+{
+    e.printStackTrace();
+    result = false;
+}
+
+return result;
diff --git a/src/it/MSITE-458/first/pom.xml b/src/it/MSITE-458/first/pom.xml
new file mode 100644
index 0000000..00e5966
--- /dev/null
+++ b/src/it/MSITE-458/first/pom.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0"?>
+<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+  <modelVersion>4.0.0</modelVersion>
+  <parent>
+    <artifactId>aggregator</artifactId>
+    <groupId>org.example</groupId>
+    <version>0.0.1-SNAPSHOT</version>
+  </parent>
+  <artifactId>first</artifactId>
+  <version>0.0.1-SNAPSHOT</version>
+  <name>Should be first in Modules list</name>
+  
+    <dependencies>
+    <dependency>
+      <groupId>org.example</groupId>
+      <artifactId>second</artifactId>
+      <version>0.0.1-SNAPSHOT</version>
+    </dependency>
+  </dependencies>
+  
+</project>
diff --git a/src/it/MSITE-458/invoker.properties b/src/it/MSITE-458/invoker.properties
new file mode 100644
index 0000000..a410a34
--- /dev/null
+++ b/src/it/MSITE-458/invoker.properties
@@ -0,0 +1,3 @@
+invoker.goals.1 = clean
+invoker.goals.2 = install
+invoker.goals.3 = site
diff --git a/src/it/MSITE-458/pom.xml b/src/it/MSITE-458/pom.xml
new file mode 100644
index 0000000..5f0f98c
--- /dev/null
+++ b/src/it/MSITE-458/pom.xml
@@ -0,0 +1,47 @@
+<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/xsd/maven-4.0.0.xsd">
+
+  <modelVersion>4.0.0</modelVersion>
+  <groupId>org.example</groupId>
+  <artifactId>aggregator</artifactId>
+  <version>0.0.1-SNAPSHOT</version>
+  <packaging>pom</packaging>
+  <name>Has modules list</name>
+
+  <properties>
+    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+  </properties>
+
+  <modules>
+    <module>first</module>
+    <module>second</module>
+  </modules>
+
+  <build>
+    <pluginManagement>
+      <plugins>
+        <plugin>
+          <artifactId>maven-site-plugin</artifactId>
+          <version>@project.version@</version>
+        </plugin>
+      </plugins>
+    </pluginManagement>
+  </build>
+
+  <reporting>
+    <plugins>
+      <plugin>
+        <artifactId>maven-project-info-reports-plugin</artifactId>
+        <version>2.4</version>
+        <reportSets>
+          <reportSet>
+            <reports>
+              <report>index</report>
+            </reports>
+          </reportSet>
+        </reportSets>
+      </plugin>
+    </plugins>
+  </reporting>
+
+</project>
diff --git a/src/it/MSITE-458/second/pom.xml b/src/it/MSITE-458/second/pom.xml
new file mode 100644
index 0000000..35d45e6
--- /dev/null
+++ b/src/it/MSITE-458/second/pom.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0"?>
+<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+  <modelVersion>4.0.0</modelVersion>
+  <parent>
+    <artifactId>aggregator</artifactId>
+    <groupId>org.example</groupId>
+    <version>0.0.1-SNAPSHOT</version>
+  </parent>
+  <artifactId>second</artifactId>
+  <version>0.0.1-SNAPSHOT</version>
+  <name>Should be second in Modules list</name>
+</project>
diff --git a/src/it/MSITE-458/src/site/apt/index.apt b/src/it/MSITE-458/src/site/apt/index.apt
new file mode 100644
index 0000000..eedfe16
--- /dev/null
+++ b/src/it/MSITE-458/src/site/apt/index.apt
@@ -0,0 +1,32 @@
+ ------
+ Title
+ ------
+ Author
+ ------
+ Date
+ ------
+
+ ~~ 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.
+
+ ~~ NOTE: For help with the syntax of this file, see:
+ ~~ http://maven.apache.org/doxia/references/apt-format.html
+
+
+MSITE-458
+
+ This is a test.
diff --git a/src/it/MSITE-458/src/site/site.xml b/src/it/MSITE-458/src/site/site.xml
new file mode 100644
index 0000000..fb9d7cb
--- /dev/null
+++ b/src/it/MSITE-458/src/site/site.xml
@@ -0,0 +1,5 @@
+<project xmlns="http://maven.apache.org/DECORATION/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/DECORATION/1.0.0 http://maven.apache.org/xsd/decoration-1.0.0.xsd">
+  <body>
+    <menu ref="modules"/>
+  </body>
+</project>
diff --git a/src/it/MSITE-458/verify.bsh b/src/it/MSITE-458/verify.bsh
new file mode 100644
index 0000000..a42a4a2
--- /dev/null
+++ b/src/it/MSITE-458/verify.bsh
@@ -0,0 +1,64 @@
+
+/*
+ * 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.
+ */
+
+import java.io.*;
+import org.codehaus.plexus.util.*;
+
+boolean result = true;
+
+try
+{
+    final File siteDirectory = new File( basedir, "target/site" );
+    if ( !siteDirectory.exists() || !siteDirectory.isDirectory() )
+    {
+        System.err.println( "site is missing or not a directory." );
+        result = false;
+    }
+
+    File index = new File( siteDirectory, "index.html" );
+    if ( !index.exists() || index.isDirectory() )
+    {
+        System.err.println( "no index.html!" );
+        result = false;
+    }
+
+    String content = FileUtils.fileRead( index, "UTF-8" );
+    int index1 = content.indexOf( "Should be first in Modules list" );
+    int index2 = content.indexOf( "Should be second in Modules list" );
+
+    if ( index1 < 0 || index2 < 0 )
+    {
+        System.err.println( "index.html is missing module links!" );
+        result = false;
+    }
+
+    if ( index1 > index2 )
+    {
+        System.err.println( "wrong order of module links!" );
+        result = false;
+    }
+}
+catch ( IOException e )
+{
+    e.printStackTrace();
+    result = false;
+}
+
+return result;
diff --git a/src/it/MSITE-497/apps/app/pom.xml b/src/it/MSITE-497/apps/app/pom.xml
new file mode 100644
index 0000000..ed45a4d
--- /dev/null
+++ b/src/it/MSITE-497/apps/app/pom.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<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>foo.site</groupId>
+    <artifactId>apps</artifactId>
+    <version>1.0-SNAPSHOT</version>
+  </parent>
+  <artifactId>app</artifactId>
+  <name>app</name>
+
+  <dependencies>
+    <dependency>
+      <groupId>log4j</groupId>
+      <artifactId>log4j</artifactId>
+      <version>1.2.16</version>
+    </dependency>
+    <dependency>
+      <groupId>junit</groupId>
+      <artifactId>junit</artifactId>
+      <version>3.8.2</version>
+      <scope>test</scope>
+    </dependency>
+  </dependencies>
+</project>
diff --git a/src/it/MSITE-497/apps/app/src/main/java/org/apache/maven/App.java b/src/it/MSITE-497/apps/app/src/main/java/org/apache/maven/App.java
new file mode 100644
index 0000000..baa910c
--- /dev/null
+++ b/src/it/MSITE-497/apps/app/src/main/java/org/apache/maven/App.java
@@ -0,0 +1,12 @@
+package org.apache.maven;
+
+import org.apache.log4j.Logger;
+
+public class App 
+{
+    public static void main( String[] args )
+    {
+        Logger mylogger = Logger.getLogger("MyLogger");
+        mylogger.info( "Hello World!" );
+    }
+}
diff --git a/src/it/MSITE-497/apps/app/src/test/java/org/apache/maven/AppTest.java b/src/it/MSITE-497/apps/app/src/test/java/org/apache/maven/AppTest.java
new file mode 100644
index 0000000..9dd685d
--- /dev/null
+++ b/src/it/MSITE-497/apps/app/src/test/java/org/apache/maven/AppTest.java
@@ -0,0 +1,38 @@
+package org.apache.maven;
+
+import junit.framework.Test;
+import junit.framework.TestCase;
+import junit.framework.TestSuite;
+
+/**
+ * Unit test for simple App.
+ */
+public class AppTest 
+    extends TestCase
+{
+    /**
+     * Create the test case
+     *
+     * @param testName name of the test case
+     */
+    public AppTest( String testName )
+    {
+        super( testName );
+    }
+
+    /**
+     * @return the suite of tests being tested
+     */
+    public static Test suite()
+    {
+        return new TestSuite( AppTest.class );
+    }
+
+    /**
+     * Rigourous Test :-)
+     */
+    public void testApp()
+    {
+        assertTrue( true );
+    }
+}
diff --git a/src/it/MSITE-497/apps/pom.xml b/src/it/MSITE-497/apps/pom.xml
new file mode 100644
index 0000000..32fb174
--- /dev/null
+++ b/src/it/MSITE-497/apps/pom.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<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>foo.site</groupId>
+    <artifactId>parent</artifactId>
+    <version>1.0-SNAPSHOT</version>
+  </parent>
+  <artifactId>apps</artifactId>
+  <packaging>pom</packaging>
+  <name>apps</name>
+
+  <modules>
+    <module>app</module>
+  </modules>
+</project>
\ No newline at end of file
diff --git a/src/it/MSITE-497/invoker.properties b/src/it/MSITE-497/invoker.properties
new file mode 100644
index 0000000..9fa129a
--- /dev/null
+++ b/src/it/MSITE-497/invoker.properties
@@ -0,0 +1 @@
+invoker.goals=test-compile site
\ No newline at end of file
diff --git a/src/it/MSITE-497/pom.xml b/src/it/MSITE-497/pom.xml
new file mode 100644
index 0000000..9045123
--- /dev/null
+++ b/src/it/MSITE-497/pom.xml
@@ -0,0 +1,76 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<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>
+  <groupId>foo.site</groupId>
+  <artifactId>parent</artifactId>
+  <version>1.0-SNAPSHOT</version>
+  <packaging>pom</packaging>
+  <name>parent</name>
+
+  <modules>
+    <module>apps</module>
+  </modules>
+
+  <build>
+    <pluginManagement>
+      <plugins>
+        <plugin>
+          <groupId>org.apache.maven.plugins</groupId>
+          <artifactId>maven-compiler-plugin</artifactId>
+          <version>2.3.1</version>
+        </plugin>
+        <plugin>
+          <groupId>org.apache.maven.plugins</groupId>
+          <artifactId>maven-javadoc-plugin</artifactId>
+          <version>2.7</version>
+        </plugin>
+        <plugin>
+          <groupId>org.apache.maven.plugins</groupId>
+          <artifactId>maven-site-plugin</artifactId>
+          <!-- version used by maven 2.x, maven 3 handled by profile -->
+          <version>2.1.1</version>
+        </plugin>
+        <plugin>
+          <groupId>org.apache.maven.plugins</groupId>
+          <artifactId>maven-project-info-reports-plugin</artifactId>
+          <version>@projectInfoReportsPluginVersion@</version>
+        </plugin>
+      </plugins>
+    </pluginManagement>
+  </build>
+
+  <reporting>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-javadoc-plugin</artifactId>
+        <version>2.7</version>
+      </plugin>
+    </plugins>
+  </reporting>
+
+  <profiles>
+    <profile>
+      <id>maven-3</id>
+      <activation>
+        <file>
+          <!-- This employs that the basedir expression is only recognized 
+            by Maven 3.x (see MNG-2363) -->
+          <exists>${basedir}</exists>
+        </file>
+      </activation>
+      <build>
+        <pluginManagement>
+          <plugins>
+            <plugin>
+              <groupId>org.apache.maven.plugins</groupId>
+              <artifactId>maven-site-plugin</artifactId>
+              <version>@project.version@</version>
+            </plugin>
+          </plugins>
+        </pluginManagement>
+      </build>
+    </profile>
+  </profiles>
+</project>
\ No newline at end of file
diff --git a/src/it/MSITE-497/src/site/apt/index.apt b/src/it/MSITE-497/src/site/apt/index.apt
new file mode 100644
index 0000000..31b6246
--- /dev/null
+++ b/src/it/MSITE-497/src/site/apt/index.apt
@@ -0,0 +1,18 @@
+ -----
+ Title Here
+ -----
+ Author Here
+ -----
+ Date Here
+ -----
+
+Maven Site for your project
+
+ Congratulations! If you are looking at this page then you have successfully generated a
+ template site employing the site archetype and you have run:
+  
++-----+
+
+mvn site
+
++-----+
diff --git a/src/it/MSITE-497/src/site/site.xml b/src/it/MSITE-497/src/site/site.xml
new file mode 100644
index 0000000..b8d2ed8
--- /dev/null
+++ b/src/it/MSITE-497/src/site/site.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+
+<project name="Maven" xmlns="http://maven.apache.org/DECORATION/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:schemaLocation="http://maven.apache.org/DECORATION/1.0.0 http://maven.apache.org/xsd/decoration-1.0.0.xsd">
+  <body>
+    <links>
+      <item name="Maven" href="http://maven.apache.org/"/>
+    </links>
+
+    <menu name="Documentation">
+      <!--<item name="Xdoc Example" href="xdoc.html"/>-->
+    </menu>
+  </body>
+</project>
diff --git a/src/it/MSITE-504/invoker.properties b/src/it/MSITE-504/invoker.properties
new file mode 100644
index 0000000..87e5f42
--- /dev/null
+++ b/src/it/MSITE-504/invoker.properties
@@ -0,0 +1 @@
+invoker.goals=clean install site
\ No newline at end of file
diff --git a/src/it/MSITE-504/maven-plugin-consumer/pom.xml b/src/it/MSITE-504/maven-plugin-consumer/pom.xml
new file mode 100644
index 0000000..996d39f
--- /dev/null
+++ b/src/it/MSITE-504/maven-plugin-consumer/pom.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<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>msite-504</groupId>
+    <artifactId>parent</artifactId>
+    <version>1.0</version>
+    <relativePath>../pom.xml</relativePath>
+  </parent>
+
+  <artifactId>maven-plugin-consumer</artifactId>
+
+  <reporting>
+    <plugins>
+      <plugin>
+        <groupId>msite-504</groupId>
+        <artifactId>maven-plugin</artifactId>
+        <version>1.0</version>
+      </plugin>
+    </plugins>
+  </reporting>
+
+</project>
\ No newline at end of file
diff --git a/src/it/MSITE-504/maven-plugin/pom.xml b/src/it/MSITE-504/maven-plugin/pom.xml
new file mode 100644
index 0000000..cc7d47b
--- /dev/null
+++ b/src/it/MSITE-504/maven-plugin/pom.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<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>msite-504</groupId>
+    <artifactId>parent</artifactId>
+    <version>1.0</version>
+    <relativePath>../pom.xml</relativePath>
+  </parent>
+
+  <artifactId>maven-plugin</artifactId>
+
+  <packaging>maven-plugin</packaging>
+
+  <dependencies>
+    <dependency>
+      <groupId>org.apache.maven</groupId>
+      <artifactId>maven-plugin-api</artifactId>
+      <version>3.0-beta-3</version>
+    </dependency>
+  </dependencies>
+</project>
\ No newline at end of file
diff --git a/src/it/MSITE-504/maven-plugin/src/main/java/msite504/mavenplugin/MyMojo.java b/src/it/MSITE-504/maven-plugin/src/main/java/msite504/mavenplugin/MyMojo.java
new file mode 100644
index 0000000..a8cc63f
--- /dev/null
+++ b/src/it/MSITE-504/maven-plugin/src/main/java/msite504/mavenplugin/MyMojo.java
@@ -0,0 +1,48 @@
+package msite504.mavenplugin;
+
+/*
+ * Copyright 2001-2005 The Apache Software Foundation.
+ *
+ * Licensed 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.
+ */
+
+import org.apache.maven.plugin.AbstractMojo;
+import org.apache.maven.plugin.MojoExecutionException;
+
+import java.io.File;
+import java.io.FileWriter;
+import java.io.IOException;
+
+/**
+ * Goal which touches a timestamp file.
+ * 
+ * @goal touch
+ * @phase process-sources
+ */
+public class MyMojo
+    extends AbstractMojo
+{
+    /**
+     * Location of the file.
+     * 
+     * @parameter
+     * @required
+     */
+    private File outputDirectory;
+
+    public void execute()
+        throws MojoExecutionException
+    {
+        // do nothing
+    }
+}
diff --git a/src/it/MSITE-504/pom.xml b/src/it/MSITE-504/pom.xml
new file mode 100644
index 0000000..04607e6
--- /dev/null
+++ b/src/it/MSITE-504/pom.xml
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<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>
+  <groupId>msite-504</groupId>
+  <artifactId>parent</artifactId>
+  <version>1.0</version>
+  <packaging>pom</packaging>
+
+  <modules>
+    <module>maven-plugin</module>
+    <module>maven-plugin-consumer</module>
+  </modules>
+
+  <prerequisites>
+    <maven>2.2</maven>
+  </prerequisites>
+
+  <build>
+    <pluginManagement>
+      <plugins>
+        <plugin>
+          <groupId>org.apache.maven.plugins</groupId>
+          <artifactId>maven-site-plugin</artifactId>
+          <version>@project.version@</version>
+        </plugin>
+        <plugin>
+          <groupId>org.apache.maven.plugins</groupId>
+          <artifactId>maven-project-info-reports-plugin</artifactId>
+          <version>@projectInfoReportsPluginVersion@</version>
+        </plugin>
+      </plugins>
+    </pluginManagement>
+  </build>
+
+</project>
\ No newline at end of file
diff --git a/src/it/MSITE-506/invoker.properties b/src/it/MSITE-506/invoker.properties
new file mode 100644
index 0000000..87e5f42
--- /dev/null
+++ b/src/it/MSITE-506/invoker.properties
@@ -0,0 +1 @@
+invoker.goals=clean install site
\ No newline at end of file
diff --git a/src/it/MSITE-506/pom.xml b/src/it/MSITE-506/pom.xml
new file mode 100644
index 0000000..99103d0
--- /dev/null
+++ b/src/it/MSITE-506/pom.xml
@@ -0,0 +1,43 @@
+<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>
+  <groupId>mavenjavadoc</groupId>
+  <artifactId>testmaven3</artifactId>
+  <packaging>jar</packaging>
+  <version>1.0-SNAPSHOT</version>
+  <name>testmaven3</name>
+  <url>http://maven.apache.org</url>
+  <dependencies>
+    <dependency>
+      <groupId>junit</groupId>
+      <artifactId>junit</artifactId>
+      <version>3.8.1</version>
+      <scope>test</scope>
+    </dependency>
+  </dependencies>
+  <build>
+    <pluginManagement>
+      <plugins>
+        <plugin>
+          <groupId>org.apache.maven.plugins</groupId>
+          <artifactId>maven-site-plugin</artifactId>
+          <version>@pom.version@</version>
+        </plugin>
+      </plugins>
+    </pluginManagement>
+  </build>
+  <reporting>
+    <excludeDefaults>true</excludeDefaults>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-javadoc-plugin</artifactId>
+        <version>2.7</version>
+        <configuration>
+          <includeDependencySources>true</includeDependencySources>
+          <detectOfflineLinks>false</detectOfflineLinks>
+        </configuration>
+      </plugin>
+    </plugins>
+  </reporting>
+</project>
diff --git a/src/it/MSITE-506/src/main/java/mavenjavadoc/App.java b/src/it/MSITE-506/src/main/java/mavenjavadoc/App.java
new file mode 100644
index 0000000..7e07c42
--- /dev/null
+++ b/src/it/MSITE-506/src/main/java/mavenjavadoc/App.java
@@ -0,0 +1,13 @@
+package mavenjavadoc;
+
+/**
+ * Hello world!
+ *
+ */
+public class App 
+{
+    public static void main( String[] args )
+    {
+        System.out.println( "Hello World!" );
+    }
+}
diff --git a/src/it/MSITE-506/src/test/java/mavenjavadoc/AppTest.java b/src/it/MSITE-506/src/test/java/mavenjavadoc/AppTest.java
new file mode 100644
index 0000000..66afee7
--- /dev/null
+++ b/src/it/MSITE-506/src/test/java/mavenjavadoc/AppTest.java
@@ -0,0 +1,38 @@
+package mavenjavadoc;
+
+import junit.framework.Test;
+import junit.framework.TestCase;
+import junit.framework.TestSuite;
+
+/**
+ * Unit test for simple App.
+ */
+public class AppTest 
+    extends TestCase
+{
+    /**
+     * Create the test case
+     *
+     * @param testName name of the test case
+     */
+    public AppTest( String testName )
+    {
+        super( testName );
+    }
+
+    /**
+     * @return the suite of tests being tested
+     */
+    public static Test suite()
+    {
+        return new TestSuite( AppTest.class );
+    }
+
+    /**
+     * Rigourous Test :-)
+     */
+    public void testApp()
+    {
+        assertTrue( true );
+    }
+}
diff --git a/src/it/MSITE-507/invoker.properties b/src/it/MSITE-507/invoker.properties
new file mode 100644
index 0000000..201d3d6
--- /dev/null
+++ b/src/it/MSITE-507/invoker.properties
@@ -0,0 +1 @@
+invoker.goals=clean site
\ No newline at end of file
diff --git a/src/it/MSITE-507/pom.xml b/src/it/MSITE-507/pom.xml
new file mode 100644
index 0000000..4ef6db3
--- /dev/null
+++ b/src/it/MSITE-507/pom.xml
@@ -0,0 +1,750 @@
+<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>
+  
+  <groupId>my.group.id</groupId>
+  <artifactId>my-artifact-id</artifactId>
+  <version>1.0-SNAPSHOT</version>
+  
+  <properties> 
+    <maven.skin.version>1.1.8</maven.skin.version> 
+    <license.header.url>${project.licenses[0].url}.header</license.header.url> 
+ 
+    <coverage.haltOnFailure>false</coverage.haltOnFailure> 
+    <coverage.lineRate>1</coverage.lineRate> 
+    <coverage.branchRate>1</coverage.branchRate> 
+    <coverage.packageLineRate>50</coverage.packageLineRate> 
+    <coverage.packageBranchRate>50</coverage.packageBranchRate> 
+    <coverage.totalLineRate>50</coverage.totalLineRate> 
+    <coverage.totalBranchRate>50</coverage.totalBranchRate> 
+ 
+    <guava.version>r03</guava.version> 
+ 
+    <jaxb.version>2.2.1</jaxb.version> 
+    <jetty.version>6.1.25</jetty.version> 
+    <jackson.version>1.6.0</jackson.version> 
+  </properties>   
+  
+  <dependencyManagement> 
+    <dependencies> 
+      <dependency> 
+        <groupId>com.intellij</groupId> 
+        <artifactId>annotations</artifactId> 
+        <version>7.0.3</version> 
+      </dependency> 
+ 
+      <dependency> 
+        <groupId>joda-time</groupId> 
+        <artifactId>joda-time</artifactId> 
+        <version>1.6.2</version> 
+      </dependency> 
+ 
+ 
+      <dependency> 
+        <groupId>com.google.guava</groupId> 
+        <artifactId>guava-concurrent</artifactId> 
+        <version>${guava.version}</version> 
+      </dependency> 
+      <dependency> 
+        <groupId>com.google.guava</groupId> 
+        <artifactId>guava-collections</artifactId> 
+        <version>${guava.version}</version> 
+      </dependency> 
+      <dependency> 
+        <groupId>com.google.guava</groupId> 
+        <artifactId>guava-io</artifactId> 
+        <version>${guava.version}</version> 
+      </dependency> 
+      <dependency> 
+        <groupId>com.google.guava</groupId> 
+        <artifactId>guava-primitives</artifactId> 
+        <version>${guava.version}</version> 
+      </dependency> 
+      <dependency> 
+        <groupId>com.google.guava</groupId> 
+        <artifactId>guava-base</artifactId> 
+        <version>${guava.version}</version> 
+      </dependency> 
+ 
+      <dependency> 
+        <groupId>commons-configuration</groupId> 
+        <artifactId>commons-configuration</artifactId> 
+        <version>1.6</version> 
+      </dependency> 
+      <dependency> 
+        <groupId>commons-io</groupId> 
+        <artifactId>commons-io</artifactId> 
+        <version>1.4</version> 
+      </dependency> 
+      <dependency> 
+        <groupId>commons-codec</groupId> 
+        <artifactId>commons-codec</artifactId> 
+        <version>1.4</version> 
+      </dependency> 
+      <dependency> 
+        <groupId>commons-logging</groupId> 
+        <artifactId>commons-logging</artifactId> 
+        <version>1.1.1</version> 
+      </dependency> 
+      <dependency> 
+        <groupId>commons-lang</groupId> 
+        <artifactId>commons-lang</artifactId> 
+        <version>2.5</version> 
+      </dependency> 
+      <dependency> 
+        <groupId>commons-cli</groupId> 
+        <artifactId>commons-cli</artifactId> 
+        <version>1.2</version> 
+      </dependency> 
+ 
+      <dependency> 
+        <groupId>log4j</groupId> 
+        <artifactId>log4j</artifactId> 
+        <version>1.2.16</version> 
+      </dependency> 
+      <dependency> 
+        <groupId>org.slf4j</groupId> 
+        <artifactId>slf4j-api</artifactId> 
+        <version>1.6.1</version> 
+      </dependency> 
+      <dependency> 
+        <groupId>org.slf4j</groupId> 
+        <artifactId>slf4j-log4j12</artifactId> 
+        <version>1.6.1</version> 
+      </dependency> 
+ 
+      <dependency> 
+        <groupId>com.cedarsoft</groupId> 
+        <artifactId>guice-annotations</artifactId> 
+        <version>2.0.1</version> 
+      </dependency> 
+      <dependency> 
+        <groupId>com.google.inject</groupId> 
+        <artifactId>guice</artifactId> 
+        <version>2.0</version> 
+      </dependency> 
+      <dependency> 
+        <groupId>com.google.inject.extensions</groupId> 
+        <artifactId>guice-multibindings</artifactId> 
+        <version>2.0</version> 
+      </dependency> 
+      <dependency> 
+        <groupId>com.google.inject.extensions</groupId> 
+        <artifactId>guice-servlet</artifactId> 
+        <version>2.0</version> 
+      </dependency> 
+      <dependency> 
+        <groupId>aopalliance</groupId> 
+        <artifactId>aopalliance</artifactId> 
+        <version>1.0</version> 
+      </dependency> 
+ 
+      <dependency> 
+        <groupId>org.springframework</groupId> 
+        <artifactId>spring</artifactId> 
+        <version>2.5.6.SEC02</version> 
+      </dependency> 
+ 
+      <dependency> 
+        <groupId>javax.ws.rs</groupId> 
+        <artifactId>jsr311-api</artifactId> 
+        <version>1.1.1</version> 
+      </dependency> 
+ 
+      <dependency> 
+        <groupId>com.sun.xml.bind</groupId> 
+        <artifactId>jaxb-xjc</artifactId> 
+        <version>${jaxb.version}</version> 
+      </dependency> 
+      <dependency> 
+        <groupId>com.sun.xml.bind</groupId> 
+        <artifactId>jaxb-impl</artifactId> 
+        <version>${jaxb.version}</version> 
+      </dependency> 
+      <dependency> 
+        <groupId>javax.xml.bind</groupId> 
+        <artifactId>jaxb-api</artifactId> 
+        <version>${jaxb.version}</version> 
+      </dependency> 
+ 
+      <dependency> 
+        <groupId>com.thoughtworks.xstream</groupId> 
+        <artifactId>xstream</artifactId> 
+        <version>1.3.1</version> 
+      </dependency> 
+      <dependency> 
+        <groupId>xpp3</groupId> 
+        <artifactId>xpp3_min</artifactId> 
+        <version>1.1.4c</version> 
+      </dependency> 
+      <dependency> 
+        <groupId>org.jdom</groupId> 
+        <artifactId>jdom</artifactId> 
+        <version>1.1</version> 
+      </dependency> 
+      <dependency> 
+        <groupId>org.codehaus.staxmate</groupId> 
+        <artifactId>staxmate</artifactId> 
+        <version>2.0.0</version> 
+        <exclusions> 
+          <exclusion> 
+            <groupId>stax</groupId> 
+            <artifactId>stax-api</artifactId> 
+          </exclusion> 
+        </exclusions> 
+      </dependency> 
+      <dependency> 
+        <groupId>org.codehaus.woodstox</groupId> 
+        <artifactId>woodstox-core-asl</artifactId> 
+        <version>4.0.8</version> 
+        <exclusions> 
+          <exclusion> 
+            <groupId>stax</groupId> 
+            <artifactId>stax-api</artifactId> 
+          </exclusion> 
+        </exclusions> 
+      </dependency> 
+      <dependency> 
+        <groupId>jaxen</groupId> 
+        <artifactId>jaxen</artifactId> 
+        <version>1.1.1</version> 
+      </dependency> 
+ 
+ 
+      <dependency> 
+        <groupId>com.jgoodies</groupId> 
+        <artifactId>binding</artifactId> 
+        <version>2.0.6</version> 
+      </dependency> 
+      <dependency> 
+        <groupId>com.jgoodies</groupId> 
+        <artifactId>forms</artifactId> 
+        <version>1.2.1</version> 
+      </dependency> 
+ 
+      <dependency> 
+        <groupId>net.java.dev.glazedlists</groupId> 
+        <artifactId>glazedlists_java15</artifactId> 
+        <version>1.8.0</version> 
+      </dependency> 
+ 
+      <dependency> 
+        <groupId>org.hsqldb</groupId> 
+        <artifactId>hsqldb</artifactId> 
+        <version>2.0.0</version> 
+      </dependency> 
+ 
+      <dependency> 
+        <groupId>org.easytesting</groupId> 
+        <artifactId>fest-reflect</artifactId> 
+        <version>1.2</version> 
+      </dependency> 
+      <dependency> 
+        <groupId>org.easytesting</groupId> 
+        <artifactId>fest-assert</artifactId> 
+        <version>1.3</version> 
+        <scope>test</scope> 
+      </dependency> 
+      <dependency> 
+        <groupId>xmlunit</groupId> 
+        <artifactId>xmlunit</artifactId> 
+        <version>1.3</version> 
+        <scope>test</scope> 
+      </dependency> 
+      <dependency> 
+        <groupId>junit</groupId> 
+        <artifactId>junit</artifactId> 
+        <version>4.8.1</version> 
+      </dependency> 
+      <dependency> 
+        <groupId>org.easymock</groupId> 
+        <artifactId>easymockclassextension</artifactId> 
+        <version>3.0</version> 
+        <scope>test</scope> 
+      </dependency> 
+      <dependency> 
+        <groupId>org.easymock</groupId> 
+        <artifactId>easymock</artifactId> 
+        <version>3.0</version> 
+        <scope>test</scope> 
+      </dependency> 
+      <dependency> 
+        <groupId>org.mockito</groupId> 
+        <artifactId>mockito-all</artifactId> 
+        <version>1.8.5</version> 
+        <scope>test</scope> 
+      </dependency> 
+ 
+      <dependency> 
+        <groupId>org.mortbay.jetty</groupId> 
+        <artifactId>jetty</artifactId> 
+        <version>${jetty.version}</version> 
+      </dependency> 
+      <dependency> 
+        <groupId>org.mortbay.jetty</groupId> 
+        <artifactId>jetty-util</artifactId> 
+        <version>${jetty.version}</version> 
+      </dependency> 
+      <dependency> 
+        <groupId>org.mortbay.jetty</groupId> 
+        <artifactId>jetty-management</artifactId> 
+        <version>${jetty.version}</version> 
+      </dependency> 
+ 
+      <dependency> 
+        <groupId>org.codehaus.jackson</groupId> 
+        <artifactId>jackson-core-asl</artifactId> 
+        <version>${jackson.version}</version> 
+      </dependency> 
+      <dependency> 
+        <groupId>org.codehaus.jackson</groupId> 
+        <artifactId>jackson-mapper-asl</artifactId> 
+        <version>${jackson.version}</version> 
+      </dependency> 
+      <dependency> 
+        <groupId>org.codehaus.jackson</groupId> 
+        <artifactId>jackson-xc</artifactId> 
+        <version>${jackson.version}</version> 
+      </dependency> 
+      <dependency> 
+        <groupId>org.codehaus.jackson</groupId> 
+        <artifactId>jackson-jaxrs</artifactId> 
+        <version>${jackson.version}</version> 
+      </dependency> 
+ 
+    </dependencies> 
+  </dependencyManagement> 
+ 
+     <build> 
+    <pluginManagement> 
+      <plugins> 
+        <plugin> 
+          <groupId>org.apache.maven.plugins</groupId> 
+          <artifactId>maven-clean-plugin</artifactId> 
+          <version>2.4.1</version> 
+        </plugin> 
+        <plugin> 
+          <groupId>org.apache.maven.plugins</groupId> 
+          <artifactId>maven-compiler-plugin</artifactId> 
+          <version>2.3.2</version> 
+          <configuration> 
+            <source>1.5</source> 
+            <target>1.5</target> 
+            <encoding>utf-8</encoding> 
+          </configuration> 
+        </plugin> 
+        <plugin> 
+          <groupId>org.apache.maven.plugins</groupId> 
+          <artifactId>maven-resources-plugin</artifactId> 
+          <version>2.4.3</version> 
+          <configuration> 
+            <encoding>utf-8</encoding> 
+          </configuration> 
+        </plugin> 
+        <plugin> 
+          <groupId>org.apache.maven.plugins</groupId> 
+          <artifactId>maven-surefire-plugin</artifactId> 
+          <version>2.6</version> 
+        </plugin> 
+        <plugin> 
+          <groupId>org.apache.maven.plugins</groupId> 
+          <artifactId>maven-jar-plugin</artifactId> 
+          <version>2.3.1</version> 
+        </plugin> 
+        <plugin> 
+          <groupId>org.apache.maven.plugins</groupId> 
+          <artifactId>maven-war-plugin</artifactId> 
+          <version>2.1</version> 
+        </plugin> 
+        <plugin> 
+          <groupId>org.apache.maven.plugins</groupId> 
+          <artifactId>maven-source-plugin</artifactId> 
+          <version>2.1.2</version> 
+        </plugin> 
+        <plugin> 
+          <groupId>org.apache.maven.plugins</groupId> 
+          <artifactId>maven-assembly-plugin</artifactId> 
+          <version>2.2-beta-5</version> 
+        </plugin> 
+        <plugin> 
+          <groupId>org.apache.maven.plugins</groupId> 
+          <artifactId>maven-dependency-plugin</artifactId> 
+          <version>2.1</version> 
+        </plugin> 
+        <plugin> 
+          <groupId>org.apache.maven.plugins</groupId> 
+          <artifactId>maven-scm-plugin</artifactId> 
+          <version>1.4</version> 
+        </plugin> 
+        <plugin> 
+          <groupId>org.apache.maven.plugins</groupId> 
+          <artifactId>maven-clover-plugin</artifactId> 
+          <version>2.4</version> 
+        </plugin> 
+        <plugin> 
+          <groupId>org.apache.maven.plugins</groupId> 
+          <artifactId>maven-changes-plugin</artifactId> 
+          <version>2.3</version> 
+        </plugin> 
+        <plugin> 
+          <groupId>org.codehaus.mojo</groupId> 
+          <artifactId>minijar-maven-plugin</artifactId> 
+          <version>1.0-alpha-3</version> 
+        </plugin> 
+        <plugin> 
+          <groupId>org.codehaus.mojo</groupId> 
+          <artifactId>exec-maven-plugin</artifactId> 
+          <version>1.2</version> 
+        </plugin> 
+        <plugin> 
+          <groupId>org.codehaus.mojo</groupId> 
+          <artifactId>jxr-maven-plugin</artifactId> 
+          <version>2.2</version> 
+        </plugin> 
+        <plugin> 
+          <groupId>org.apache.maven.plugins</groupId> 
+          <artifactId>maven-javadoc-plugin</artifactId> 
+          <version>2.7</version> 
+          <configuration> 
+            <encoding>utf-8</encoding> 
+            <stylesheetfile>javadoc/cedarsoft.css</stylesheetfile> 
+          </configuration> 
+          <dependencies> 
+            <dependency> 
+              <groupId>com.cedarsoft.maven</groupId> 
+              <artifactId>cedarsoft-skin</artifactId> 
+              <version>${maven.skin.version}</version> 
+            </dependency> 
+          </dependencies> 
+        </plugin> 
+        <plugin> 
+          <groupId>org.codehaus.mojo</groupId> 
+          <artifactId>clirr-maven-plugin</artifactId> 
+          <version>2.2.2</version> 
+        </plugin> 
+        <plugin> 
+          <groupId>org.apache.maven.plugins</groupId> 
+          <artifactId>maven-install-plugin</artifactId> 
+          <version>2.3.1</version> 
+        </plugin> 
+        <plugin> 
+          <groupId>org.apache.maven.plugins</groupId> 
+          <artifactId>maven-deploy-plugin</artifactId> 
+          <version>2.5</version> 
+        </plugin> 
+        <plugin> 
+          <groupId>org.apache.maven.plugins</groupId> 
+          <artifactId>maven-release-plugin</artifactId> 
+          <version>2.0</version> 
+          <configuration> 
+            <autoVersionSubmodules>true</autoVersionSubmodules> 
+            <commitByProject>true</commitByProject> 
+            <preparationGoals>clean install</preparationGoals> 
+          </configuration> 
+        </plugin> 
+ 
+        <plugin> 
+          <groupId>org.apache.maven.plugins</groupId> 
+          <artifactId>maven-site-plugin</artifactId> 
+          <version>@pom.version@</version>
+        </plugin> 
+        <plugin> 
+          <groupId>org.apache.maven.plugins</groupId> 
+          <artifactId>maven-checkstyle-plugin</artifactId> 
+          <version>2.5</version> 
+        </plugin> 
+        <plugin> 
+          <groupId>org.apache.maven.plugins</groupId> 
+          <artifactId>maven-project-info-reports-plugin</artifactId> 
+          <version>2.2</version> 
+        </plugin> 
+        <plugin> 
+          <groupId>org.apache.maven.plugins</groupId> 
+          <artifactId>maven-jxr-plugin</artifactId> 
+          <version>2.2</version> 
+          <configuration> 
+            <aggregate>true</aggregate> 
+            <inputEncoding>utf-8</inputEncoding> 
+            <outputEncoding>utf-8</outputEncoding> 
+            <stylesheet>xref/cedarsoft.css</stylesheet> 
+          </configuration> 
+          <dependencies> 
+            <dependency> 
+              <groupId>com.cedarsoft.maven</groupId> 
+              <artifactId>cedarsoft-skin</artifactId> 
+              <version>${maven.skin.version}</version> 
+            </dependency> 
+          </dependencies> 
+        </plugin> 
+
+ 
+        <plugin> 
+          <groupId>org.codehaus.mojo</groupId> 
+          <artifactId>cobertura-maven-plugin</artifactId> 
+          <version>2.4</version> 
+          <dependencies> 
+            <dependency> 
+              <groupId>asm</groupId> 
+              <artifactId>asm-tree</artifactId> 
+              <version>3.2</version> 
+            </dependency> 
+          </dependencies> 
+        </plugin> 
+      </plugins> 
+    </pluginManagement> 
+    
+    <plugins> 
+      <plugin> 
+        <groupId>org.apache.maven.plugins</groupId> 
+        <artifactId>maven-source-plugin</artifactId> 
+        <executions> 
+          <execution> 
+            <goals> 
+              <goal>jar</goal> 
+            </goals> 
+          </execution> 
+        </executions> 
+      </plugin> 
+ 
+      <plugin> 
+        <groupId>org.apache.maven.plugins</groupId> 
+        <artifactId>maven-jar-plugin</artifactId> 
+        <executions> 
+          <execution> 
+            <goals> 
+              <goal>test-jar</goal> 
+            </goals> 
+          </execution> 
+        </executions> 
+      </plugin> 
+ 
+      <!--This is a duplicate definition to avoid problems with the jxr plugin that else can't resolve the style sheet--> 
+      <plugin> 
+        <groupId>org.apache.maven.plugins</groupId> 
+        <artifactId>maven-jxr-plugin</artifactId> 
+        <version>2.2</version> 
+        <dependencies> 
+          <dependency> 
+            <groupId>com.cedarsoft.maven</groupId> 
+            <artifactId>cedarsoft-skin</artifactId> 
+            <version>${maven.skin.version}</version> 
+          </dependency> 
+        </dependencies> 
+      </plugin> 
+ 
+      <plugin> 
+        <groupId>com.mycila.maven-license-plugin</groupId> 
+        <artifactId>maven-license-plugin</artifactId> 
+        <version>1.8.0</version> 
+        <configuration> 
+          <strictCheck>true</strictCheck> 
+          <header>${license.header.url}</header> 
+          <failIfMissing>true</failIfMissing> 
+          <aggregate>true</aggregate> 
+          <excludes> 
+            <exclude>**/.idea/**</exclude> 
+            <exclude>**/dist/**</exclude> 
+            <exclude>**/build/**</exclude> 
+            <exclude>**/src/test/resources/**</exclude> 
+            <exclude>src/site/resources/gpl*</exclude> 
+            <exclude>src/site/resources/apache*</exclude> 
+            <exclude>src/site/resources/commercial*</exclude> 
+            <exclude>**/.repository/**</exclude> 
+            <exclude>**/*.md5</exclude> 
+            <exclude>**/*.sha1</exclude> 
+            <exclude>**/*.tiff</exclude> 
+            <exclude>**/*.tif</exclude> 
+            <exclude>**/*.cr2</exclude> 
+            <exclude>**/*.xcf</exclude> 
+          </excludes> 
+ 
+          <mapping> 
+            <fx>JAVADOC_STYLE</fx> 
+            <ufraw>XML_STYLE</ufraw> 
+          </mapping> 
+        </configuration> 
+        <executions> 
+          <execution> 
+            <goals> 
+              <goal>check</goal> 
+            </goals> 
+          </execution> 
+        </executions> 
+      </plugin> 
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-site-plugin</artifactId>
+      </plugin>      
+    </plugins> 
+  </build>     
+
+  <dependencies>
+    <!--Guava-->
+    <dependency>
+      <groupId>com.google.guava</groupId>
+      <artifactId>guava-io</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>com.google.guava</groupId>
+      <artifactId>guava-collections</artifactId>
+    </dependency>
+
+    <!--NotNull Annotations-->
+    <dependency>
+      <groupId>com.intellij</groupId>
+      <artifactId>annotations</artifactId>
+      <scope>provided</scope>
+    </dependency>
+
+    <!--Test Dependencies-->
+    <dependency>
+      <groupId>com.cedarsoft.commons</groupId>
+      <artifactId>test-utils</artifactId>
+      <version>3.0.0</version>
+      <scope>test</scope>
+    </dependency>
+    <dependency>
+      <groupId>junit</groupId>
+      <artifactId>junit</artifactId>
+    </dependency>
+  </dependencies>
+
+  <mailingLists>
+    <mailingList>
+      <name>Mail Support</name>
+      <post>info@cedarsoft.com</post>
+    </mailingList>
+  </mailingLists>
+  
+  <reporting>
+
+    <plugins> 
+      <plugin> 
+        <groupId>org.apache.maven.plugins</groupId> 
+        <artifactId>maven-javadoc-plugin</artifactId> 
+        <version>2.7</version> 
+        <configuration> 
+          <encoding>utf-8</encoding> 
+          <stylesheetfile>javadoc/cedarsoft.css</stylesheetfile> 
+          <links> 
+            <link>http://java.sun.com/javase/6/docs/api/</link> 
+          </links> 
+        </configuration> 
+        <reportSets> 
+          <reportSet> 
+            <id>aggregate</id> 
+            <reports> 
+              <report>aggregate</report> 
+            </reports> 
+          </reportSet> 
+        </reportSets> 
+      </plugin> 
+      
+      
+ 
+      <plugin> 
+        <groupId>org.codehaus.mojo</groupId> 
+        <artifactId>javancss-maven-plugin</artifactId> 
+        <version>2.0</version> 
+      </plugin> 
+ 
+      <plugin> 
+        <groupId>org.apache.maven.plugins</groupId> 
+        <artifactId>maven-jxr-plugin</artifactId> 
+        <version>2.1</version> 
+        <configuration> 
+          <aggregate>true</aggregate> 
+          <inputEncoding>utf-8</inputEncoding> 
+          <outputEncoding>utf-8</outputEncoding> 
+          <stylesheet>xref/cedarsoft.css</stylesheet> 
+        </configuration> 
+      </plugin> 
+ 
+      <plugin> 
+        <groupId>org.apache.maven.plugins</groupId> 
+        <artifactId>maven-pmd-plugin</artifactId> 
+        <version>2.5</version> 
+        <configuration> 
+          <linkXRef>true</linkXRef> 
+          <sourceEncoding>utf-8</sourceEncoding> 
+          <minimumTokens>100</minimumTokens> 
+          <targetJdk>1.6</targetJdk> 
+        </configuration> 
+      </plugin> 
+ 
+      <!--<plugin>--> 
+        <!--<groupId>org.apache.maven.plugins</groupId>--> 
+        <!--<artifactId>maven-checkstyle-plugin</artifactId>--> 
+        <!--<version>2.5</version>--> 
+        <!--<configuration>--> 
+          <!--<configLocation>http://www.cedarsoft.org/checkstyle/cedarsoft.xml</configLocation>--> 
+        <!--</configuration>--> 
+      <!--</plugin>--> 
+ 
+      <plugin> 
+        <groupId>org.codehaus.mojo</groupId> 
+        <artifactId>taglist-maven-plugin</artifactId> 
+        <version>2.4</version> 
+        <configuration> 
+          <aggregate>true</aggregate> 
+          <encoding>utf-8</encoding> 
+        </configuration> 
+      </plugin> 
+ 
+      <plugin> 
+        <groupId>org.codehaus.mojo</groupId> 
+        <artifactId>jdepend-maven-plugin</artifactId> 
+        <version>2.0-beta-2</version> 
+      </plugin> 
+ 
+      <plugin> 
+        <groupId>org.apache.maven.plugins</groupId> 
+        <artifactId>maven-site-plugin</artifactId> 
+        <configuration> 
+          <locales>en</locales> 
+          <inputEncoding>utf-8</inputEncoding> 
+          <outputEncoding>utf-8</outputEncoding> 
+        </configuration> 
+      </plugin>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-project-info-reports-plugin</artifactId>
+        <version>2.2</version>
+        <configuration>
+          <dependencyDetailsEnabled>false</dependencyDetailsEnabled>
+          <dependencyLocationsEnabled>false</dependencyLocationsEnabled>
+        </configuration>
+      </plugin>       
+ 
+      <plugin> 
+        <groupId>org.codehaus.mojo</groupId> 
+        <artifactId>clirr-maven-plugin</artifactId> 
+        <version>2.2.2</version> 
+        <configuration> 
+          <minSeverity>info</minSeverity> 
+          <failOnError>false</failOnError> 
+        </configuration> 
+      </plugin> 
+ 
+      <plugin> 
+        <groupId>org.codehaus.mojo</groupId> 
+        <artifactId>cobertura-maven-plugin</artifactId> 
+        <version>2.4</version> 
+      </plugin> 
+ 
+      <plugin> 
+        <groupId>org.apache.maven.plugins</groupId> 
+        <artifactId>maven-surefire-report-plugin</artifactId> 
+        <version>2.6</version> 
+      </plugin> 
+ 
+      <plugin> 
+        <groupId>org.codehaus.mojo</groupId> 
+        <artifactId>taglist-maven-plugin</artifactId> 
+        <version>2.4</version> 
+      </plugin> 
+    </plugins> 
+
+  </reporting>
+
+</project>
diff --git a/src/it/MSITE-507/src/main/java/my/group/id/App.java b/src/it/MSITE-507/src/main/java/my/group/id/App.java
new file mode 100644
index 0000000..b8598a9
--- /dev/null
+++ b/src/it/MSITE-507/src/main/java/my/group/id/App.java
@@ -0,0 +1,10 @@
+package my.group.id;
+
+/**
+ * Hello world!
+ */
+public class App {
+  public static void main( String[] args ) {
+    System.out.println( "Hello World!" );
+  }
+}
diff --git a/src/it/MSITE-507/src/test/java/my/group/id/AppTest.java b/src/it/MSITE-507/src/test/java/my/group/id/AppTest.java
new file mode 100644
index 0000000..442942e
--- /dev/null
+++ b/src/it/MSITE-507/src/test/java/my/group/id/AppTest.java
@@ -0,0 +1,18 @@
+package my.group.id;
+
+import org.junit.*;
+
+import static org.junit.Assert.*;
+import static org.hamcrest.CoreMatchers.*;
+import static org.junit.matchers.JUnitMatchers.*;
+
+/**
+ * Unit test for simple App.
+ */
+public class AppTest  {
+
+  @Test
+  public void testApp() {
+    assertTrue( true );
+  }
+}
diff --git a/src/it/MSITE-512/invoker.properties b/src/it/MSITE-512/invoker.properties
new file mode 100644
index 0000000..66a1bf4
--- /dev/null
+++ b/src/it/MSITE-512/invoker.properties
@@ -0,0 +1 @@
+invoker.maven.version = 3.0-
diff --git a/src/it/MSITE-512/parent-usage-test/pom.xml b/src/it/MSITE-512/parent-usage-test/pom.xml
new file mode 100644
index 0000000..95302ff
--- /dev/null
+++ b/src/it/MSITE-512/parent-usage-test/pom.xml
@@ -0,0 +1,67 @@
+<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>
+  <artifactId>parent-usage-test-MSITE-512</artifactId>
+  <packaging>jar</packaging>
+  <version>1.0-SNAPSHOT</version>
+  <name>parent-usage-test</name>
+  <url>http://url</url>
+  <parent>
+    <groupId>test</groupId>
+    <artifactId>parent-MSITE-512</artifactId>
+    <version>1.0-SNAPSHOT</version>
+    <relativePath>../pom.xml</relativePath>
+  </parent>
+  <dependencies>
+    <dependency>
+      <groupId>junit</groupId>
+      <artifactId>junit</artifactId>
+      <version>3.8.1</version>
+      <scope>test</scope>
+    </dependency>
+  </dependencies>
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-site-plugin</artifactId>
+        <version>@project.version@</version>
+      </plugin>
+      
+    </plugins>
+  </build>
+  
+  <reporting>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-javadoc-plugin</artifactId>
+        <version>2.7</version>
+        <reportSets>
+          <reportSet>
+            <id>single</id>
+            <configuration>
+              <excludePackageNames>org.apache.maven.titi</excludePackageNames>
+              <groups>
+                <group>
+                  <title>Core Packages</title>
+                  <packages>org.apache.maven.toto</packages>
+                </group>
+              </groups>
+            </configuration>
+            <reports>
+              <report>javadoc</report>
+            </reports>
+          </reportSet>
+        </reportSets>
+      </plugin>    
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-jxr-plugin</artifactId>
+        <version>2.1</version>
+      </plugin>
+    
+    </plugins>  
+  </reporting>
+  
+</project>
diff --git a/src/it/MSITE-512/parent-usage-test/src/main/java/App.java b/src/it/MSITE-512/parent-usage-test/src/main/java/App.java
new file mode 100644
index 0000000..b1126a4
--- /dev/null
+++ b/src/it/MSITE-512/parent-usage-test/src/main/java/App.java
@@ -0,0 +1,12 @@
+
+/**
+ * Hello world!
+ *
+ */
+public class App 
+{
+    public static void main( String[] args )
+    {
+        System.out.println( "Hello World!" );
+    }
+}
diff --git a/src/it/MSITE-512/parent-usage-test/src/main/java/org/apache/maven/titi/AppFoo.java b/src/it/MSITE-512/parent-usage-test/src/main/java/org/apache/maven/titi/AppFoo.java
new file mode 100644
index 0000000..51f8ce2
--- /dev/null
+++ b/src/it/MSITE-512/parent-usage-test/src/main/java/org/apache/maven/titi/AppFoo.java
@@ -0,0 +1,12 @@
+package org.apache.maven.titi;
+/**
+ * Hello world!
+ *
+ */
+public class AppFoo 
+{
+    public static void main( String[] args )
+    {
+        System.out.println( "Hello World!" );
+    }
+}
diff --git a/src/it/MSITE-512/parent-usage-test/src/main/java/org/apache/maven/toto/App.java b/src/it/MSITE-512/parent-usage-test/src/main/java/org/apache/maven/toto/App.java
new file mode 100644
index 0000000..0fdbc1a
--- /dev/null
+++ b/src/it/MSITE-512/parent-usage-test/src/main/java/org/apache/maven/toto/App.java
@@ -0,0 +1,12 @@
+package org.apache.maven.toto;
+/**
+ * Hello world!
+ *
+ */
+public class App 
+{
+    public static void main( String[] args )
+    {
+        System.out.println( "Hello World!" );
+    }
+}
diff --git a/src/it/MSITE-512/parent-usage-test/src/main/javadoc/stylesheet.css b/src/it/MSITE-512/parent-usage-test/src/main/javadoc/stylesheet.css
new file mode 100644
index 0000000..d32c06e
--- /dev/null
+++ b/src/it/MSITE-512/parent-usage-test/src/main/javadoc/stylesheet.css
@@ -0,0 +1,32 @@
+/* Javadoc style sheet */
+/* MSITE-484 style sheet */
+
+/* Define colors, fonts and other style attributes here to override the defaults */
+
+/* Page background color */
+body { background-color: #FFEEEE; color:#000000 }
+
+/* Headings */
+h1 { font-size: 145% }
+h2 { font-size: 130% }
+h3 { font-size: 115% }
+
+/* Table colors */
+.TableHeadingColor     { background: #CCCCFF; color:#000000 } /* Dark mauve */
+.TableSubHeadingColor  { background: #EEEEFF; color:#000000 } /* Light mauve */
+.TableRowColor         { background: #FFFFFF; color:#000000 } /* White */
+
+/* Font used in left-hand frame lists */
+.FrameTitleFont   { font-size: 100%; font-family: Helvetica, Arial, sans-serif; color:#000000 }
+.FrameHeadingFont { font-size:  90%; font-family: Helvetica, Arial, sans-serif; color:#000000 }
+.FrameItemFont    { font-size:  90%; font-family: Helvetica, Arial, sans-serif; color:#000000 }
+
+/* Navigation bar fonts and colors */
+.NavBarCell1    { background-color:#EEEEFF; color:#000000} /* Light mauve */
+.NavBarCell1Rev { background-color:#00008B; color:#FFFFFF} /* Dark Blue */
+.NavBarFont1    { font-family: Arial, Helvetica, sans-serif; color:#000000;color:#000000;}
+.NavBarFont1Rev { font-family: Arial, Helvetica, sans-serif; color:#FFFFFF;color:#FFFFFF;}
+
+.NavBarCell2    { font-family: Arial, Helvetica, sans-serif; background-color:#FFFFFF; color:#000000}
+.NavBarCell3    { font-family: Arial, Helvetica, sans-serif; background-color:#FFFFFF; color:#000000}
+
diff --git a/src/it/MSITE-512/parent-usage-test/src/test/java/AppTest.java b/src/it/MSITE-512/parent-usage-test/src/test/java/AppTest.java
new file mode 100644
index 0000000..54c3614
--- /dev/null
+++ b/src/it/MSITE-512/parent-usage-test/src/test/java/AppTest.java
@@ -0,0 +1,36 @@
+import junit.framework.Test;
+import junit.framework.TestCase;
+import junit.framework.TestSuite;
+
+/**
+ * Unit test for simple App.
+ */
+public class AppTest 
+    extends TestCase
+{
+    /**
+     * Create the test case
+     *
+     * @param testName name of the test case
+     */
+    public AppTest( String testName )
+    {
+        super( testName );
+    }
+
+    /**
+     * @return the suite of tests being tested
+     */
+    public static Test suite()
+    {
+        return new TestSuite( AppTest.class );
+    }
+
+    /**
+     * Rigourous Test :-)
+     */
+    public void testApp()
+    {
+        assertTrue( true );
+    }
+}
diff --git a/src/it/MSITE-512/pom.xml b/src/it/MSITE-512/pom.xml
new file mode 100644
index 0000000..0b7c94e
--- /dev/null
+++ b/src/it/MSITE-512/pom.xml
@@ -0,0 +1,26 @@
+<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>
+  <groupId>test</groupId>
+  <artifactId>parent-MSITE-512</artifactId>
+  <packaging>pom</packaging>
+  <version>1.0-SNAPSHOT</version>
+  <name>parent</name>
+  <url>http://url</url>
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-site-plugin</artifactId>
+        <version>@project.version@</version>
+      </plugin>
+    </plugins>
+  </build>
+
+  <modules>
+    <module>parent-usage-test</module>
+  </modules>
+  <reporting>
+    <excludeDefaults>true</excludeDefaults>
+  </reporting>
+</project>
diff --git a/src/it/MSITE-512/verify.groovy b/src/it/MSITE-512/verify.groovy
new file mode 100644
index 0000000..82f12a3
--- /dev/null
+++ b/src/it/MSITE-512/verify.groovy
@@ -0,0 +1,28 @@
+
+/*
+ * 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.
+ */
+
+assert new File( basedir, 'parent-usage-test/target/site/xref/index.html' ).exists();
+assert new File( basedir, 'parent-usage-test/target/site/xref-test/index.html' ).exists();
+assert new File( basedir, 'parent-usage-test/target/site/apidocs' ).exists();
+
+assert new File( basedir, 'parent-usage-test/target/site/apidocs' ).exists();
+assert !new File( basedir, 'parent-usage-test/target/site/apidocs/org/apache/maven/titi/AppFoo.html' ).exists();
+
+return true;
\ No newline at end of file
diff --git a/src/it/MSITE-537/invoker.properties b/src/it/MSITE-537/invoker.properties
new file mode 100644
index 0000000..ed44244
--- /dev/null
+++ b/src/it/MSITE-537/invoker.properties
@@ -0,0 +1,2 @@
+invoker.goals.1 = clean
+invoker.goals.2 = site:site site:stage-deploy
diff --git a/src/it/MSITE-537/parent/pom.xml b/src/it/MSITE-537/parent/pom.xml
new file mode 100644
index 0000000..46d6d16
--- /dev/null
+++ b/src/it/MSITE-537/parent/pom.xml
@@ -0,0 +1,49 @@
+<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/xsd/maven-4.0.0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <groupId>msite537</groupId>
+  <artifactId>parent</artifactId>
+  <version>1.0-SNAPSHOT</version>
+  <packaging>pom</packaging>
+  <name>MSITE-537 :: Parent</name>
+
+  <distributionManagement>
+    <site>
+      <id>website</id>
+      <url>file://@project.build.directory@/it/MSITE-537/</url>
+    </site>
+  </distributionManagement>
+
+  <build>
+    <pluginManagement>
+      <plugins>
+        <plugin>
+          <artifactId>maven-site-plugin</artifactId>
+          <version>@project.version@</version>
+        </plugin>
+      </plugins>
+    </pluginManagement>
+  </build>
+
+  <reporting>
+    <plugins>
+      <plugin>
+        <artifactId>maven-project-info-reports-plugin</artifactId>
+        <version>2.3.1</version>
+        <reportSets>
+          <reportSet>
+            <reports>
+              <report>index</report>
+            </reports>
+          </reportSet>
+        </reportSets>
+      </plugin>
+    </plugins>
+  </reporting>
+
+  <modules>
+    <module>../</module>
+  </modules>
+
+</project>
diff --git a/src/it/MSITE-537/pom.xml b/src/it/MSITE-537/pom.xml
new file mode 100644
index 0000000..d107a38
--- /dev/null
+++ b/src/it/MSITE-537/pom.xml
@@ -0,0 +1,16 @@
+<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/xsd/maven-4.0.0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <parent>
+    <groupId>msite537</groupId>
+    <artifactId>parent</artifactId>
+    <version>1.0-SNAPSHOT</version>
+    <relativePath>parent/pom.xml</relativePath>
+  </parent>
+
+  <artifactId>module</artifactId>
+  <packaging>pom</packaging>
+  <name>MSITE-537</name>
+
+</project>
diff --git a/src/it/MSITE-537/verify.bsh b/src/it/MSITE-537/verify.bsh
new file mode 100644
index 0000000..b74f1ef
--- /dev/null
+++ b/src/it/MSITE-537/verify.bsh
@@ -0,0 +1,49 @@
+
+/*
+ * 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.
+ */
+
+import java.io.*;
+import org.codehaus.plexus.util.*;
+
+boolean result = true;
+
+try
+{
+    final File stageDeployDirectory = new File( basedir, "staging" );
+    if ( !stageDeployDirectory.exists() || !stageDeployDirectory.isDirectory() )
+    {
+        System.err.println( "stageDeployDirectory is missing or not a directory." );
+        return false;
+    }
+
+    // module directory
+    final File moduleDirectory = new File( stageDeployDirectory, "module" );
+    if ( !moduleDirectory.exists() || !moduleDirectory.isDirectory() )
+    {
+        System.err.println( "stage deploy moduleDirectory is missing or not a directory." );
+        return false;
+    }
+}
+catch ( IOException e )
+{
+    e.printStackTrace();
+    result = false;
+}
+
+return result;
diff --git a/src/it/MSITE-548/invoker.properties b/src/it/MSITE-548/invoker.properties
new file mode 100644
index 0000000..ac36451
--- /dev/null
+++ b/src/it/MSITE-548/invoker.properties
@@ -0,0 +1,2 @@
+invoker.goals.1 = clean
+invoker.goals.2 = site:site site:deploy
diff --git a/src/it/MSITE-548/module1/pom.xml b/src/it/MSITE-548/module1/pom.xml
new file mode 100644
index 0000000..1ab53a9
--- /dev/null
+++ b/src/it/MSITE-548/module1/pom.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<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.maven.plugins.its.msite548</groupId>
+    <artifactId>root</artifactId>
+    <version>1.0-SNAPSHOT</version>
+	<relativePath>../root</relativePath>
+  </parent>
+
+  <artifactId>module1</artifactId>
+
+  <name>MSITE-548 - module 1</name>
+
+</project>
diff --git a/src/it/MSITE-548/module2/pom.xml b/src/it/MSITE-548/module2/pom.xml
new file mode 100644
index 0000000..0f5b409
--- /dev/null
+++ b/src/it/MSITE-548/module2/pom.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<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.maven.plugins.its.msite548</groupId>
+    <artifactId>root</artifactId>
+    <version>1.0-SNAPSHOT</version>
+	<relativePath>../root</relativePath>	
+  </parent>
+
+  <artifactId>module-2</artifactId>
+
+  <name>MSITE-548 - module 2</name>
+
+</project>
diff --git a/src/it/MSITE-548/pom.xml b/src/it/MSITE-548/pom.xml
new file mode 100644
index 0000000..347378c
--- /dev/null
+++ b/src/it/MSITE-548/pom.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<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>
+
+  <groupId>org.apache.maven.plugins.its.msite548</groupId>
+  <artifactId>aggregator</artifactId>
+  <packaging>pom</packaging>
+  <name>MSITE-548 - aggregator</name>
+  <version>1.0-SNAPSHOT</version>
+
+  <url>http://dummy.com/junk/</url>
+
+  <distributionManagement>
+    <site>
+      <id>MSITE-548</id>
+      <url>file://@project.build.directory@/it/MSITE-548/deploy/MSITE-548/junk/</url>
+    </site>
+  </distributionManagement>
+
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-site-plugin</artifactId>
+        <version>@project.version@</version>
+      </plugin>
+    </plugins>
+  </build>
+
+  <reporting>
+    <plugins>
+      <plugin>
+        <artifactId>maven-project-info-reports-plugin</artifactId>
+        <version>2.3.1</version>
+        <reportSets>
+          <reportSet>
+            <reports>
+              <report>index</report>
+            </reports>
+          </reportSet>
+        </reportSets>
+      </plugin>
+    </plugins>
+  </reporting>
+
+  <modules>
+    <module>root</module>
+  </modules>
+
+</project>
diff --git a/src/it/MSITE-548/root/pom.xml b/src/it/MSITE-548/root/pom.xml
new file mode 100644
index 0000000..722e177
--- /dev/null
+++ b/src/it/MSITE-548/root/pom.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<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>
+
+  <groupId>org.apache.maven.plugins.its.msite548</groupId>
+  <artifactId>root</artifactId>
+  <packaging>pom</packaging>
+  <name>MSITE-548 - root</name>
+  <version>1.0-SNAPSHOT</version>
+
+  <url>http://dummy.com/</url>
+
+  <distributionManagement>
+    <site>
+      <id>MSITE-548</id>
+      <url>file://@project.build.directory@/it/MSITE-548/deploy/MSITE-548/</url>
+    </site>
+  </distributionManagement>
+
+  <build>
+    <pluginManagement>
+      <plugins>
+		<plugin>
+			<groupId>org.apache.maven.plugins</groupId>
+			<artifactId>maven-site-plugin</artifactId>
+			<version>@project.version@</version>
+		</plugin>
+      </plugins>
+    </pluginManagement>
+  </build>
+
+  <reporting>
+    <plugins>
+      <plugin>
+        <artifactId>maven-project-info-reports-plugin</artifactId>
+        <version>2.3.1</version>
+        <reportSets>
+          <reportSet>
+            <reports>
+              <report>index</report>
+            </reports>
+          </reportSet>
+        </reportSets>
+      </plugin>
+    </plugins>
+  </reporting>
+
+  <modules>
+    <module>../module1</module>
+    <module>../module2</module>
+  </modules>
+
+</project>
diff --git a/src/it/MSITE-548/verify.bsh b/src/it/MSITE-548/verify.bsh
new file mode 100644
index 0000000..13117ae
--- /dev/null
+++ b/src/it/MSITE-548/verify.bsh
@@ -0,0 +1,69 @@
+
+/*
+ * 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.
+ */
+
+import java.io.*;
+import org.codehaus.plexus.util.*;
+
+boolean result = true;
+
+try
+{
+    File deployDirectory = new File( basedir, "deploy" );
+    if ( !deployDirectory.exists() || !deployDirectory.isDirectory() )
+    {
+        System.err.println( "deploy directory is missing or not a directory:" + deployDirectory.getAbsolutePath() );
+        return false;
+    }
+
+    File rootDirectory = new File( deployDirectory, "MSITE-548" );
+    if ( !rootDirectory.exists() || !rootDirectory.isDirectory() )
+    {
+        System.err.println( "rootDirectory file is missing or not a directory." );
+        return false;
+    }
+
+    File junkDirectory = new File( rootDirectory, "junk" );
+    if ( !junkDirectory.exists() || !junkDirectory.isDirectory() )
+    {
+        System.err.println( "junkDirectory file is missing or not a directory." );
+        return false;
+    }
+
+    File module1Directory = new File( deployDirectory, "module1" );
+    if ( !module1Directory.exists() || !module1Directory.isDirectory() )
+    {
+        System.err.println( "module1Directory file is missing or not a directory." );
+        return false;
+    }
+
+    File module2Directory = new File( deployDirectory, "module-2" );
+    if ( !module2Directory.exists() || !module2Directory.isDirectory() )
+    {
+        System.err.println( "module2Directory file is missing or not a directory." );
+        return false;
+    }
+}
+catch ( IOException e )
+{
+    e.printStackTrace();
+    result = false;
+}
+
+return result;
diff --git a/src/it/MSITE-550/pom.xml b/src/it/MSITE-550/pom.xml
new file mode 100644
index 0000000..acad180
--- /dev/null
+++ b/src/it/MSITE-550/pom.xml
@@ -0,0 +1,30 @@
+<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/xsd/maven-4.0.0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <groupId>test</groupId>
+  <artifactId>MSITE-550</artifactId>
+  <version>1.0-SNAPSHOT</version>
+  <packaging>pom</packaging>
+
+  <build>
+    <plugins>
+       <plugin>
+        <artifactId>maven-site-plugin</artifactId>
+        <version>@project.version@</version>
+        <configuration>
+          <templateFile>${basedir}/src/site/site.vm</templateFile>
+          <generateReports>false</generateReports>
+          <attributes>
+             <att1>val1</att1>
+          </attributes>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
+
+  <properties>
+    <dummy>value</dummy>
+  </properties>
+
+</project>
diff --git a/src/it/MSITE-550/src/site/apt/index.apt b/src/it/MSITE-550/src/site/apt/index.apt
new file mode 100644
index 0000000..2bf535c
--- /dev/null
+++ b/src/it/MSITE-550/src/site/apt/index.apt
@@ -0,0 +1,17 @@
+ -----
+ Title Here
+ -----
+ Author Here
+ -----
+ -----
+
+Maven Site for your project
+
+ Congratulations! If you are looking at this page then you have successfully generated a
+ template site employing the site archetype and you have run:
+  
++-----+
+
+mvn site
+
++-----+
diff --git a/src/it/MSITE-550/src/site/site.vm b/src/it/MSITE-550/src/site/site.vm
new file mode 100644
index 0000000..37f988b
--- /dev/null
+++ b/src/it/MSITE-550/src/site/site.vm
@@ -0,0 +1,2 @@
+dummy=$dummy
+att1=$att1
diff --git a/src/it/MSITE-550/src/site/site.xml b/src/it/MSITE-550/src/site/site.xml
new file mode 100644
index 0000000..b8d2ed8
--- /dev/null
+++ b/src/it/MSITE-550/src/site/site.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+
+<project name="Maven" xmlns="http://maven.apache.org/DECORATION/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:schemaLocation="http://maven.apache.org/DECORATION/1.0.0 http://maven.apache.org/xsd/decoration-1.0.0.xsd">
+  <body>
+    <links>
+      <item name="Maven" href="http://maven.apache.org/"/>
+    </links>
+
+    <menu name="Documentation">
+      <!--<item name="Xdoc Example" href="xdoc.html"/>-->
+    </menu>
+  </body>
+</project>
diff --git a/src/it/MSITE-550/verify.bsh b/src/it/MSITE-550/verify.bsh
new file mode 100644
index 0000000..27d44a7
--- /dev/null
+++ b/src/it/MSITE-550/verify.bsh
@@ -0,0 +1,51 @@
+
+/*
+ * 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.
+ */
+
+import java.io.*;
+import org.codehaus.plexus.util.*;
+
+boolean result = true;
+
+try
+{
+    File index = new File( basedir, "target/site/index.html" );
+    if ( !index.exists() || index.isDirectory() )
+    {
+        System.err.println( "no index file or is a directory." );
+        result = false;
+    }
+
+    String content = FileUtils.fileRead( index, "UTF-8" );
+    int index1 = content.indexOf( "dummy=value" );
+    int index2 = content.indexOf( "att1=val1" );
+
+    if ( index1 < 0 || index2 < 0 )
+    {
+        System.err.println( "index.html not resolved!" );
+        result = false;
+    }
+}
+catch ( IOException e )
+{
+    e.printStackTrace();
+    result = false;
+}
+
+return result;
diff --git a/src/it/MSITE-566/invoker.properties b/src/it/MSITE-566/invoker.properties
new file mode 100644
index 0000000..bec7cd0
--- /dev/null
+++ b/src/it/MSITE-566/invoker.properties
@@ -0,0 +1 @@
+invoker.goals.1 = clean site:site site:attach-descriptor
diff --git a/src/it/MSITE-566/pom.xml b/src/it/MSITE-566/pom.xml
new file mode 100644
index 0000000..40342f7
--- /dev/null
+++ b/src/it/MSITE-566/pom.xml
@@ -0,0 +1,30 @@
+<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/xsd/maven-4.0.0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <groupId>msite566</groupId>
+  <artifactId>test</artifactId>
+  <version>1.0-SNAPSHOT</version>
+  <packaging>pom</packaging>
+  <name>MSITE-566 IT</name>
+
+  <properties>
+    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+    <menu.title>Documentation</menu.title>
+  </properties>
+
+  <build>
+    <pluginManagement>
+      <plugins>
+        <plugin>
+          <artifactId>maven-site-plugin</artifactId>
+          <version>@project.version@</version>
+          <configuration>
+            <generateReports>false</generateReports>
+          </configuration>
+        </plugin>
+      </plugins>
+    </pluginManagement>
+  </build>
+
+</project>
diff --git a/src/it/MSITE-566/src/site/apt/index.apt b/src/it/MSITE-566/src/site/apt/index.apt
new file mode 100644
index 0000000..31b6246
--- /dev/null
+++ b/src/it/MSITE-566/src/site/apt/index.apt
@@ -0,0 +1,18 @@
+ -----
+ Title Here
+ -----
+ Author Here
+ -----
+ Date Here
+ -----
+
+Maven Site for your project
+
+ Congratulations! If you are looking at this page then you have successfully generated a
+ template site employing the site archetype and you have run:
+  
++-----+
+
+mvn site
+
++-----+
diff --git a/src/it/MSITE-566/src/site/site.xml b/src/it/MSITE-566/src/site/site.xml
new file mode 100644
index 0000000..e50cc9c
--- /dev/null
+++ b/src/it/MSITE-566/src/site/site.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+
+<project name="${project.name}" xmlns="http://maven.apache.org/DECORATION/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:schemaLocation="http://maven.apache.org/DECORATION/1.0.0 http://maven.apache.org/xsd/decoration-1.0.0.xsd">
+  <body>
+    <menu name="${menu.title}">
+      <item name="Home" href="index.html"/>
+      <!-- a comment -->
+    </menu>
+  </body>
+</project>
diff --git a/src/it/MSITE-566/verify.bsh b/src/it/MSITE-566/verify.bsh
new file mode 100644
index 0000000..0c978ae
--- /dev/null
+++ b/src/it/MSITE-566/verify.bsh
@@ -0,0 +1,82 @@
+
+/*
+ * 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.
+ */
+
+import java.io.*;
+import org.codehaus.plexus.util.*;
+
+boolean result = true;
+
+try
+{
+    File target = new File( basedir, "target" );
+    if ( !target.exists() || !target.isDirectory() )
+    {
+        System.err.println( "target file is missing or not a directory." );
+        result = false;
+    }
+
+    File siteDescriptor = new File( target, "test-1.0-SNAPSHOT-site.xml" );
+    if ( !siteDescriptor.exists() || siteDescriptor.isDirectory() )
+    {
+        System.err.println( "siteDescriptor file is missing from target or is a directory." );
+        result = false;
+    }
+
+    String content = FileUtils.fileRead( siteDescriptor, "UTF-8" );
+    int index1 = content.indexOf( "name=\"${project.name}\"" );
+    int index2 = content.indexOf( "<menu name=\"${menu.title}\">" );
+    int index3 = content.indexOf( "<!-- a comment -->" );
+    if ( index1 < 0 || index2 < 0 || index3 < 0 )
+    {
+        System.err.println( "attached site descriptor has been modified!" );
+        result = false;
+    }
+
+
+    File site = new File( target, "site" );
+    if ( !site.exists() || !site.isDirectory() )
+    {
+        System.err.println( "site file is missing or not a directory." );
+        result = false;
+    }
+
+    File index = new File( site, "index.html" );
+    if ( !index.exists() || index.isDirectory() )
+    {
+        System.err.println( "index.html is missing from target or is a directory." );
+        result = false;
+    }
+
+    content = FileUtils.fileRead( index, "UTF-8" );
+    index1 = content.indexOf( "MSITE-566 IT" );
+    index2 = content.indexOf( "<h5>Documentation</h5>" );
+    if ( index1 < 0 || index2 < 0 )
+    {
+        System.err.println( "generated site has unresolved properties!" );
+        result = false;
+    }
+}
+catch ( IOException e )
+{
+    e.printStackTrace();
+    result = false;
+}
+
+return result;
diff --git a/src/it/emma-plugin-it/a/pom.xml b/src/it/emma-plugin-it/a/pom.xml
new file mode 100644
index 0000000..4214999
--- /dev/null
+++ b/src/it/emma-plugin-it/a/pom.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<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/xsd/maven-4.0.0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+  <parent>
+    <groupId>org.apache.maven.plugins.site.its</groupId>
+    <artifactId>emma-plugin-it</artifactId>
+    <version>1.0-SNAPSHOT</version>
+    <relativePath>../pom.xml</relativePath>
+  </parent>
+
+  <artifactId>it03-a</artifactId>
+
+  <name>EMMA plugin :: Integration test 03 :: A</name>
+</project>
diff --git a/src/it/emma-plugin-it/a/src/main/java/hello/Hello.java b/src/it/emma-plugin-it/a/src/main/java/hello/Hello.java
new file mode 100644
index 0000000..18ef7c6
--- /dev/null
+++ b/src/it/emma-plugin-it/a/src/main/java/hello/Hello.java
@@ -0,0 +1,10 @@
+package hello;
+
+public class Hello
+{
+    public String hello( String name )
+    {
+        final String myName = name == null ? "world" : name;
+        return "Hello " + myName + "!";
+    }
+}
diff --git a/src/it/emma-plugin-it/a/src/test/java/hello/HelloTest.java b/src/it/emma-plugin-it/a/src/test/java/hello/HelloTest.java
new file mode 100644
index 0000000..8b80b5a
--- /dev/null
+++ b/src/it/emma-plugin-it/a/src/test/java/hello/HelloTest.java
@@ -0,0 +1,13 @@
+package hello;
+
+import junit.framework.TestCase;
+
+public class HelloTest extends TestCase
+{
+    public void testHello()
+    {
+        final Hello hello = new Hello();
+        assertEquals( "Hello world!", hello.hello( null ) );
+        assertEquals( "Hello EMMA!", hello.hello( "EMMA" ) );
+    }
+}
diff --git a/src/it/emma-plugin-it/b/pom.xml b/src/it/emma-plugin-it/b/pom.xml
new file mode 100644
index 0000000..19b68f8
--- /dev/null
+++ b/src/it/emma-plugin-it/b/pom.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<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/xsd/maven-4.0.0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+  <parent>
+    <groupId>org.apache.maven.plugins.site.its</groupId>
+    <artifactId>emma-plugin-it</artifactId>
+    <version>1.0-SNAPSHOT</version>
+    <relativePath>../pom.xml</relativePath>
+  </parent>
+
+  <artifactId>it03-b</artifactId>
+
+  <name>EMMA plugin :: Integration test 03 :: B</name>
+</project>
diff --git a/src/it/emma-plugin-it/b/src/main/java/byebye/ByeBye.java b/src/it/emma-plugin-it/b/src/main/java/byebye/ByeBye.java
new file mode 100644
index 0000000..bdb9fc2
--- /dev/null
+++ b/src/it/emma-plugin-it/b/src/main/java/byebye/ByeBye.java
@@ -0,0 +1,10 @@
+package byebye;
+
+public class ByeBye
+{
+    public String byebye( String name )
+    {
+        final String myName = name == null ? "world" : name;
+        return "Bye bye " + myName + "!";
+    }
+}
diff --git a/src/it/emma-plugin-it/b/src/test/java/byebye/ByeByeTest.java b/src/it/emma-plugin-it/b/src/test/java/byebye/ByeByeTest.java
new file mode 100644
index 0000000..1bccad9
--- /dev/null
+++ b/src/it/emma-plugin-it/b/src/test/java/byebye/ByeByeTest.java
@@ -0,0 +1,14 @@
+package byebye;
+
+import byebye.ByeBye;
+import junit.framework.TestCase;
+
+public class ByeByeTest extends TestCase
+{
+    public void testByeBye()
+    {
+        final ByeBye byeBye = new ByeBye();
+        assertEquals( "Bye bye world!", byeBye.byebye( null ) );
+        assertEquals( "Bye bye EMMA!", byeBye.byebye( "EMMA" ) );
+    }
+}
diff --git a/src/it/emma-plugin-it/invoker.properties b/src/it/emma-plugin-it/invoker.properties
new file mode 100644
index 0000000..66a1bf4
--- /dev/null
+++ b/src/it/emma-plugin-it/invoker.properties
@@ -0,0 +1 @@
+invoker.maven.version = 3.0-
diff --git a/src/it/emma-plugin-it/pom.xml b/src/it/emma-plugin-it/pom.xml
new file mode 100644
index 0000000..2126de0
--- /dev/null
+++ b/src/it/emma-plugin-it/pom.xml
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<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/xsd/maven-4.0.0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <groupId>org.apache.maven.plugins.site.its</groupId>
+  <artifactId>emma-plugin-it</artifactId>
+  <version>1.0-SNAPSHOT</version>
+  <packaging>pom</packaging>
+
+  <name>EMMA plugin :: Integration test 03</name>
+
+  <dependencies>
+    <dependency>
+      <groupId>commons-lang</groupId>
+      <artifactId>commons-lang</artifactId>
+      <version>2.3</version>
+    </dependency>
+    <dependency>
+      <groupId>org.slf4j</groupId>
+      <artifactId>slf4j-simple</artifactId>
+      <version>1.3.0</version>
+    </dependency>
+    <dependency>
+      <groupId>junit</groupId>
+      <artifactId>junit</artifactId>
+      <version>3.8.2</version>
+      <scope>test</scope>
+    </dependency>
+  </dependencies>
+
+  <build>
+    <plugins>
+      <plugin>
+        <artifactId>maven-site-plugin</artifactId>
+        <version>@project.version@</version>
+      </plugin>
+    </plugins>
+  </build>
+
+  <reporting>
+    <excludeDefaults>true</excludeDefaults>
+    <plugins>
+      <plugin>
+        <groupId>org.codehaus.mojo</groupId>
+        <artifactId>emma-maven-plugin</artifactId>
+        <version>1.0-alpha-2</version>
+        <configuration>
+          <filters>
+            <filter>+hello.*</filter>
+            <filter>+byebye.*</filter>
+          </filters>
+        </configuration>
+      </plugin>
+    </plugins>
+  </reporting>
+
+  <modules>
+    <module>a</module>
+    <module>b</module>
+  </modules>
+</project>
diff --git a/src/it/emma-plugin-it/verify.bsh b/src/it/emma-plugin-it/verify.bsh
new file mode 100644
index 0000000..5138f1c
--- /dev/null
+++ b/src/it/emma-plugin-it/verify.bsh
@@ -0,0 +1,29 @@
+File aEmmaIndex = new File( basedir, "a/target/site/emma/index.html" );
+if ( !aEmmaIndex.exists() || aEmmaIndex.length() == 0 )
+{
+	System.out.println( "Missing 'index.html' for A" );
+	return false;
+}
+
+File aEmmaFiles = new File( basedir, "a/target/site/emma/_files" );
+if ( !aEmmaFiles.exists() || aEmmaFiles.list().length == 0 )
+{
+	System.out.println( "Missing or empty directory '_files' for A" );
+	return false;
+}
+
+File bEmmaIndex = new File( basedir, "b/target/site/emma/index.html" );
+if ( !bEmmaIndex.exists() || bEmmaIndex.length() == 0 )
+{
+	System.out.println( "Missing 'index.html' for B" );
+	return false;
+}
+
+File bEmmaFiles = new File( basedir, "b/target/site/emma/_files" );
+if ( !bEmmaFiles.exists() || bEmmaFiles.list().length == 0 )
+{
+	System.out.println( "Missing or empty directory '_files' for B" );
+	return false;
+}
+
+return true;
diff --git a/src/it/empty-report-set/pom.xml b/src/it/empty-report-set/pom.xml
new file mode 100644
index 0000000..1f0d532
--- /dev/null
+++ b/src/it/empty-report-set/pom.xml
@@ -0,0 +1,58 @@
+<?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>
+  <modelVersion>4.0.0</modelVersion>
+
+  <groupId>org.apache.maven.plugins.site.its</groupId>
+  <artifactId>empty-report-set</artifactId>
+  <version>0.1</version>
+  <packaging>jar</packaging>
+
+  <name>Test</name>
+  <description>
+    Test that an empty report set disables the default reports.
+  </description>
+  <url>http://maven.apache.org/</url>
+
+  <build>
+    <plugins>
+      <plugin>
+        <artifactId>maven-site-plugin</artifactId>
+        <version>@project.version@</version>
+      </plugin>
+    </plugins>
+  </build>
+
+  <reporting>
+    <plugins>
+      <plugin>
+        <artifactId>maven-project-info-reports-plugin</artifactId>
+        <version>2.1.1</version>
+        <reportSets>
+          <!-- this should suppress the default reports -->
+          <reportSet/>
+        </reportSets>
+      </plugin>
+    </plugins>
+  </reporting>
+
+</project>
diff --git a/src/it/empty-report-set/verify.bsh b/src/it/empty-report-set/verify.bsh
new file mode 100644
index 0000000..3ca7156
--- /dev/null
+++ b/src/it/empty-report-set/verify.bsh
@@ -0,0 +1,10 @@
+import java.io.*;
+
+File indexHtml = new File( basedir, "target/site/index.html" );
+
+if ( indexHtml.exists() )
+{
+    throw new Exception( "Detected unwanted file " + indexHtml );
+}
+
+return true;
diff --git a/src/it/full-reporting/invoker.properties b/src/it/full-reporting/invoker.properties
new file mode 100644
index 0000000..020e366
--- /dev/null
+++ b/src/it/full-reporting/invoker.properties
@@ -0,0 +1,2 @@
+invoker.maven.version = 3.0-
+invoker.profiles=reporting
\ No newline at end of file
diff --git a/src/it/full-reporting/pom.xml b/src/it/full-reporting/pom.xml
new file mode 100644
index 0000000..f4d4b6f
--- /dev/null
+++ b/src/it/full-reporting/pom.xml
@@ -0,0 +1,82 @@
+<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/xsd/maven-4.0.0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+  <parent>
+    <groupId>org.apache.maven</groupId>
+    <artifactId>maven-parent</artifactId>
+    <version>15</version>
+  </parent>
+
+  <groupId>org.apache.maven.plugins.site.its</groupId>
+  <artifactId>full-reporting</artifactId>
+  <version>1.0-SNAPSHOT</version>
+  <packaging>jar</packaging>
+
+  <name>maven-site-plugin IT: full reporting</name>
+  <url>http://maven.apache.org</url>
+
+  <properties>
+    <javadocPluginVersion>@javadocPluginVersion@</javadocPluginVersion>
+    <checkstylePluginVersion>@checkstylePluginVersion@</checkstylePluginVersion>
+    <projectInfoReportsPluginVersion>@projectInfoReportsPluginVersion@</projectInfoReportsPluginVersion>
+  </properties>
+
+  <dependencies>
+    <dependency>
+      <groupId>junit</groupId>
+      <artifactId>junit</artifactId>
+      <version>3.8.2</version>
+      <scope>test</scope>
+    </dependency>
+  </dependencies>
+
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-site-plugin</artifactId>
+        <version>@project.version@</version>
+      </plugin>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-javadoc-plugin</artifactId>
+        <version>${javadocPluginVersion}</version>
+      </plugin>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-checkstyle-plugin</artifactId>
+        <version>${checkstylePluginVersion}</version>
+      </plugin>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-project-info-reports-plugin</artifactId>
+        <version>@projectInfoReportsPluginVersion@</version>
+      </plugin>
+    </plugins>
+  </build>
+
+  <reporting>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-project-info-reports-plugin</artifactId>
+        <version>@projectInfoReportsPluginVersion@</version>
+        <configuration>
+          <dependencyDetailsEnabled>false</dependencyDetailsEnabled>
+          <dependencyLocationsEnabled>false</dependencyLocationsEnabled>
+        </configuration>
+      </plugin>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-javadoc-plugin</artifactId>
+        <version>${javadocPluginVersion}</version>
+      </plugin>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-checkstyle-plugin</artifactId>
+        <version>${checkstylePluginVersion}</version>
+      </plugin>
+    </plugins>
+  </reporting>
+
+</project>
diff --git a/src/it/full-reporting/src/main/java/org/apache/maven/plugins/site/its/App.java b/src/it/full-reporting/src/main/java/org/apache/maven/plugins/site/its/App.java
new file mode 100644
index 0000000..b65a2b1
--- /dev/null
+++ b/src/it/full-reporting/src/main/java/org/apache/maven/plugins/site/its/App.java
@@ -0,0 +1,32 @@
+package org.apache.maven.plugins.site.its;
+
+/*
+ * 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.
+ */
+
+/**
+ * Hello world!
+ *
+ */
+public class App 
+{
+    public static void main( String[] args )
+    {
+        System.out.println( "Hello World!" );
+    }
+}
diff --git a/src/it/full-reporting/src/test/java/org/apache/maven/plugins/site/its/AppTest.java b/src/it/full-reporting/src/test/java/org/apache/maven/plugins/site/its/AppTest.java
new file mode 100644
index 0000000..b5af6d5
--- /dev/null
+++ b/src/it/full-reporting/src/test/java/org/apache/maven/plugins/site/its/AppTest.java
@@ -0,0 +1,44 @@
+package org.apache.maven.plugins.site.its;
+
+import junit.framework.Test;
+import junit.framework.TestCase;
+import junit.framework.TestSuite;
+
+/**
+ * Unit test for simple App.
+ */
+public class AppTest 
+    extends TestCase
+{
+    /**
+     * Create the test case
+     *
+     * @param testName name of the test case
+     */
+    public AppTest( String testName )
+    {
+        super( testName );
+    }
+
+    /**
+     * @return the suite of tests being tested
+     */
+    public static Test suite()
+    {
+        return new TestSuite( AppTest.class );
+    }
+
+    /**
+     * Rigourous Test :-)
+     */
+    public void testApp()
+    {
+        assertTrue( true );
+    }
+    
+    /*
+    public void testFailed()
+    {
+        assertTrue( false );
+    } */   
+}
diff --git a/src/it/full-reporting/verify.groovy b/src/it/full-reporting/verify.groovy
new file mode 100644
index 0000000..0f21f62
--- /dev/null
+++ b/src/it/full-reporting/verify.groovy
@@ -0,0 +1,45 @@
+
+/*
+ * 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.
+ */
+assert new File( basedir, 'target/surefire-reports' ).exists();
+assert new File( basedir, 'target/surefire-reports/org.apache.maven.plugins.site.its.AppTest.txt' ).exists();
+content = new File( basedir, 'target/surefire-reports/org.apache.maven.plugins.site.its.AppTest.txt' ).text;
+
+assert content.contains( 'Test set: org.apache.maven.plugins.site.its.AppTest' );
+
+assert content.contains( 'Tests run: 1, Failures: 0, Errors: 0, Skipped: 0' );
+
+assert new File( basedir, 'target/site/surefire-report.html' ).exists();
+assert new File( basedir, 'target/site/index.html' ).exists();
+assert new File( basedir, 'target/site/checkstyle.html' ).exists();
+assert new File( basedir, 'target/site/cpd.html' ).exists();
+assert new File( basedir, 'target/site/apidocs/index.html' ).exists();
+assert new File( basedir, 'target/site/apidocs/org/apache/maven/plugins/site/its/App.html' ).exists();
+assert new File( basedir, 'target/site/cobertura/index.html' ).exists();
+assert new File( basedir, 'target/site/xref/index.html' ).exists();
+assert new File( basedir, 'target/site/xref-test/index.html' ).exists();
+
+assert new File( basedir, 'target/site/taglist.html' ).exists();
+assert new File( basedir, 'target/site/team-list.html' ).exists();
+
+assert new File( basedir, 'target/site/dependencies.html' ).exists();
+content = new File( basedir, 'target/site/dependencies.html' ).text;
+assert content.contains( 'junit:junit:jar:3.8.2' );
+
+return true;
\ No newline at end of file
diff --git a/src/it/inheritedMenus/README b/src/it/inheritedMenus/README
new file mode 100644
index 0000000..6b85d33
--- /dev/null
+++ b/src/it/inheritedMenus/README
@@ -0,0 +1,5 @@
+
+The projects under parentNotAsRef/ and parentAsRef/ are identical
+except for the inheritAsRef parameter in the parent's site.xml.
+
+No tests are run for parentAsRef/, it is only built for comparison.
diff --git a/src/it/inheritedMenus/invoker.properties b/src/it/inheritedMenus/invoker.properties
new file mode 100644
index 0000000..1becf92
--- /dev/null
+++ b/src/it/inheritedMenus/invoker.properties
@@ -0,0 +1,2 @@
+# See MSITE-595
+invoker.maven.version = 3.0-
diff --git a/src/it/inheritedMenus/parentAsRef/childAsRef/grandChildAsRef/pom.xml b/src/it/inheritedMenus/parentAsRef/childAsRef/grandChildAsRef/pom.xml
new file mode 100644
index 0000000..6db38d1
--- /dev/null
+++ b/src/it/inheritedMenus/parentAsRef/childAsRef/grandChildAsRef/pom.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project>
+  <modelVersion>4.0.0</modelVersion>
+
+  <parent>
+    <groupId>inheritAsRef</groupId>
+    <artifactId>childAsRef</artifactId>
+    <version>1.0</version>
+    <relativePath>../pom.xml</relativePath>
+  </parent>
+
+  <artifactId>grandChildAsRef</artifactId>
+  <packaging>pom</packaging>
+
+  <name>Grand Child As Ref</name>
+
+</project>
diff --git a/src/it/inheritedMenus/parentAsRef/childAsRef/grandChildAsRef/src/site/site.xml b/src/it/inheritedMenus/parentAsRef/childAsRef/grandChildAsRef/src/site/site.xml
new file mode 100644
index 0000000..afb5647
--- /dev/null
+++ b/src/it/inheritedMenus/parentAsRef/childAsRef/grandChildAsRef/src/site/site.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<project name="Grand Child As Ref Site">
+
+  <body>
+
+    <menu name="Not Inherited">
+      <item name="Grand Child Relative Home Local" href="index.html" />
+      <item name="Grand Child Relative Home Local with dot" href="./index.html" />
+      <item name="Grand Child Absolute Home Local" href="http://example.com/childAsRef/grandChildAsRef/" />
+      <item name="Grand Child Absolute Home Local with index" href="http://example.com/childAsRef/grandChildAsRef/index.html" />
+    </menu>
+
+  </body>
+
+</project>
\ No newline at end of file
diff --git a/src/it/inheritedMenus/parentAsRef/childAsRef/pom.xml b/src/it/inheritedMenus/parentAsRef/childAsRef/pom.xml
new file mode 100644
index 0000000..072517e
--- /dev/null
+++ b/src/it/inheritedMenus/parentAsRef/childAsRef/pom.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project>
+  <modelVersion>4.0.0</modelVersion>
+
+  <parent>
+    <groupId>inheritAsRef</groupId>
+    <artifactId>parentAsRef</artifactId>
+    <version>1.0</version>
+    <relativePath>../pom.xml</relativePath>
+  </parent>
+
+  <artifactId>childAsRef</artifactId>
+  <packaging>pom</packaging>
+
+  <name>Child As Ref</name>
+
+  <modules>
+    <module>grandChildAsRef</module>
+  </modules>
+
+</project>
diff --git a/src/it/inheritedMenus/parentAsRef/childAsRef/src/site/site.xml b/src/it/inheritedMenus/parentAsRef/childAsRef/src/site/site.xml
new file mode 100644
index 0000000..5440915
--- /dev/null
+++ b/src/it/inheritedMenus/parentAsRef/childAsRef/src/site/site.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<project name="Child As Ref Site">
+
+  <body>
+
+    <menu name="Not Inherited">
+      <item name="Child Relative Home Local" href="index.html" />
+      <item name="Child Relative Home Local with dot" href="./index.html" />
+      <item name="Child Absolute Home Local" href="http://example.com/childAsRef/" />
+      <item name="Child Absolute Home Local with index" href="http://example.com/childAsRef/index.html" />
+    </menu>
+
+  </body>
+
+</project>
\ No newline at end of file
diff --git a/src/it/inheritedMenus/parentAsRef/pom.xml b/src/it/inheritedMenus/parentAsRef/pom.xml
new file mode 100644
index 0000000..a5b67cf
--- /dev/null
+++ b/src/it/inheritedMenus/parentAsRef/pom.xml
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project>
+  <modelVersion>4.0.0</modelVersion>
+
+  <groupId>inheritAsRef</groupId>
+  <artifactId>parentAsRef</artifactId>
+  <version>1.0</version>
+  <packaging>pom</packaging>
+
+  <name>Parent As Ref</name>
+  <url>http://example.com/</url>
+
+  <distributionManagement>
+    <site>
+      <id>website</id>
+      <name>Example web site</name>
+      <!-- needed for relative link resolution -->
+      <url>file://@project.build.directory@/it/inheritedMenus/deploy/</url>
+    </site>
+  </distributionManagement>
+
+  <build>
+    <pluginManagement>
+      <plugins>
+        <plugin>
+          <groupId>org.apache.maven.plugins</groupId>
+          <artifactId>maven-site-plugin</artifactId>
+          <version>@project.version@</version>
+        </plugin>
+      </plugins>
+    </pluginManagement>
+  </build>
+
+  <reporting>
+    <plugins>
+      <plugin>
+        <artifactId>maven-project-info-reports-plugin</artifactId>
+        <version>2.3.1</version>
+        <reportSets>
+          <reportSet>
+            <reports>
+              <report>index</report>
+            </reports>
+          </reportSet>
+        </reportSets>
+      </plugin>
+    </plugins>
+  </reporting>
+
+  <modules>
+    <module>childAsRef</module>
+  </modules>
+
+</project>
diff --git a/src/it/inheritedMenus/parentAsRef/src/site/site.xml b/src/it/inheritedMenus/parentAsRef/src/site/site.xml
new file mode 100644
index 0000000..d8e9bf6
--- /dev/null
+++ b/src/it/inheritedMenus/parentAsRef/src/site/site.xml
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<project name="Parent As Ref Site">
+
+  <body>
+
+    <menu name="Inherited" inherit="top">
+      <item name="Parent Relative Home Inherited" href="index.html" />
+      <item name="Parent Relative Home Inherited with dot" href="./index.html" />
+      <item name="Parent Absolute Home Inherited" href="http://example.com/" />
+      <item name="Parent Absolute Home Inherited with index" href="http://example.com/index.html" />
+    </menu>
+
+    <menu name="Not Inherited">
+      <item name="Parent Relative Home Local" href="index.html" />
+      <item name="Parent Relative Home Local with dot" href="./index.html" />
+      <item name="Parent Absolute Home Local" href="http://example.com/" />
+      <item name="Parent Absolute Home Local with index" href="http://example.com/index.html" />
+    </menu>
+
+    <!-- default inheritAsRef = false -->
+    <menu ref="parent" inherit="bottom" inheritAsRef="true" />
+    <menu ref="modules" inherit="bottom" inheritAsRef="true" />
+    <menu ref="reports" inherit="bottom" inheritAsRef="true" />
+
+  </body>
+
+</project>
\ No newline at end of file
diff --git a/src/it/inheritedMenus/parentNotAsRef/childNotAsRef/grandChildNotAsRef/pom.xml b/src/it/inheritedMenus/parentNotAsRef/childNotAsRef/grandChildNotAsRef/pom.xml
new file mode 100644
index 0000000..f4dda2f
--- /dev/null
+++ b/src/it/inheritedMenus/parentNotAsRef/childNotAsRef/grandChildNotAsRef/pom.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project>
+  <modelVersion>4.0.0</modelVersion>
+
+  <parent>
+    <groupId>inheritAsRef</groupId>
+    <artifactId>childNotAsRef</artifactId>
+    <version>1.0</version>
+    <relativePath>../pom.xml</relativePath>
+  </parent>
+
+  <artifactId>grandChildNotAsRef</artifactId>
+  <packaging>pom</packaging>
+
+  <name>GrandChild Not As Ref</name>
+
+</project>
diff --git a/src/it/inheritedMenus/parentNotAsRef/childNotAsRef/grandChildNotAsRef/src/site/site.xml b/src/it/inheritedMenus/parentNotAsRef/childNotAsRef/grandChildNotAsRef/src/site/site.xml
new file mode 100644
index 0000000..a433ded
--- /dev/null
+++ b/src/it/inheritedMenus/parentNotAsRef/childNotAsRef/grandChildNotAsRef/src/site/site.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<project name="Grand Child Not As Ref Site">
+
+  <body>
+
+    <menu name="Not Inherited">
+      <item name="Grand Child Relative Home Local" href="index.html" />
+      <item name="Grand Child Relative Home Local with dot" href="./index.html" />
+      <item name="Grand Child Absolute Home Local" href="http://example.com/childNotAsRef/grandChildNotAsRef/" />
+      <item name="Grand Child Absolute Home Local with index" href="http://example.com/childNotAsRef/grandChildNotAsRef/index.html" />
+    </menu>
+
+  </body>
+
+</project>
\ No newline at end of file
diff --git a/src/it/inheritedMenus/parentNotAsRef/childNotAsRef/pom.xml b/src/it/inheritedMenus/parentNotAsRef/childNotAsRef/pom.xml
new file mode 100644
index 0000000..8feb5cb
--- /dev/null
+++ b/src/it/inheritedMenus/parentNotAsRef/childNotAsRef/pom.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project>
+  <modelVersion>4.0.0</modelVersion>
+
+  <parent>
+    <groupId>inheritAsRef</groupId>
+    <artifactId>parentNotAsRef</artifactId>
+    <version>1.0</version>
+    <relativePath>../pom.xml</relativePath>
+  </parent>
+
+  <artifactId>childNotAsRef</artifactId>
+  <packaging>pom</packaging>
+
+  <name>Child Not As Ref</name>
+
+  <modules>
+    <module>grandChildNotAsRef</module>
+  </modules>
+
+</project>
diff --git a/src/it/inheritedMenus/parentNotAsRef/childNotAsRef/src/site/site.xml b/src/it/inheritedMenus/parentNotAsRef/childNotAsRef/src/site/site.xml
new file mode 100644
index 0000000..65b4f09
--- /dev/null
+++ b/src/it/inheritedMenus/parentNotAsRef/childNotAsRef/src/site/site.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<project name="Child Not As Ref Site">
+
+  <body>
+
+    <menu name="Not Inherited">
+      <item name="Child Relative Home Local" href="index.html" />
+      <item name="Child Relative Home Local with dot" href="./index.html" />
+      <item name="Child Absolute Home Local" href="http://example.com/childNotAsRef/" />
+      <item name="Child Absolute Home Local with index" href="http://example.com/childNotAsRef/index.html" />
+    </menu>
+
+  </body>
+
+</project>
\ No newline at end of file
diff --git a/src/it/inheritedMenus/parentNotAsRef/pom.xml b/src/it/inheritedMenus/parentNotAsRef/pom.xml
new file mode 100644
index 0000000..3c53583
--- /dev/null
+++ b/src/it/inheritedMenus/parentNotAsRef/pom.xml
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project>
+  <modelVersion>4.0.0</modelVersion>
+
+  <groupId>inheritAsRef</groupId>
+  <artifactId>parentNotAsRef</artifactId>
+  <version>1.0</version>
+  <packaging>pom</packaging>
+
+  <name>Parent Not As Ref</name>
+  <url>http://example.com/</url>
+
+  <distributionManagement>
+    <site>
+      <id>website</id>
+      <name>Example web site</name>
+      <!-- needed for relative link resolution -->
+      <url>file://@project.build.directory@/it/inheritedMenus/deploy/</url>
+    </site>
+  </distributionManagement>
+
+  <build>
+    <pluginManagement>
+      <plugins>
+        <plugin>
+          <groupId>org.apache.maven.plugins</groupId>
+          <artifactId>maven-site-plugin</artifactId>
+          <version>@project.version@</version>
+        </plugin>
+      </plugins>
+    </pluginManagement>
+  </build>
+
+  <reporting>
+    <plugins>
+      <plugin>
+        <artifactId>maven-project-info-reports-plugin</artifactId>
+        <version>2.3.1</version>
+        <reportSets>
+          <reportSet>
+            <reports>
+              <report>index</report>
+            </reports>
+          </reportSet>
+        </reportSets>
+      </plugin>
+    </plugins>
+  </reporting>
+
+  <modules>
+    <module>childNotAsRef</module>
+  </modules>
+
+</project>
diff --git a/src/it/inheritedMenus/parentNotAsRef/src/site/site.xml b/src/it/inheritedMenus/parentNotAsRef/src/site/site.xml
new file mode 100644
index 0000000..cc80463
--- /dev/null
+++ b/src/it/inheritedMenus/parentNotAsRef/src/site/site.xml
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<project name="Parent Not As Ref Site">
+
+  <body>
+
+    <menu name="Inherited" inherit="top">
+      <item name="Parent Relative Home Inherited" href="index.html" />
+      <item name="Parent Relative Home Inherited with dot" href="./index.html" />
+      <item name="Parent Absolute Home Inherited" href="http://example.com/" />
+      <item name="Parent Absolute Home Inherited with index" href="http://example.com/index.html" />
+    </menu>
+
+    <menu name="Not Inherited">
+      <item name="Parent Relative Home Local" href="index.html" />
+      <item name="Parent Relative Home Local with dot" href="./index.html" />
+      <item name="Parent Absolute Home Local" href="http://example.com/" />
+      <item name="Parent Absolute Home Local with index" href="http://example.com/index.html" />
+    </menu>
+
+    <!-- default inheritAsRef = false -->
+    <menu ref="parent" inherit="bottom" />
+    <menu ref="modules" inherit="bottom" />
+    <menu ref="reports" inherit="bottom" />
+
+  </body>
+
+</project>
\ No newline at end of file
diff --git a/src/it/inheritedMenus/pom.xml b/src/it/inheritedMenus/pom.xml
new file mode 100644
index 0000000..c02f358
--- /dev/null
+++ b/src/it/inheritedMenus/pom.xml
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project>
+  <modelVersion>4.0.0</modelVersion>
+
+  <groupId>inheritAsRef</groupId>
+  <artifactId>aggregator</artifactId>
+  <version>1.0</version>
+  <packaging>pom</packaging>
+
+  <name>Aggregator</name>
+  <url>http://example.com/junk/</url>
+
+  <build>
+    <pluginManagement>
+      <plugins>
+        <plugin>
+          <groupId>org.apache.maven.plugins</groupId>
+          <artifactId>maven-site-plugin</artifactId>
+          <version>@project.version@</version>
+          <configuration>
+            <generateReports>false</generateReports>
+          </configuration>
+        </plugin>
+      </plugins>
+    </pluginManagement>
+  </build>
+
+  <modules>
+    <module>parentAsRef</module>
+    <module>parentNotAsRef</module>
+  </modules>
+
+</project>
diff --git a/src/it/inheritedMenus/verify.bsh b/src/it/inheritedMenus/verify.bsh
new file mode 100644
index 0000000..c449450
--- /dev/null
+++ b/src/it/inheritedMenus/verify.bsh
@@ -0,0 +1,202 @@
+
+/*
+ * 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.
+ */
+
+import java.io.*;
+import org.codehaus.plexus.util.*;
+
+boolean result = true;
+
+try
+{
+    File parentDirectory = new File( basedir, "parentNotAsRef" );
+    if ( !parentDirectory.exists() || !parentDirectory.isDirectory() )
+    {
+        System.err.println( "parent is missing or not a directory." );
+        result = false;
+    }
+
+    File parentSiteDirectory = new File( parentDirectory, "target/site" );
+    if ( !parentSiteDirectory.exists() || !parentSiteDirectory.isDirectory() )
+    {
+        System.err.println( "parent site is missing or not a directory." );
+        result = false;
+    }
+
+    File parentIndex = new File( parentSiteDirectory, "index.html" );
+    if ( !parentIndex.exists() || parentIndex.isDirectory() )
+    {
+        System.err.println( "no index file in parent or is a directory." );
+        result = false;
+    }
+
+    String content = FileUtils.fileRead( parentIndex, "UTF-8" );
+    int index1 = content.indexOf( "<strong>Parent Relative Home Inherited</strong>" );
+    int index2 = content.indexOf( "<strong>Parent Relative Home Inherited with dot</strong>" );
+    int index3 = content.indexOf( "<a href=\"./\" title=\"Parent Absolute Home Inherited\">Parent Absolute Home Inherited</a>" );
+    int index4 = content.indexOf( "<strong>Parent Absolute Home Inherited with index</strong>" );
+
+    if ( index1 < 0 || index2 < 0 || index3 < 0 || index4 < 0 )
+    {
+        System.err.println( "parent index.html has wrong inherited menu items!" );
+        result = false;
+    }
+
+    index1 = content.indexOf( "<strong>Parent Relative Home Local</strong>" );
+    index2 = content.indexOf( "<strong>Parent Relative Home Local with dot</strong>" );
+    index3 = content.indexOf( "<a href=\"./\" title=\"Parent Absolute Home Local\">Parent Absolute Home Local</a>" );
+    index4 = content.indexOf( "<strong>Parent Absolute Home Local with index</strong>" );
+
+    if ( index1 < 0 || index2 < 0 || index4 < 0 )
+    {
+        System.err.println( "parent index.html has wrong local menu items!" );
+        result = false;
+    }
+
+    index1 = content.indexOf( "<a href=\"childNotAsRef/index.html\" title=\"Child Not As Ref\">Child Not As Ref</a>" );
+    index2 = content.indexOf( "<a href=\"project-info.html\" title=\"Project Information\">Project Information</a>" );
+    index3 = content.indexOf( "<h5>Parent Project</h5>" );
+
+    if ( index1 < 0 || index2 < 0 || index3 >= 0 )
+    {
+        System.err.println( "parent index.html has wrong reference menu items!" );
+        result = false;
+    }
+
+
+    // CHILD
+
+
+    File childDirectory = new File( parentDirectory, "childNotAsRef" );
+    if ( !childDirectory.exists() || !childDirectory.isDirectory() )
+    {
+        System.err.println( "child is missing or not a directory." );
+        result = false;
+    }
+
+    File childSiteDirectory = new File( childDirectory, "target/site" );
+    if ( !childSiteDirectory.exists() || !childSiteDirectory.isDirectory() )
+    {
+        System.err.println( "child site is missing or not a directory." );
+        result = false;
+    }
+
+    File childIndex = new File( childSiteDirectory, "index.html" );
+    if ( !childIndex.exists() || childIndex.isDirectory() )
+    {
+        System.err.println( "no index file in child or is a directory." );
+        result = false;
+    }
+
+    content = FileUtils.fileRead( childIndex, "UTF-8" );
+    index1 = content.indexOf( "<a href=\"../index.html\" title=\"Parent Relative Home Inherited\">Parent Relative Home Inherited</a>" );
+    index2 = content.indexOf( "<a href=\"../index.html\" title=\"Parent Relative Home Inherited with dot\">Parent Relative Home Inherited with dot</a>" );
+    index3 = content.indexOf( "<a href=\"../\" title=\"Parent Absolute Home Inherited\">Parent Absolute Home Inherited</a>" );
+    index4 = content.indexOf( "<a href=\"../index.html\" title=\"Parent Absolute Home Inherited with index\">Parent Absolute Home Inherited with index</a>" );
+
+    if ( index1 < 0 || index2 < 0 || index3 < 0 || index4 < 0 )
+    {
+        System.err.println( "child index.html has wrong menu items in inherited menu!" );
+        result = false;
+    }
+
+    index1 = content.indexOf( "<strong>Child Relative Home Local</strong>" );
+    index2 = content.indexOf( "<strong>Child Relative Home Local with dot</strong>" );
+    index3 = content.indexOf( "<a href=\"./\" title=\"Child Absolute Home Local\">Child Absolute Home Local</a>" );
+    index4 = content.indexOf( "<strong>Child Absolute Home Local with index</strong>" );
+
+    if ( index1 < 0 || index2 < 0 || index3 < 0 || index4 < 0 )
+    {
+        System.err.println( "child index.html has wrong menu items in local menu!" );
+        result = false;
+    }
+
+    index1 = content.indexOf( "<a href=\"grandChildNotAsRef/index.html\" title=\"GrandChild Not As Ref\">GrandChild Not As Ref</a>" );
+    index2 = content.indexOf( "<a href=\"../index.html\" title=\"Parent Not As Ref\">Parent Not As Ref</a>" );
+
+    if ( index1 < 0 || index2 < 0 )
+    {
+        System.err.println( "child index.html has wrong reference menu items!" );
+        result = false;
+    }
+
+
+    // GRANDCHILD
+
+
+    File grandChildDirectory = new File( childDirectory, "grandChildNotAsRef" );
+    if ( !grandChildDirectory.exists() || !grandChildDirectory.isDirectory() )
+    {
+        System.err.println( "grandchild is missing or not a directory." );
+        result = false;
+    }
+
+    File grandChildSiteDirectory = new File( grandChildDirectory, "target/site" );
+    if ( !grandChildSiteDirectory.exists() || !grandChildSiteDirectory.isDirectory() )
+    {
+        System.err.println( "grandchild site is missing or not a directory." );
+        result = false;
+    }
+
+    File grandChildIndex = new File( grandChildSiteDirectory, "index.html" );
+    if ( !grandChildIndex.exists() || grandChildIndex.isDirectory() )
+    {
+        System.err.println( "no index file in grandchild or is a directory." );
+        result = false;
+    }
+
+    content = FileUtils.fileRead( grandChildIndex, "UTF-8" );
+    index1 = content.indexOf( "<a href=\"../../index.html\" title=\"Parent Relative Home Inherited\">Parent Relative Home Inherited</a>" );
+    index2 = content.indexOf( "<a href=\"../../index.html\" title=\"Parent Relative Home Inherited with dot\">Parent Relative Home Inherited with dot</a>" );
+    index3 = content.indexOf( "<a href=\"../../\" title=\"Parent Absolute Home Inherited\">Parent Absolute Home Inherited</a>" );
+    index4 = content.indexOf( "<a href=\"../../index.html\" title=\"Parent Absolute Home Inherited with index\">Parent Absolute Home Inherited with index</a>" );
+
+    if ( index1 < 0 || index2 < 0 || index3 < 0 || index4 < 0 )
+    {
+        System.err.println( "grandchild index.html has wrong menu items in inherited menu!" );
+        result = false;
+    }
+
+    index1 = content.indexOf( "<strong>Grand Child Relative Home Local</strong>" );
+    index2 = content.indexOf( "<strong>Grand Child Relative Home Local with dot</strong>" );
+    index3 = content.indexOf( "<a href=\"./\" title=\"Grand Child Absolute Home Local\">Grand Child Absolute Home Local</a>" );
+    index4 = content.indexOf( "<strong>Grand Child Absolute Home Local with index</strong>" );
+
+    if ( index1 < 0 || index2 < 0 || index3 < 0 || index4 < 0 )
+    {
+        System.err.println( "grandchild index.html has wrong menu items in local menu!" );
+        result = false;
+    }
+
+    index1 = content.indexOf( "<a href=\"../index.html\" title=\"Child Not As Ref\">Child Not As Ref</a>" );
+
+    if ( index1 < 0 )
+    {
+        System.err.println( "grandchild index.html has wrong reference menu items!" );
+        result = false;
+    }
+
+}
+catch ( IOException e )
+{
+    e.printStackTrace();
+    result = false;
+}
+
+return result;
diff --git a/src/it/inheritedReports/child/pom.xml b/src/it/inheritedReports/child/pom.xml
new file mode 100644
index 0000000..ee35b45
--- /dev/null
+++ b/src/it/inheritedReports/child/pom.xml
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<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/xsd/maven-4.0.0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <parent>
+    <groupId>inheritReports</groupId>
+    <artifactId>parent</artifactId>
+    <version>1.0</version>
+    <relativePath>../pom.xml</relativePath>
+  </parent>
+
+  <artifactId>child</artifactId>
+  <packaging>pom</packaging>
+
+  <name>Child overriding report</name>
+
+  <reporting>
+    <plugins>
+      <plugin>
+        <artifactId>maven-project-info-reports-plugin</artifactId>
+        <version>2.3.1</version>
+        <reportSets>
+          <reportSet>
+            <reports>
+              <report>summary</report>
+            </reports>
+          </reportSet>
+        </reportSets>
+      </plugin>
+    </plugins>
+  </reporting>
+
+</project>
diff --git a/src/it/inheritedReports/invoker.properties b/src/it/inheritedReports/invoker.properties
new file mode 100644
index 0000000..a47b0e0
--- /dev/null
+++ b/src/it/inheritedReports/invoker.properties
@@ -0,0 +1,4 @@
+# Maven 2 & 3 don't handle the test the same way:
+# - Maven 2 adds report: this is the tested behaviour
+# - Maven 3 replaces report: the test fails
+invoker.maven.version = 3.0-
diff --git a/src/it/inheritedReports/pom.xml b/src/it/inheritedReports/pom.xml
new file mode 100644
index 0000000..7d5ef0a
--- /dev/null
+++ b/src/it/inheritedReports/pom.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<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/xsd/maven-4.0.0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <groupId>inheritReports</groupId>
+  <artifactId>parent</artifactId>
+  <version>1.0</version>
+  <packaging>pom</packaging>
+
+  <name>MSITE-596 parent</name>
+
+  <build>
+    <pluginManagement>
+      <plugins>
+        <plugin>
+          <groupId>org.apache.maven.plugins</groupId>
+          <artifactId>maven-site-plugin</artifactId>
+          <version>@project.version@</version>
+        </plugin>
+      </plugins>
+    </pluginManagement>
+  </build>
+
+  <reporting>
+    <plugins>
+      <plugin>
+        <artifactId>maven-project-info-reports-plugin</artifactId>
+        <version>2.3.1</version>
+        <reportSets>
+          <reportSet>
+            <reports>
+              <report>index</report>
+            </reports>
+          </reportSet>
+        </reportSets>
+      </plugin>
+    </plugins>
+  </reporting>
+
+  <modules>
+    <module>child</module>
+  </modules>
+
+</project>
diff --git a/src/it/inheritedReports/verify.bsh b/src/it/inheritedReports/verify.bsh
new file mode 100644
index 0000000..3877ef1
--- /dev/null
+++ b/src/it/inheritedReports/verify.bsh
@@ -0,0 +1,61 @@
+
+/*
+ * 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.
+ */
+
+import java.io.*;
+import org.codehaus.plexus.util.*;
+
+boolean result = true;
+
+try
+{
+    File parentSiteDirectory = new File( basedir, "target/site" );
+    File parentIndex = new File( parentSiteDirectory, "index.html" );
+    if ( !parentIndex.exists() || parentIndex.isDirectory() )
+    {
+        System.err.println( "no index file in parent or is a directory." );
+        result = false;
+    }
+
+    // CHILD
+
+    File childSiteDirectory = new File( basedir, "child/target/site" );
+
+    File childIndex = new File( childSiteDirectory, "index.html" );
+    if ( !childIndex.exists() )
+    {
+        System.err.println( "no index file in child." );
+        result = false;
+    }
+
+    File childIndex = new File( childSiteDirectory, "project-summary.html" );
+    if ( !childIndex.exists() )
+    {
+        System.err.println( "no project-summary file in child." );
+        result = false;
+    }
+
+}
+catch ( IOException e )
+{
+    e.printStackTrace();
+    result = false;
+}
+
+return result;
diff --git a/src/it/interpolation/invoker.properties b/src/it/interpolation/invoker.properties
new file mode 100644
index 0000000..01d82ee
--- /dev/null
+++ b/src/it/interpolation/invoker.properties
@@ -0,0 +1,2 @@
+invoker.goals.1 = clean
+invoker.goals.2 = site-deploy
diff --git a/src/it/interpolation/parent/pom.xml b/src/it/interpolation/parent/pom.xml
new file mode 100644
index 0000000..db44692
--- /dev/null
+++ b/src/it/interpolation/parent/pom.xml
@@ -0,0 +1,45 @@
+<!--
+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/xsd/maven-4.0.0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <groupId>org.apache.maven.plugins.site.its</groupId>
+  <artifactId>interpolation-parent</artifactId>
+  <version>1.0-SNAPSHOT</version>
+  <packaging>pom</packaging>
+
+  <name>site-interpolation IT - parent</name>
+
+  <properties>
+    <interpolated>interpolation</interpolated>
+    <site.server>site-deploy</site.server>
+    <site.repository>file://@project.build.directory@/it/${interpolated}/target/site-deployed/parent/</site.repository>
+  </properties>
+
+  <distributionManagement>
+    <site>
+      <id>${site.server}</id>
+      <url>${site.repository}</url>
+    </site>
+  </distributionManagement>
+
+</project>
diff --git a/src/it/interpolation/pom.xml b/src/it/interpolation/pom.xml
new file mode 100644
index 0000000..0ca7cad
--- /dev/null
+++ b/src/it/interpolation/pom.xml
@@ -0,0 +1,67 @@
+<!--
+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/xsd/maven-4.0.0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <parent>
+    <groupId>org.apache.maven.plugins.site.its</groupId>
+    <artifactId>interpolation-parent</artifactId>
+    <version>1.0-SNAPSHOT</version>
+    <relativePath>parent/</relativePath>
+  </parent>
+
+  <artifactId>interpolation</artifactId>
+  <packaging>pom</packaging>
+
+  <name>site-interpolation IT</name>
+
+  <properties>
+    <site.server>site-deploy</site.server>
+    <site.repository>file://@project.build.directory@/it/${interpolated}/target/site-deployed/</site.repository>
+  </properties>
+
+  <build>
+    <plugins>
+      <plugin>
+        <artifactId>maven-site-plugin</artifactId>
+        <version>@project.version@</version>
+      </plugin>
+    </plugins>
+  </build>
+
+  <reporting>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-project-info-reports-plugin</artifactId>
+        <version>2.4</version>
+        <reportSets>
+          <reportSet>
+            <reports>
+              <report>index</report>
+            </reports>
+          </reportSet>
+        </reportSets>
+      </plugin>
+    </plugins>
+  </reporting>
+</project>
diff --git a/src/it/interpolation/src/site/site.xml b/src/it/interpolation/src/site/site.xml
new file mode 100644
index 0000000..51133ad
--- /dev/null
+++ b/src/it/interpolation/src/site/site.xml
@@ -0,0 +1,32 @@
+<?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 name="MSITE-265" xmlns="http://maven.apache.org/DECORATION/1.0.0"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xsi:schemaLocation="http://maven.apache.org/DECORATION/1.0.0 http://maven.apache.org/xsd/decoration-1.0.0.xsd">
+
+  <body>
+    <menu name="Welcome">
+      <item name="Index" href="index.html"/>
+    </menu>
+    <menu ref="reports"/>
+  </body>
+</project>
diff --git a/src/it/interpolation/src/site/xdoc/index.xml b/src/it/interpolation/src/site/xdoc/index.xml
new file mode 100644
index 0000000..d73f722
--- /dev/null
+++ b/src/it/interpolation/src/site/xdoc/index.xml
@@ -0,0 +1,28 @@
+<?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.
+-->
+
+<document>
+  <body>
+    <section name="Overview">
+      <p>Welcome!</p>
+    </section>
+  </body>
+</document>
\ No newline at end of file
diff --git a/src/it/interpolation/verify.bsh b/src/it/interpolation/verify.bsh
new file mode 100644
index 0000000..567173c
--- /dev/null
+++ b/src/it/interpolation/verify.bsh
@@ -0,0 +1,58 @@
+
+/*
+ * 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.
+ */
+
+import java.io.*;
+import org.codehaus.plexus.util.*;
+
+boolean result = true;
+
+try
+{
+    File target = new File( basedir, "target" );
+    if ( !target.exists() || !target.isDirectory() )
+    {
+        System.err.println( "target file is missing or not a directory." );
+        System.err.println( target.getAbsolutePath() );
+        result = false;
+    }
+
+    File siteDirectory = new File( target, "site-deployed/interpolation" );
+    if ( !siteDirectory.exists() || !siteDirectory.isDirectory() )
+    {
+        System.err.println( "site file is missing or not a directory." );
+        System.err.println( siteDirectory.getAbsolutePath() );
+        result = false;
+    }
+
+    File index = new File( siteDirectory, "index.html" );
+    if ( !index.exists() || index.isDirectory() )
+    {
+        System.err.println( "index.html file is missing or a directory." );
+        System.err.println( index.getAbsolutePath() );
+        result = false;
+    }
+}
+catch ( IOException e )
+{
+    e.printStackTrace();
+    result = false;
+}
+
+return result;
diff --git a/src/it/it-plugin-test/pom.xml b/src/it/it-plugin-test/pom.xml
new file mode 100644
index 0000000..92747ce
--- /dev/null
+++ b/src/it/it-plugin-test/pom.xml
@@ -0,0 +1,37 @@
+<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/xsd/maven-4.0.0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <groupId>org.apache.maven.plugins.site.its</groupId>
+  <artifactId>it-plugin-test</artifactId>
+  <version>1.0-SNAPSHOT</version>
+  <packaging>maven-plugin</packaging>
+
+  <name>it-plugin-test Maven Mojo</name>
+  <url>http://maven.apache.org</url>
+
+  <dependencies>
+    <dependency>
+      <groupId>org.apache.maven</groupId>
+      <artifactId>maven-plugin-api</artifactId>
+      <version>2.2.1</version>
+    </dependency>
+    <dependency>
+      <groupId>junit</groupId>
+      <artifactId>junit</artifactId>
+      <version>3.8.2</version>
+      <scope>test</scope>
+    </dependency>
+  </dependencies>
+
+  <reporting>
+    <excludeDefaults>true</excludeDefaults>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-plugin-plugin</artifactId>
+        <version>2.5.1</version>
+      </plugin>
+    </plugins>
+  </reporting>
+</project>
diff --git a/src/it/it-plugin-test/src/main/java/org/apache/maven/plugins/it/MyMojo.java b/src/it/it-plugin-test/src/main/java/org/apache/maven/plugins/it/MyMojo.java
new file mode 100644
index 0000000..7afe031
--- /dev/null
+++ b/src/it/it-plugin-test/src/main/java/org/apache/maven/plugins/it/MyMojo.java
@@ -0,0 +1,81 @@
+package org.apache.maven.plugins.it;
+
+/*
+ * Copyright 2001-2005 The Apache Software Foundation.
+ *
+ * Licensed 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.
+ */
+
+import org.apache.maven.plugin.AbstractMojo;
+import org.apache.maven.plugin.MojoExecutionException;
+
+import java.io.File;
+import java.io.FileWriter;
+import java.io.IOException;
+
+/**
+ * Goal which touches a timestamp file.
+ *
+ * @goal touch
+ * 
+ * @phase process-sources
+ */
+public class MyMojo
+    extends AbstractMojo
+{
+    /**
+     * Location of the file.
+     * @parameter expression="${project.build.directory}"
+     * @required
+     */
+    private File outputDirectory;
+
+    public void execute()
+        throws MojoExecutionException
+    {
+        File f = outputDirectory;
+
+        if ( !f.exists() )
+        {
+            f.mkdirs();
+        }
+
+        File touch = new File( f, "touch.txt" );
+
+        FileWriter w = null;
+        try
+        {
+            w = new FileWriter( touch );
+
+            w.write( "touch.txt" );
+        }
+        catch ( IOException e )
+        {
+            throw new MojoExecutionException( "Error creating file " + touch, e );
+        }
+        finally
+        {
+            if ( w != null )
+            {
+                try
+                {
+                    w.close();
+                }
+                catch ( IOException e )
+                {
+                    // ignore
+                }
+            }
+        }
+    }
+}
diff --git a/src/it/no-version/invoker.properties b/src/it/no-version/invoker.properties
new file mode 100644
index 0000000..66a1bf4
--- /dev/null
+++ b/src/it/no-version/invoker.properties
@@ -0,0 +1 @@
+invoker.maven.version = 3.0-
diff --git a/src/it/no-version/pom.xml b/src/it/no-version/pom.xml
new file mode 100644
index 0000000..99ac85d
--- /dev/null
+++ b/src/it/no-version/pom.xml
@@ -0,0 +1,47 @@
+<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/xsd/maven-4.0.0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <groupId>org.apache.maven.plugins.site.its</groupId>
+  <artifactId>no-version</artifactId>
+  <version>1.0-SNAPSHOT</version>
+  <packaging>jar</packaging>
+
+  <name>maven-site-plugin IT: no version</name>
+  <description>no version defined in report plugin configuration</description>
+  <url>http://maven.apache.org</url>
+
+  <dependencies>
+    <dependency>
+      <groupId>junit</groupId>
+      <artifactId>junit</artifactId>
+      <version>3.8.2</version>
+      <scope>test</scope>
+    </dependency>
+  </dependencies>
+
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-site-plugin</artifactId>
+        <version>@project.version@</version>
+      </plugin>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-surefire-report-plugin</artifactId>
+        <version>2.4.3</version>
+      </plugin>
+    </plugins>
+  </build>
+
+  <reporting>
+    <excludeDefaults>true</excludeDefaults>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-surefire-report-plugin</artifactId>
+      </plugin>
+    </plugins>
+  </reporting>
+</project>
diff --git a/src/it/no-version/src/main/java/org/apache/maven/plugins/site/its/App.java b/src/it/no-version/src/main/java/org/apache/maven/plugins/site/its/App.java
new file mode 100644
index 0000000..99599fc
--- /dev/null
+++ b/src/it/no-version/src/main/java/org/apache/maven/plugins/site/its/App.java
@@ -0,0 +1,13 @@
+package org.apache.maven.plugins.site.its;
+
+/**
+ * Hello world!
+ *
+ */
+public class App 
+{
+    public static void main( String[] args )
+    {
+        System.out.println( "Hello World!" );
+    }
+}
diff --git a/src/it/no-version/src/test/java/org/apache/maven/plugins/site/its/AppTest.java b/src/it/no-version/src/test/java/org/apache/maven/plugins/site/its/AppTest.java
new file mode 100644
index 0000000..b5af6d5
--- /dev/null
+++ b/src/it/no-version/src/test/java/org/apache/maven/plugins/site/its/AppTest.java
@@ -0,0 +1,44 @@
+package org.apache.maven.plugins.site.its;
+
+import junit.framework.Test;
+import junit.framework.TestCase;
+import junit.framework.TestSuite;
+
+/**
+ * Unit test for simple App.
+ */
+public class AppTest 
+    extends TestCase
+{
+    /**
+     * Create the test case
+     *
+     * @param testName name of the test case
+     */
+    public AppTest( String testName )
+    {
+        super( testName );
+    }
+
+    /**
+     * @return the suite of tests being tested
+     */
+    public static Test suite()
+    {
+        return new TestSuite( AppTest.class );
+    }
+
+    /**
+     * Rigourous Test :-)
+     */
+    public void testApp()
+    {
+        assertTrue( true );
+    }
+    
+    /*
+    public void testFailed()
+    {
+        assertTrue( false );
+    } */   
+}
diff --git a/src/it/no-version/verify.groovy b/src/it/no-version/verify.groovy
new file mode 100644
index 0000000..8148c3a
--- /dev/null
+++ b/src/it/no-version/verify.groovy
@@ -0,0 +1,31 @@
+
+/*
+ * 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.
+ */
+assert new File( basedir, 'target/surefire-reports' ).exists();
+assert new File( basedir, 'target/surefire-reports/org.apache.maven.plugins.site.its.AppTest.txt' ).exists();
+content = new File( basedir, 'target/surefire-reports/org.apache.maven.plugins.site.its.AppTest.txt' ).text;
+
+assert content.contains( 'Test set: org.apache.maven.plugins.site.its.AppTest' );
+
+assert content.contains( 'Tests run: 1, Failures: 0, Errors: 0, Skipped: 0' );
+
+assert new File( basedir, 'target/site/surefire-report.html' ).exists();
+assert !new File( basedir, 'target/site/index.html' ).exists();
+
+return true;
\ No newline at end of file
diff --git a/src/it/report-changes-generation/invoker.properties b/src/it/report-changes-generation/invoker.properties
new file mode 100644
index 0000000..66a1bf4
--- /dev/null
+++ b/src/it/report-changes-generation/invoker.properties
@@ -0,0 +1 @@
+invoker.maven.version = 3.0-
diff --git a/src/it/report-changes-generation/pom.xml b/src/it/report-changes-generation/pom.xml
new file mode 100644
index 0000000..94cbb1b
--- /dev/null
+++ b/src/it/report-changes-generation/pom.xml
@@ -0,0 +1,112 @@
+<?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/xsd/maven-4.0.0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <groupId>org.apache.maven.plugins.site.its</groupId>
+  <artifactId>report-changes-generation</artifactId>
+  <version>99.0</version>
+  <packaging>jar</packaging>
+
+  <name>maven-site-plugin IT: maven-changes-plugin</name>
+  <description>Test maven-changes-plugin report generation.</description>
+
+  <dependencies>
+    <dependency>
+      <groupId>junit</groupId>
+      <artifactId>junit</artifactId>
+      <version>3.8.1</version>
+      <scope>test</scope>
+    </dependency>
+  </dependencies>
+
+  <issueManagement>
+    <system>jira</system>
+    <url>http://localhost/bla</url>
+  </issueManagement>
+
+  <properties>
+    <changesPluginVersion>2.1</changesPluginVersion>
+  </properties>
+
+  <build>
+    <pluginManagement>
+      <plugins>
+        <plugin>
+          <groupId>org.apache.maven.plugins</groupId>
+          <artifactId>maven-changes-plugin</artifactId>
+          <version>${changesPluginVersion}</version>
+          <configuration>
+            <issueLinkTemplate>http://myjira/browse/%ISSUE%</issueLinkTemplate>
+          </configuration>
+        </plugin>
+      </plugins>
+    </pluginManagement>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-changes-plugin</artifactId>
+        <version>${changesPluginVersion}</version>
+        <executions>
+          <execution>
+            <id>validate-changes</id>
+            <phase>pre-site</phase>
+            <goals>
+              <goal>changes-validate</goal>
+            </goals>
+            <configuration>
+              <failOnError>true</failOnError>
+            </configuration>
+          </execution>
+        </executions>
+      </plugin>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-site-plugin</artifactId>
+        <version>@pom.version@</version>
+      </plugin>
+    </plugins>
+  </build>
+
+  <reporting>
+    <excludeDefaults>true</excludeDefaults>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-changes-plugin</artifactId>
+        <version>${changesPluginVersion}</version>
+        <configuration>
+          <issueLinkTemplate>http://myjira/browse/%ISSUE%</issueLinkTemplate>
+        </configuration>
+        <reportSets>
+          <reportSet>
+            <reports>
+              <report>changes-report</report>
+            </reports>
+          </reportSet>
+        </reportSets>
+      </plugin>
+    </plugins>
+  </reporting>
+
+</project>
diff --git a/src/it/report-changes-generation/src/changes/changes.xml b/src/it/report-changes-generation/src/changes/changes.xml
new file mode 100644
index 0000000..a3ce68e
--- /dev/null
+++ b/src/it/report-changes-generation/src/changes/changes.xml
@@ -0,0 +1,65 @@
+<!--
+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.
+-->
+
+<document xmlns="http://maven.apache.org/changes/1.0.0"
+  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:schemaLocation="http://maven.apache.org/changes/1.0.0 http://maven.apache.org/xsd/changes-1.0.0.xsd">
+  <properties>
+    <title>Changes report Project</title>
+    <author email="zloug@toto.com">Mr Zloug</author>
+  </properties>
+  <body>
+    <release version="1.1" date="2005-03-01" description="Subsequent release">
+      <action dev="me" type="add">
+        Added additional documentation on how to configure the plugin.
+      </action>
+      <action dev="me" type="fix" issue="MCHANGES-88">
+        Enable retrieving component-specific issues.
+      </action>
+      <action dev="jruiz" type="remove">
+        The element type " link " must be terminated by the matching end-tag.
+        Deleted the erroneous code.
+        <fixes issue="MCHANGES-1"/>
+        <fixes issue="JIRA-12"/>
+        <dueto name="John Doe" email="john@doe.com"/>
+        <dueto name="Jane Doe"/>
+      </action>
+      <action dev="you" type="update" system="bugzilla">
+        Handle different issue systems.
+        <fixes issue="bug-12345"/>
+        <dueto name="John Doe" email="john@doe.com"/>
+      </action>
+      <action dev="him" type="update">
+        Updated dependencies.
+        <dueto name="John Doe" email="john@doe.com"/>
+        <dueto name="Jane Doe"/>
+      </action>
+    </release>
+
+    <release version="1.0" date="2005-01-01" description="First release">
+      <action dev="me" type="update" issue="MCHANGES-47" due-to="others" due-to-email="others@users.com">
+        Uploaded documentation on how to use the plugin.
+        <fixes issue="MCHANGES-88"/>
+        <fixes issue="JIRA-YYY"/>
+        <dueto name="John Doe" email="john@doe.com"/>
+        <dueto name="Jane Doe"/>
+      </action>
+    </release>
+  </body>
+</document>
\ No newline at end of file
diff --git a/src/it/report-changes-generation/verify.bsh b/src/it/report-changes-generation/verify.bsh
new file mode 100644
index 0000000..fb3946e
--- /dev/null
+++ b/src/it/report-changes-generation/verify.bsh
@@ -0,0 +1,81 @@
+
+/*
+ * 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.
+ */
+
+import java.io.*;
+import java.util.*;
+import java.util.jar.*;
+import org.codehaus.plexus.util.*;
+
+boolean result = true;
+
+try
+{
+    File report = new File( basedir, "target/site/changes-report.html" );
+    if ( !report.exists() || report.isDirectory() )
+    {
+        System.err.println( "report file is missing or a directory." );
+        return false;
+    }
+    String reportContent = FileUtils.fileRead( report );
+
+    int indexOf = reportContent.indexOf( "Changes Report" );
+    if ( indexOf < 0 )
+    {
+      System.err.println( "changes-report.html doesn't contains Changes Report title" );
+      return false;
+    }
+
+    indexOf = reportContent.indexOf( "href=\"http://myjira/browse/MCHANGES-88\"" );
+    if ( indexOf < 0 )
+    {
+      System.err.println( "changes-report.html doesn't contains jira issue link" );
+      return false;
+    }
+
+    // Test for output problem caused by only using <dueTo> elements
+    indexOf = reportContent.indexOf( "Thanks to , " );
+    if ( indexOf != -1 )
+    {
+      System.err.println( "changes-report.html has too many dueTos in the Map" );
+      return false;
+    }
+
+    // Tests output problems caused by only using <fixes> element
+    indexOf = reportContent.indexOf( "bug-12345" );
+    if ( indexOf < 0 )
+    {
+      System.err.println( "changes-report.html doesn't contains issue text for issue specified with <fixes> element" );
+      return false;
+    }
+    indexOf = reportContent.indexOf( "Fixes ." );
+    if ( indexOf != -1 )
+    {
+      System.err.println( "changes-report.html doesn't handle empty fixes attribute properly" );
+      return false;
+    }
+
+}
+catch ( Throwable e )
+{
+    e.printStackTrace();
+    result = false;
+}
+
+return result;
diff --git a/src/it/settings.xml b/src/it/settings.xml
new file mode 100644
index 0000000..c8f77f0
--- /dev/null
+++ b/src/it/settings.xml
@@ -0,0 +1,55 @@
+<?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.
+-->
+
+<settings>
+  <profiles>
+    <profile>
+      <id>it-repo</id>
+      <activation>
+        <activeByDefault>true</activeByDefault>
+      </activation>
+      <repositories>
+        <repository>
+          <id>local.central</id>
+          <url>@localRepositoryUrl@</url>
+          <releases>
+            <enabled>true</enabled>
+          </releases>
+          <snapshots>
+            <enabled>true</enabled>
+          </snapshots>
+        </repository>
+      </repositories>
+      <pluginRepositories>
+        <pluginRepository>
+          <id>local.central</id>
+          <url>@localRepositoryUrl@</url>
+          <releases>
+            <enabled>true</enabled>
+          </releases>
+          <snapshots>
+            <enabled>true</enabled>
+          </snapshots>
+        </pluginRepository>
+      </pluginRepositories>
+    </profile>
+  </profiles>
+</settings>
diff --git a/src/it/site-attach-descriptor/goals.txt b/src/it/site-attach-descriptor/goals.txt
new file mode 100644
index 0000000..0beae86
--- /dev/null
+++ b/src/it/site-attach-descriptor/goals.txt
@@ -0,0 +1 @@
+clean site:attach-descriptor deploy
\ No newline at end of file
diff --git a/src/it/site-attach-descriptor/invoker.properties b/src/it/site-attach-descriptor/invoker.properties
new file mode 100644
index 0000000..66a1bf4
--- /dev/null
+++ b/src/it/site-attach-descriptor/invoker.properties
@@ -0,0 +1 @@
+invoker.maven.version = 3.0-
diff --git a/src/it/site-attach-descriptor/pom.xml b/src/it/site-attach-descriptor/pom.xml
new file mode 100644
index 0000000..14f8c88
--- /dev/null
+++ b/src/it/site-attach-descriptor/pom.xml
@@ -0,0 +1,86 @@
+<!--
+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/xsd/maven-4.0.0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <groupId>org.apache.maven.plugins.site.its</groupId>
+  <artifactId>site-attach-descriptor</artifactId>
+  <version>1.0-SNAPSHOT</version>
+  <packaging>pom</packaging>
+
+  <name>site-attach-descriptor IT</name>
+
+  <properties>
+    <currentVersion>2.0.7</currentVersion>
+    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+  </properties>
+
+  <distributionManagement>
+    <snapshotRepository>
+      <uniqueVersion>false</uniqueVersion>
+      <id>site-deploy</id>
+      <name>Example company web server</name>
+      <url>file://@project.build.directory@/it/site-attach-descriptor/target/snapshot-repo/</url>
+    </snapshotRepository>
+  </distributionManagement>
+
+  <build>
+    <pluginManagement>
+      <plugins>
+        <plugin>
+          <artifactId>maven-site-plugin</artifactId>
+          <version>@project.version@</version>
+        </plugin>
+        <plugin>
+          <artifactId>maven-deploy-plugin</artifactId>
+          <version>2.5</version>
+        </plugin>
+      </plugins>
+    </pluginManagement>
+    <plugins>
+      <plugin>
+        <artifactId>maven-site-plugin</artifactId>
+        <version>@project.version@</version>
+        <configuration>
+          <locales>en,sv</locales>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
+
+  <reporting>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-project-info-reports-plugin</artifactId>
+        <version>2.1.2</version>
+        <reportSets>
+          <reportSet>
+            <reports>
+              <report>index</report>
+            </reports>
+          </reportSet>
+        </reportSets>
+      </plugin>
+    </plugins>
+  </reporting>
+</project>
diff --git a/src/it/site-attach-descriptor/src/site/site.xml b/src/it/site-attach-descriptor/src/site/site.xml
new file mode 100644
index 0000000..fb48b04
--- /dev/null
+++ b/src/it/site-attach-descriptor/src/site/site.xml
@@ -0,0 +1,43 @@
+<?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 name="MSITE-265" xmlns="http://maven.apache.org/DECORATION/1.0.0"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xsi:schemaLocation="http://maven.apache.org/DECORATION/1.0.0 http://maven.apache.org/xsd/decoration-1.0.0.xsd">
+  <publishDate format="dd MMM yyyy HH:mm"/>
+  <version position="left"/>
+  <skin>
+    <groupId>org.apache.maven.skins</groupId>
+    <artifactId>maven-stylus-skin</artifactId>
+  </skin>
+  <body>
+    <breadcrumbs>
+      <item name="Maven" href="http://maven.apache.org/${currentVersion}"/>
+    </breadcrumbs>
+    <menu name="Releases TODO">
+      <item name="release1.6" href="releases/release1.6.html"/>
+      <item name="release1.6.3" href="releases/release1.6.3.html"/>
+    </menu>
+    <menu ref="parent"/>
+    <menu ref="reports"/>
+    <menu ref="modules"/>
+  </body>
+</project>
diff --git a/src/it/site-attach-descriptor/src/site/site_sv.xml b/src/it/site-attach-descriptor/src/site/site_sv.xml
new file mode 100644
index 0000000..ac4fa8e
--- /dev/null
+++ b/src/it/site-attach-descriptor/src/site/site_sv.xml
@@ -0,0 +1,43 @@
+<?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 name="MSITE-265" xmlns="http://maven.apache.org/DECORATION/1.0.0"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xsi:schemaLocation="http://maven.apache.org/DECORATION/1.0.0 http://maven.apache.org/xsd/decoration-1.0.0.xsd">
+  <publishDate format="dd MMM yyyy HH:mm"/>
+  <version position="left"/>
+  <skin>
+    <groupId>org.apache.maven.skins</groupId>
+    <artifactId>maven-stylus-skin</artifactId>
+  </skin>
+  <body>
+    <breadcrumbs>
+      <item name="Maven" href="http://maven.apache.org/${currentVersion}"/>
+    </breadcrumbs>
+    <menu name="Releaser att g�ra">
+      <item name="release1.6" href="releases/release1.6.html"/>
+      <item name="release1.6.3" href="releases/release1.6.3.html"/>
+    </menu>
+    <menu ref="parent"/>
+    <menu ref="reports"/>
+    <menu ref="modules"/>
+  </body>
+</project>
diff --git a/src/it/site-attach-descriptor/src/site/xdoc/index.xml b/src/it/site-attach-descriptor/src/site/xdoc/index.xml
new file mode 100644
index 0000000..104a9e2
--- /dev/null
+++ b/src/it/site-attach-descriptor/src/site/xdoc/index.xml
@@ -0,0 +1,28 @@
+<?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.
+-->
+
+<document>
+  <body>
+    <section name="Overview">
+      <p>MSITE-265.</p>
+    </section>
+  </body>
+</document>
\ No newline at end of file
diff --git a/src/it/site-attach-descriptor/verify.bsh b/src/it/site-attach-descriptor/verify.bsh
new file mode 100644
index 0000000..59b401d
--- /dev/null
+++ b/src/it/site-attach-descriptor/verify.bsh
@@ -0,0 +1,63 @@
+
+/*
+ * 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.
+ */
+
+import java.io.*;
+import org.codehaus.plexus.util.*;
+
+boolean result = true;
+
+try
+{
+    File target = new File( basedir, "target" );
+    if ( !target.exists() || !target.isDirectory() )
+    {
+        System.err.println( "target file is missing or not a directory." );
+        return false;
+    }
+
+    File siteDescriptor = new File( target, "site-attach-descriptor-1.0-SNAPSHOT-site.xml" );
+    if ( !siteDescriptor.exists() || siteDescriptor.isDirectory() )
+    {
+        System.err.println( "siteDescriptor file is missing from target or is a directory." );
+        return false;
+    }
+
+    File siteDescriptor = new File( target, "snapshot-repo/org/apache/maven/plugins/site/its/site-attach-descriptor/1.0-SNAPSHOT/site-attach-descriptor-1.0-SNAPSHOT-site.xml" );
+    if ( !siteDescriptor.exists() || siteDescriptor.isDirectory() )
+    {
+        System.err.println( "siteDescriptor file is missing from local repository or is a directory." );
+        return false;
+    }
+
+    File siteDescriptorSwedish = new File( target, "site-attach-descriptor-1.0-SNAPSHOT-site_sv.xml" );
+    if ( !siteDescriptorSwedish.exists() || siteDescriptorSwedish.isDirectory() )
+    {
+        System.err.println( "siteDescriptorSwedish file is missing from target or is a directory." );
+        return false;
+    }
+
+}
+catch( IOException e )
+{
+    e.printStackTrace();
+    result = false;
+}
+
+return result;
diff --git a/src/it/site-deploy/goals.txt b/src/it/site-deploy/goals.txt
new file mode 100644
index 0000000..6809c2f
--- /dev/null
+++ b/src/it/site-deploy/goals.txt
@@ -0,0 +1 @@
+clean site:site site:deploy
\ No newline at end of file
diff --git a/src/it/site-deploy/pom.xml b/src/it/site-deploy/pom.xml
new file mode 100644
index 0000000..864c2b0
--- /dev/null
+++ b/src/it/site-deploy/pom.xml
@@ -0,0 +1,70 @@
+<!--
+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/xsd/maven-4.0.0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <groupId>org.apache.maven.plugins.site.its</groupId>
+  <artifactId>site-deploy</artifactId>
+  <version>1.0-SNAPSHOT</version>
+  <packaging>pom</packaging>
+
+  <name>site-deploy IT</name>
+
+  <properties>
+    <currentVersion>2.0.7</currentVersion>
+    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+  </properties>
+
+  <distributionManagement>
+    <site>
+      <id>site-deploy</id>
+      <name>Example company web server</name>
+      <url>file://@project.build.directory@/it/site-deploy/target/site-deployed/</url>
+    </site>
+  </distributionManagement>
+
+  <build>
+    <plugins>
+      <plugin>
+        <artifactId>maven-site-plugin</artifactId>
+        <version>@project.version@</version>
+      </plugin>
+    </plugins>
+  </build>
+
+  <reporting>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-project-info-reports-plugin</artifactId>
+        <version>2.1.2</version>
+        <reportSets>
+          <reportSet>
+            <reports>
+              <report>index</report>
+            </reports>
+          </reportSet>
+        </reportSets>
+      </plugin>
+    </plugins>
+  </reporting>
+</project>
diff --git a/src/it/site-deploy/src/main/java/foo/App.java b/src/it/site-deploy/src/main/java/foo/App.java
new file mode 100644
index 0000000..6e61fcf
--- /dev/null
+++ b/src/it/site-deploy/src/main/java/foo/App.java
@@ -0,0 +1,32 @@
+package foo;
+
+/*
+ * 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.
+ */
+
+/**
+ * Hello world!
+ *
+ */
+public class App 
+{
+    public static void main( String[] args )
+    {
+        System.out.println( "Hello World!" );
+    }
+}
diff --git a/src/it/site-deploy/src/site/apt/download.apt.vm b/src/it/site-deploy/src/site/apt/download.apt.vm
new file mode 100644
index 0000000..26b2f06
--- /dev/null
+++ b/src/it/site-deploy/src/site/apt/download.apt.vm
@@ -0,0 +1,36 @@
+ ------
+Download Maven ${currentVersion}
+ ------
+Brett Porter
+Jason van Zyl
+ ------
+4 October 2005
+ ------
+
+ ~~ 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.
+
+
+Download Maven ${currentVersion}
+
+  Encoding support test:
+
+  * source file encoding is configured in <<<pom.xml>>>: <<<UTF-8>>>
+
+  * using default reporting output files encoding: <<<UTF-8>>>
+
+  * demo character: € (euro)
\ No newline at end of file
diff --git a/src/it/site-deploy/src/site/site.xml b/src/it/site-deploy/src/site/site.xml
new file mode 100644
index 0000000..b084a98
--- /dev/null
+++ b/src/it/site-deploy/src/site/site.xml
@@ -0,0 +1,44 @@
+<?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 name="MSITE-265" xmlns="http://maven.apache.org/DECORATION/1.0.0"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xsi:schemaLocation="http://maven.apache.org/DECORATION/1.0.0 http://maven.apache.org/xsd/decoration-1.0.0.xsd">
+  <publishDate format="dd MMM yyyy HH:mm"/>
+  <version position="left"/>
+  <skin>
+    <groupId>org.apache.maven.skins</groupId>
+    <artifactId>maven-stylus-skin</artifactId>
+    <version>1.2</version>
+  </skin>
+  <body>
+    <breadcrumbs>
+      <item name="Maven" href="http://maven.apache.org/${currentVersion}"/>
+    </breadcrumbs>
+    <menu name="Releases TODO">
+      <item name="release1.6" href="releases/release1.6.html"/>
+      <item name="release1.6.3" href="releases/release1.6.3.html"/>
+    </menu>
+    <menu ref="parent"/>
+    <menu ref="reports"/>
+    <menu ref="modules"/>
+  </body>
+</project>
diff --git a/src/it/site-deploy/src/site/xdoc/index.xml b/src/it/site-deploy/src/site/xdoc/index.xml
new file mode 100644
index 0000000..104a9e2
--- /dev/null
+++ b/src/it/site-deploy/src/site/xdoc/index.xml
@@ -0,0 +1,28 @@
+<?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.
+-->
+
+<document>
+  <body>
+    <section name="Overview">
+      <p>MSITE-265.</p>
+    </section>
+  </body>
+</document>
\ No newline at end of file
diff --git a/src/it/site-deploy/src/site/xdoc/releases/release1.6.3.xml b/src/it/site-deploy/src/site/xdoc/releases/release1.6.3.xml
new file mode 100644
index 0000000..cfe9685
--- /dev/null
+++ b/src/it/site-deploy/src/site/xdoc/releases/release1.6.3.xml
@@ -0,0 +1,28 @@
+<?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.
+-->
+
+<document>
+  <body>
+    <section name="todo">
+      <p>Release TODO 1.6.3</p>
+    </section>
+  </body>
+</document>
diff --git a/src/it/site-deploy/src/site/xdoc/releases/release1.6.xml b/src/it/site-deploy/src/site/xdoc/releases/release1.6.xml
new file mode 100644
index 0000000..13ebe2e
--- /dev/null
+++ b/src/it/site-deploy/src/site/xdoc/releases/release1.6.xml
@@ -0,0 +1,28 @@
+<?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.
+-->
+
+<document>
+  <body>
+    <section name="todo">
+      <p>Release TODO 1.6</p>
+    </section>
+  </body>
+</document>
\ No newline at end of file
diff --git a/src/it/site-deploy/verify.bsh b/src/it/site-deploy/verify.bsh
new file mode 100644
index 0000000..3488815
--- /dev/null
+++ b/src/it/site-deploy/verify.bsh
@@ -0,0 +1,81 @@
+
+/*
+ * 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.
+ */
+
+import java.io.*;
+import org.codehaus.plexus.util.*;
+
+boolean result = true;
+
+try
+{
+    File target = new File( basedir, "target" );
+    if ( !target.exists() || !target.isDirectory() )
+    {
+        System.err.println( "target file is missing or not a directory." );
+        return false;
+    }
+
+    File siteDirectory = new File( target, "site-deployed" );
+    if ( !siteDirectory.exists() || !siteDirectory.isDirectory() )
+    {
+        System.err.println( "site file is missing or not a directory." );
+        return false;
+    }
+
+    File releaseDirectory = new File( siteDirectory, "releases" );
+    if ( !releaseDirectory.exists() || !releaseDirectory.isDirectory() )
+    {
+        System.err.println( "releaseDirectory file is missing or not a directory." );
+        return false;
+    }
+    File release163 = new File( releaseDirectory, "release1.6.3.html" );
+    if ( !release163.exists() || release163.isDirectory() )
+    {
+        System.err.println( "release163 file is missing or a directory." );
+        return false;
+    }
+    File release16 = new File( releaseDirectory, "release1.6.html" );
+    if ( !release16.exists() || release16.isDirectory() )
+    {
+        System.err.println( "release16 file is missing or a directory." );
+        return false;
+    }
+
+    File download = new File( siteDirectory, "download.html" );
+    if ( !download.exists() || download.isDirectory() )
+    {
+        System.err.println( "download.html file is missing or a directory." );
+        return false;
+    }
+    String downloadContent = FileUtils.fileRead( download, "UTF-8" );
+    int indexOf = downloadContent.indexOf( "Download Maven 2.0.7" );
+    if ( indexOf < 0 )
+    {
+        System.err.println( "download.html doesn't contain Download Maven 2.0.7" );
+        return false;
+    }
+}
+catch ( IOException e )
+{
+    e.printStackTrace();
+    result = false;
+}
+
+return result;
diff --git a/src/it/site-inheritance/aggregator/pom.xml b/src/it/site-inheritance/aggregator/pom.xml
new file mode 100644
index 0000000..dfe5256
--- /dev/null
+++ b/src/it/site-inheritance/aggregator/pom.xml
@@ -0,0 +1,56 @@
+<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/xsd/maven-4.0.0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <groupId>test-site-inheritance</groupId>
+  <artifactId>aggregator</artifactId>
+  <version>1.0-SNAPSHOT</version>
+  <packaging>pom</packaging>
+  <name>Aggregator</name>
+  <url>http://webhost.company.com/</url>
+
+  <distributionManagement>
+    <site>
+      <id>website</id>
+      <url>file:///@project.build.directory@/it/site-inheritance/webhost.company.com/deploy/</url>
+    </site>
+  </distributionManagement>
+
+  <build>
+    <pluginManagement>
+      <plugins>
+        <plugin>
+          <artifactId>maven-site-plugin</artifactId>
+          <version>@project.version@</version>
+          <configuration>
+            <stagingDirectory>@project.build.directory@/it/site-inheritance/webhost.company.com/stage/</stagingDirectory>
+            <stagingSiteURL>file:///@project.build.directory@/it/site-inheritance/webhost.company.com/stage-deploy/</stagingSiteURL>
+          </configuration>
+        </plugin>
+      </plugins>
+    </pluginManagement>
+  </build>
+
+  <reporting>
+    <plugins>
+      <plugin>
+        <artifactId>maven-project-info-reports-plugin</artifactId>
+        <version>2.3.1</version>
+        <reportSets>
+          <reportSet>
+            <reports>
+              <report>index</report>
+            </reports>
+          </reportSet>
+        </reportSets>
+      </plugin>
+    </plugins>
+  </reporting>
+
+  <modules>
+    <module>../child_and_module</module>
+    <module>../inheriting_child</module>
+    <module>../module</module>
+  </modules>
+
+</project>
diff --git a/src/it/site-inheritance/child_and_module/pom.xml b/src/it/site-inheritance/child_and_module/pom.xml
new file mode 100644
index 0000000..46bcb74
--- /dev/null
+++ b/src/it/site-inheritance/child_and_module/pom.xml
@@ -0,0 +1,26 @@
+<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/xsd/maven-4.0.0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <parent>
+    <groupId>test-site-inheritance</groupId>
+    <artifactId>parent</artifactId>
+    <version>1.0-SNAPSHOT</version>
+    <relativePath>../parent/pom.xml</relativePath>
+  </parent>
+
+  <artifactId>child_and_module</artifactId>
+  <name>Child and Module</name>
+  <url>http://webhost.company.com/www/website/deep/down/below/</url>
+
+  <distributionManagement>
+    <site>
+      <id>website</id>
+      <url>file:///@project.build.directory@/it/site-inheritance/webhost.company.com/deploy/www/website/deep/down/below/</url>
+    </site>
+  </distributionManagement>
+
+  <properties>
+    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+  </properties>
+</project>
diff --git a/src/it/site-inheritance/child_and_module/src/site/apt/index.apt b/src/it/site-inheritance/child_and_module/src/site/apt/index.apt
new file mode 100644
index 0000000..f5934ea
--- /dev/null
+++ b/src/it/site-inheritance/child_and_module/src/site/apt/index.apt
@@ -0,0 +1,11 @@
+ -----
+ Title Here
+ -----
+ Author Here
+ -----
+ Date Here
+ -----
+
+Maven Site for child
+
+ Congratulations! If you see this, you're awake.
\ No newline at end of file
diff --git a/src/it/site-inheritance/child_and_module/src/site/site.xml b/src/it/site-inheritance/child_and_module/src/site/site.xml
new file mode 100644
index 0000000..6009201
--- /dev/null
+++ b/src/it/site-inheritance/child_and_module/src/site/site.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+
+<project name="Maven" xmlns="http://maven.apache.org/DECORATION/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:schemaLocation="http://maven.apache.org/DECORATION/1.0.0 http://maven.apache.org/xsd/decoration-1.0.0.xsd">
+  <body>
+
+    <links>
+      <!-- should all be equivalent -->
+      <item name="links /Child" href="/index.html"/>
+      <item name="links ./Child" href="./index.html"/>
+      <item name="links Child" href="index.html"/>
+    </links>
+
+    <breadcrumbs>
+      <!-- should all be equivalent -->
+      <item name="breadcrumbs /Child" href="/index.html"/>
+      <item name="breadcrumbs ./Child" href="./index.html"/>
+      <item name="breadcrumbs Child" href="index.html"/>
+    </breadcrumbs>
+
+    <menu ref="parent"/>
+    <menu ref="reports"/>
+
+  </body>
+</project>
diff --git a/src/it/site-inheritance/inheriting_child/pom.xml b/src/it/site-inheritance/inheriting_child/pom.xml
new file mode 100644
index 0000000..4004019
--- /dev/null
+++ b/src/it/site-inheritance/inheriting_child/pom.xml
@@ -0,0 +1,21 @@
+<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/xsd/maven-4.0.0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <parent>
+    <groupId>test-site-inheritance</groupId>
+    <artifactId>parent</artifactId>
+    <version>1.0-SNAPSHOT</version>
+    <relativePath>../parent</relativePath>
+  </parent>
+
+  <artifactId>inheriting_child</artifactId>
+  <name>Inheriting Child</name>
+
+<!-- same as child_and_module but WITHOUT DEPLOYMENT / STAGING URLs
+        to test they are properly inherited and links are correct -->
+
+  <properties>
+    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+  </properties>
+</project>
diff --git a/src/it/site-inheritance/inheriting_child/src/site/apt/index.apt b/src/it/site-inheritance/inheriting_child/src/site/apt/index.apt
new file mode 100644
index 0000000..f5934ea
--- /dev/null
+++ b/src/it/site-inheritance/inheriting_child/src/site/apt/index.apt
@@ -0,0 +1,11 @@
+ -----
+ Title Here
+ -----
+ Author Here
+ -----
+ Date Here
+ -----
+
+Maven Site for child
+
+ Congratulations! If you see this, you're awake.
\ No newline at end of file
diff --git a/src/it/site-inheritance/inheriting_child/src/site/site.xml b/src/it/site-inheritance/inheriting_child/src/site/site.xml
new file mode 100644
index 0000000..6009201
--- /dev/null
+++ b/src/it/site-inheritance/inheriting_child/src/site/site.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+
+<project name="Maven" xmlns="http://maven.apache.org/DECORATION/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:schemaLocation="http://maven.apache.org/DECORATION/1.0.0 http://maven.apache.org/xsd/decoration-1.0.0.xsd">
+  <body>
+
+    <links>
+      <!-- should all be equivalent -->
+      <item name="links /Child" href="/index.html"/>
+      <item name="links ./Child" href="./index.html"/>
+      <item name="links Child" href="index.html"/>
+    </links>
+
+    <breadcrumbs>
+      <!-- should all be equivalent -->
+      <item name="breadcrumbs /Child" href="/index.html"/>
+      <item name="breadcrumbs ./Child" href="./index.html"/>
+      <item name="breadcrumbs Child" href="index.html"/>
+    </breadcrumbs>
+
+    <menu ref="parent"/>
+    <menu ref="reports"/>
+
+  </body>
+</project>
diff --git a/src/it/site-inheritance/invoker.properties b/src/it/site-inheritance/invoker.properties
new file mode 100644
index 0000000..bba02fe
--- /dev/null
+++ b/src/it/site-inheritance/invoker.properties
@@ -0,0 +1,3 @@
+invoker.maven.version = 3.0-
+invoker.goals.1 = clean
+invoker.goals.2 = site:site site:deploy site:stage site:stage-deploy
diff --git a/src/it/site-inheritance/module/pom.xml b/src/it/site-inheritance/module/pom.xml
new file mode 100644
index 0000000..c296ac0
--- /dev/null
+++ b/src/it/site-inheritance/module/pom.xml
@@ -0,0 +1,55 @@
+<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/xsd/maven-4.0.0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <groupId>test-site-inheritance</groupId>
+  <artifactId>module</artifactId>
+  <version>1.0-SNAPSHOT</version>
+  <packaging>pom</packaging>
+  <name>Module</name>
+  <url>http://webhost.company.com/www/website/module</url>
+
+  <distributionManagement>
+    <site>
+      <id>website</id>
+      <url>file:///@project.build.directory@/it/site-inheritance/webhost.company.com/deploy/www/website/module</url>
+    </site>
+  </distributionManagement>
+
+  <build>
+      <plugins>
+        <plugin>
+          <artifactId>maven-site-plugin</artifactId>
+          <version>@project.version@</version>
+          <configuration>
+            <stagingDirectory>@project.build.directory@/it/site-inheritance/webhost.company.com/stage/www/website/module</stagingDirectory>
+            <stagingSiteURL>file:///@project.build.directory@/it/site-inheritance/webhost.company.com/stage-deploy/www/website/module</stagingSiteURL>
+          </configuration>
+        </plugin>
+      </plugins>
+  </build>
+
+  <reporting>
+    <plugins>
+      <plugin>
+        <artifactId>maven-project-info-reports-plugin</artifactId>
+        <version>2.3.1</version>
+        <reportSets>
+          <reportSet>
+            <reports>
+              <report>index</report>
+            </reports>
+          </reportSet>
+        </reportSets>
+      </plugin>
+    </plugins>
+  </reporting>
+
+  <modules>
+    <module>../sub_module</module>
+  </modules>
+
+  <properties>
+    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+  </properties>
+</project>
diff --git a/src/it/site-inheritance/module/src/site/apt/index.apt b/src/it/site-inheritance/module/src/site/apt/index.apt
new file mode 100644
index 0000000..f5934ea
--- /dev/null
+++ b/src/it/site-inheritance/module/src/site/apt/index.apt
@@ -0,0 +1,11 @@
+ -----
+ Title Here
+ -----
+ Author Here
+ -----
+ Date Here
+ -----
+
+Maven Site for child
+
+ Congratulations! If you see this, you're awake.
\ No newline at end of file
diff --git a/src/it/site-inheritance/module/src/site/site.xml b/src/it/site-inheritance/module/src/site/site.xml
new file mode 100644
index 0000000..ad38482
--- /dev/null
+++ b/src/it/site-inheritance/module/src/site/site.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+
+<project name="Maven" xmlns="http://maven.apache.org/DECORATION/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:schemaLocation="http://maven.apache.org/DECORATION/1.0.0 http://maven.apache.org/xsd/decoration-1.0.0.xsd">
+  <body>
+
+    <links>
+      <!-- should all be equivalent -->
+      <item name="links /Module" href="/index.html"/>
+      <item name="links ./Module" href="./index.html"/>
+      <item name="links Module" href="index.html"/>
+    </links>
+
+    <breadcrumbs>
+      <!-- should all be equivalent -->
+      <item name="breadcrumbs /Module" href="/index.html"/>
+      <item name="breadcrumbs ./Module" href="./index.html"/>
+      <item name="breadcrumbs Module" href="index.html"/>
+    </breadcrumbs>
+
+    <menu ref="parent"/>
+    <menu ref="modules"/>
+    <menu ref="reports"/>
+
+  </body>
+</project>
diff --git a/src/it/site-inheritance/parent/pom.xml b/src/it/site-inheritance/parent/pom.xml
new file mode 100644
index 0000000..773d0d1
--- /dev/null
+++ b/src/it/site-inheritance/parent/pom.xml
@@ -0,0 +1,50 @@
+<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/xsd/maven-4.0.0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <groupId>test-site-inheritance</groupId>
+  <artifactId>parent</artifactId>
+  <version>1.0-SNAPSHOT</version>
+  <packaging>pom</packaging>
+  <name>Parent</name>
+  <url>http://webhost.company.com/</url>
+
+  <distributionManagement>
+    <site>
+      <id>website</id>
+      <url>file:///@project.build.directory@/it/site-inheritance/webhost.company.com/deploy/</url>
+    </site>
+  </distributionManagement>
+
+  <build>
+    <pluginManagement>
+      <plugins>
+        <plugin>
+          <artifactId>maven-site-plugin</artifactId>
+          <version>@project.version@</version>
+          <configuration>
+            <stagingDirectory>@project.build.directory@/it/site-inheritance/webhost.company.com/stage/</stagingDirectory>
+            <stagingSiteURL>file:///@project.build.directory@/it/site-inheritance/webhost.company.com/stage-deploy/</stagingSiteURL>
+          </configuration>
+        </plugin>
+      </plugins>
+    </pluginManagement>
+  </build>
+
+  <reporting>
+    <plugins>
+      <plugin>
+        <artifactId>maven-project-info-reports-plugin</artifactId>
+        <version>2.3.1</version>
+        <reportSets>
+          <reportSet>
+            <reports>
+              <report>index</report>
+            </reports>
+          </reportSet>
+        </reportSets>
+      </plugin>
+    </plugins>
+  </reporting>
+
+</project>
diff --git a/src/it/site-inheritance/parent/src/site/apt/index.apt b/src/it/site-inheritance/parent/src/site/apt/index.apt
new file mode 100644
index 0000000..6ee3a13
--- /dev/null
+++ b/src/it/site-inheritance/parent/src/site/apt/index.apt
@@ -0,0 +1,11 @@
+ -----
+ Title Here
+ -----
+ Author Here
+ -----
+ Date Here
+ -----
+
+Maven Site for parent
+
+ Congratulations! If you see this, you're awake!
\ No newline at end of file
diff --git a/src/it/site-inheritance/parent/src/site/site.xml b/src/it/site-inheritance/parent/src/site/site.xml
new file mode 100644
index 0000000..bf5599b
--- /dev/null
+++ b/src/it/site-inheritance/parent/src/site/site.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+
+<project name="Maven" xmlns="http://maven.apache.org/DECORATION/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:schemaLocation="http://maven.apache.org/DECORATION/1.0.0 http://maven.apache.org/xsd/decoration-1.0.0.xsd">
+  <body>
+
+    <links>
+      <!-- should all be equivalent -->
+      <item name="links /Parent" href="/index.html"/>
+      <item name="links ./Parent" href="./index.html"/>
+      <item name="links Parent" href="index.html"/>
+    </links>
+
+    <breadcrumbs>
+      <!-- should all be equivalent -->
+      <item name="breadcrumbs /Parent" href="/index.html"/>
+      <item name="breadcrumbs ./Parent" href="./index.html"/>
+      <item name="breadcrumbs Parent" href="index.html"/>
+    </breadcrumbs>
+
+    <menu ref="modules"/>
+    <menu ref="reports"/>
+
+  </body>
+</project>
diff --git a/src/it/site-inheritance/pom.xml b/src/it/site-inheritance/pom.xml
new file mode 100644
index 0000000..c0b81fc
--- /dev/null
+++ b/src/it/site-inheritance/pom.xml
@@ -0,0 +1,54 @@
+<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/xsd/maven-4.0.0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <groupId>test-site-inheritance</groupId>
+  <artifactId>top</artifactId>
+  <version>1.0-SNAPSHOT</version>
+  <packaging>pom</packaging>
+  <name>Top</name>
+  <url>http://webhost.company.com/junk/</url>
+
+  <distributionManagement>
+    <site>
+      <id>website</id>
+      <url>file:///@project.build.directory@/it/site-inheritance/webhost.company.com/deploy/junk/</url>
+    </site>
+  </distributionManagement>
+
+  <build>
+    <pluginManagement>
+      <plugins>
+        <plugin>
+          <artifactId>maven-site-plugin</artifactId>
+          <version>@project.version@</version>
+          <configuration>
+            <stagingDirectory>@project.build.directory@/it/site-inheritance/webhost.company.com/stage/junk/</stagingDirectory>
+            <stagingSiteURL>file:///@project.build.directory@/it/site-inheritance/webhost.company.com/stage-deploy/junk/</stagingSiteURL>
+          </configuration>
+        </plugin>
+      </plugins>
+    </pluginManagement>
+  </build>
+
+  <reporting>
+    <plugins>
+      <plugin>
+        <artifactId>maven-project-info-reports-plugin</artifactId>
+        <version>2.3.1</version>
+        <reportSets>
+          <reportSet>
+            <reports>
+              <report>index</report>
+            </reports>
+          </reportSet>
+        </reportSets>
+      </plugin>
+    </plugins>
+  </reporting>
+
+  <modules>
+    <module>aggregator</module>
+  </modules>
+
+</project>
diff --git a/src/it/site-inheritance/sub_module/pom.xml b/src/it/site-inheritance/sub_module/pom.xml
new file mode 100644
index 0000000..a0f9f2a
--- /dev/null
+++ b/src/it/site-inheritance/sub_module/pom.xml
@@ -0,0 +1,15 @@
+<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/xsd/maven-4.0.0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <parent>
+    <groupId>test-site-inheritance</groupId>
+    <artifactId>module</artifactId>
+    <version>1.0-SNAPSHOT</version>
+    <relativePath>../module</relativePath>
+  </parent>
+
+  <artifactId>sub_module</artifactId>
+  <name>Sub-Module</name>
+
+</project>
diff --git a/src/it/site-inheritance/sub_module/src/site/apt/index.apt b/src/it/site-inheritance/sub_module/src/site/apt/index.apt
new file mode 100644
index 0000000..f5934ea
--- /dev/null
+++ b/src/it/site-inheritance/sub_module/src/site/apt/index.apt
@@ -0,0 +1,11 @@
+ -----
+ Title Here
+ -----
+ Author Here
+ -----
+ Date Here
+ -----
+
+Maven Site for child
+
+ Congratulations! If you see this, you're awake.
\ No newline at end of file
diff --git a/src/it/site-inheritance/sub_module/src/site/site.xml b/src/it/site-inheritance/sub_module/src/site/site.xml
new file mode 100644
index 0000000..ebfa778
--- /dev/null
+++ b/src/it/site-inheritance/sub_module/src/site/site.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+
+<project name="Maven" xmlns="http://maven.apache.org/DECORATION/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:schemaLocation="http://maven.apache.org/DECORATION/1.0.0 http://maven.apache.org/xsd/decoration-1.0.0.xsd">
+  <body>
+
+    <links>
+      <!-- should all be equivalent -->
+      <item name="links /SubModule" href="/index.html"/>
+      <item name="links ./SubModule" href="./index.html"/>
+      <item name="links SubModule" href="index.html"/>
+    </links>
+
+    <breadcrumbs>
+      <!-- should all be equivalent -->
+      <item name="breadcrumbs /SubModule" href="/index.html"/>
+      <item name="breadcrumbs ./SubModule" href="./index.html"/>
+      <item name="breadcrumbs SubModule" href="index.html"/>
+    </breadcrumbs>
+
+    <menu ref="parent"/>
+    <menu ref="reports"/>
+
+  </body>
+</project>
diff --git a/src/it/site-inheritance/verify.bsh b/src/it/site-inheritance/verify.bsh
new file mode 100644
index 0000000..34ddd99
--- /dev/null
+++ b/src/it/site-inheritance/verify.bsh
@@ -0,0 +1,569 @@
+
+/*
+ * 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.
+ */
+
+import java.io.*;
+import org.codehaus.plexus.util.*;
+
+boolean result = true;
+
+try
+{
+    final File siteDirectory = new File( basedir, "webhost.company.com" );
+    if ( !siteDirectory.exists() || !siteDirectory.isDirectory() )
+    {
+        System.err.println( "site is missing or not a directory." );
+        result = false;
+    }
+
+
+    // DEPLOY
+
+
+    final File deployDirectory = new File( siteDirectory, "deploy" );
+    if ( !deployDirectory.exists() || !deployDirectory.isDirectory() )
+    {
+        System.err.println( "deployDirectory is missing or not a directory." );
+        result = false;
+    }
+
+    // junk directory (aggregator)
+    File junkDirectory = new File( deployDirectory, "junk" );
+    if ( !junkDirectory.exists() || !junkDirectory.isDirectory() )
+    {
+        System.err.println( "deployed junkDirectory is missing or not a directory." );
+        result = false;
+    }
+
+    File index = new File( junkDirectory, "index.html" );
+    if ( !index.exists() || index.isDirectory() )
+    {
+        System.err.println( "no index file in deployed junk or is a directory." );
+        result = false;
+    }
+
+    String content = FileUtils.fileRead( index, "UTF-8" );
+    int indexOf = content.indexOf( "<a href=\"../index.html\" title=\"Aggregator\">Aggregator</a>" );
+    if ( indexOf < 0 )
+    {
+        System.err.println( "deployed junk index.html is missing module link!" );
+        result = false;
+    }
+
+    // deploy directory (main site)
+    index = new File( deployDirectory, "index.html" );
+    if ( !index.exists() || index.isDirectory() )
+    {
+        System.err.println( "no index file in deploy or is a directory." );
+        result = false;
+    }
+
+    content = FileUtils.fileRead( index, "UTF-8" );
+    int index1 = content.indexOf( "<a href=\"www/website/deep/down/below/index.html\" title=\"Child and Module\">Child and Module</a>" );
+    int index2 = content.indexOf( "<a href=\"inheriting_child/index.html\" title=\"Inheriting Child\">Inheriting Child</a>" );
+    int index3 = content.indexOf( "<a href=\"www/website/module/index.html\" title=\"Module\">Module</a>" );
+    int index4 = content.indexOf( "<a href=\"./\" title=\"Aggregator\">Aggregator</a>" );
+    if ( index1 < 0 || index2 < 0 || index3 < 0 || index4 < 0 )
+    {
+        System.err.println( "deploy index.html is missing module link!" );
+        result = false;
+    }
+
+    // parent directory
+    File parentDirectory = new File( deployDirectory, "www/website" );
+    if ( !parentDirectory.exists() || !parentDirectory.isDirectory() )
+    {
+        System.err.println( "deployed parentDirectory is missing or not a directory." );
+        result = false;
+    }
+
+    index = new File( parentDirectory, "index.html" );
+    if ( index.exists() || index.isDirectory() )
+    {
+        System.err.println( "incorrect index file in deployed parent!" );
+        result = false;
+    }
+
+    // child_and_module
+    File deepDownBelow = new File( parentDirectory, "deep/down/below" );
+    if ( !deepDownBelow.exists() || !deepDownBelow.isDirectory() )
+    {
+        System.err.println( "deployed deepDownBelow is missing or not a directory." );
+        result = false;
+    }
+
+    index = new File( deepDownBelow, "index.html" );
+    if ( !index.exists() || index.isDirectory() )
+    {
+        System.err.println( "incorrect index file in deployed deepDownBelow!" );
+        result = false;
+    }
+
+    content = FileUtils.fileRead( index, "UTF-8" );
+    index1 = content.indexOf( "<a href=\"../../../../../index.html\" title=\"breadcrumbs Parent\">breadcrumbs Parent</a>" );
+    index2 = content.indexOf( "<a href=\"index.html\" title=\"breadcrumbs /Child\">breadcrumbs /Child</a>" );
+    index3 = content.indexOf( "<a href=\"../../../../../index.html\" title=\"links ./Parent\">links ./Parent</a>" );
+    index4 = content.indexOf( "<a href=\"../../../../../index.html\" title=\"Parent\">Parent</a>" );
+    if ( index1 < 0 || index2 < 0 || index3 < 0 || index4 < 0 )
+    {
+        System.err.println( "deployed deepDownBelow index.html is missing links!" );
+        result = false;
+    }
+
+    // inheriting_child
+    File inheritingChild = new File( deployDirectory, "inheriting_child" );
+    if ( !inheritingChild.exists() || !inheritingChild.isDirectory() )
+    {
+        System.err.println( "deployed inheritingChild is missing or not a directory." );
+        result = false;
+    }
+
+    index = new File( inheritingChild, "index.html" );
+    if ( !index.exists() || index.isDirectory() )
+    {
+        System.err.println( "incorrect index file in deployed inheritingChild!" );
+        result = false;
+    }
+
+    content = FileUtils.fileRead( index, "UTF-8" );
+    index1 = content.indexOf( "<a href=\"../index.html\" title=\"breadcrumbs /Parent\">breadcrumbs /Parent</a>" );
+    index2 = content.indexOf( "<a href=\"index.html\" title=\"breadcrumbs ./Child\">breadcrumbs ./Child</a>" );
+    index3 = content.indexOf( "<a href=\"../index.html\" title=\"links Parent\">links Parent</a>" );
+    index4 = content.indexOf( "<a href=\"../index.html\" title=\"Parent\">Parent</a>" );
+    if ( index1 < 0 || index2 < 0 || index3 < 0 || index4 < 0 )
+    {
+        System.err.println( "deployed inheritingChild index.html is missing links!" );
+        result = false;
+    }
+
+    // module
+    File moduleDirectory = new File( parentDirectory, "module" );
+    if ( !moduleDirectory.exists() || !moduleDirectory.isDirectory() )
+    {
+        System.err.println( "deployed moduleDirectory is missing or not a directory." );
+        result = false;
+    }
+
+    index = new File( moduleDirectory, "index.html" );
+    if ( !index.exists() || index.isDirectory() )
+    {
+        System.err.println( "incorrect index file in deployed moduleDirectory!" );
+        result = false;
+    }
+
+    content = FileUtils.fileRead( index, "UTF-8" );
+    index1 = content.indexOf( "<a href=\"index.html\" title=\"breadcrumbs Module\">breadcrumbs Module</a>" );
+    index2 = content.indexOf( "<a href=\"index.html\" title=\"links ./Module\">links ./Module</a>" );
+    index3 = content.indexOf( "<a href=\"../sub_module/index.html\" title=\"Sub-Module\">Sub-Module</a>" );
+    if ( index1 < 0 || index2 < 0 || index3 < 0 )
+    {
+        System.err.println( "deployed moduleDirectory index.html has wrong links!" );
+        result = false;
+    }
+
+
+    // sub_module
+    File subModuleDirectory = new File( parentDirectory, "sub_module" );
+    if ( !subModuleDirectory.exists() || !subModuleDirectory.isDirectory() )
+    {
+        System.err.println( "deployed subModuleDirectory is missing or not a directory." );
+        result = false;
+    }
+
+    index = new File( subModuleDirectory, "index.html" );
+    if ( !index.exists() || index.isDirectory() )
+    {
+        System.err.println( "incorrect index file in deployed subModuleDirectory!" );
+        result = false;
+    }
+
+    content = FileUtils.fileRead( index, "UTF-8" );
+    index1 = content.indexOf( "<a href=\"../module/index.html\" title=\"breadcrumbs /Module\">breadcrumbs /Module</a>" );
+    index2 = content.indexOf( "<a href=\"index.html\" title=\"breadcrumbs ./SubModule\">breadcrumbs ./SubModule</a>" );
+    index3 = content.indexOf( "<a href=\"../module/index.html\" title=\"links Module\">links Module</a>" );
+    index4 = content.indexOf( "<a href=\"../module/index.html\" title=\"Module\">Module</a>" );
+    if ( index1 < 0 || index2 < 0 || index3 < 0 )
+    {
+        System.err.println( "deployed subModuleDirectory index.html has wrong links!" );
+        result = false;
+    }
+
+
+    // STAGE
+
+
+    final File stageDirectory = new File( siteDirectory, "stage" );
+    if ( !stageDirectory.exists() || !stageDirectory.isDirectory() )
+    {
+        System.err.println( "stage directory is missing or not a directory." );
+        result = false;
+    }
+
+    // the created directory structure in
+    //      target/it/site-inheritance/webhost.company.com/stage/
+    // should match the deploy structure in
+    //      target/it/site-inheritance/webhost.company.com/deploy/
+
+
+    // junk directory (aggregator)
+    junkDirectory = new File( stageDirectory, "junk" );
+    if ( !junkDirectory.exists() || !junkDirectory.isDirectory() )
+    {
+        System.err.println( "staged junkDirectory is missing or not a directory." );
+        result = false;
+    }
+
+    index = new File( junkDirectory, "index.html" );
+    if ( !index.exists() || index.isDirectory() )
+    {
+        System.err.println( "no index file in staged junk or is a directory." );
+        result = false;
+    }
+
+    content = FileUtils.fileRead( index, "UTF-8" );
+    int indexOf = content.indexOf( "<a href=\"../index.html\" title=\"Aggregator\">Aggregator</a>" );
+    if ( indexOf < 0 )
+    {
+        System.err.println( "staged junk index.html is missing module link!" );
+        result = false;
+    }
+
+    // deploy directory (main site)
+    index = new File( stageDirectory, "index.html" );
+    if ( !index.exists() || index.isDirectory() )
+    {
+        System.err.println( "no index file in stage or is a directory." );
+        result = false;
+    }
+
+    content = FileUtils.fileRead( index, "UTF-8" );
+    int index1 = content.indexOf( "<a href=\"www/website/deep/down/below/index.html\" title=\"Child and Module\">Child and Module</a>" );
+    int index2 = content.indexOf( "<a href=\"inheriting_child/index.html\" title=\"Inheriting Child\">Inheriting Child</a>" );
+    int index3 = content.indexOf( "<a href=\"www/website/module/index.html\" title=\"Module\">Module</a>" );
+    int index4 = content.indexOf( "<a href=\"./\" title=\"Aggregator\">Aggregator</a>" );
+    if ( index1 < 0 || index2 < 0 || index3 < 0 || index4 < 0 )
+    {
+        System.err.println( "staged index.html is missing module link!" );
+        result = false;
+    }
+
+    // parent directory
+    parentDirectory = new File( stageDirectory, "www/website" );
+    if ( !parentDirectory.exists() || !parentDirectory.isDirectory() )
+    {
+        System.err.println( "staged parentDirectory is missing or not a directory." );
+        result = false;
+    }
+
+    index = new File( parentDirectory, "index.html" );
+    if ( index.exists() || index.isDirectory() )
+    {
+        System.err.println( "incorrect staged index file in parent!" );
+        result = false;
+    }
+
+    // child_and_module
+    deepDownBelow = new File( parentDirectory, "deep/down/below" );
+    if ( !deepDownBelow.exists() || !deepDownBelow.isDirectory() )
+    {
+        System.err.println( "staged deepDownBelow is missing or not a directory." );
+        result = false;
+    }
+
+    index = new File( deepDownBelow, "index.html" );
+    if ( !index.exists() || index.isDirectory() )
+    {
+        System.err.println( "incorrect index file in staged deepDownBelow!" );
+        result = false;
+    }
+
+    content = FileUtils.fileRead( index, "UTF-8" );
+    index1 = content.indexOf( "<a href=\"../../../../../index.html\" title=\"breadcrumbs Parent\">breadcrumbs Parent</a>" );
+    index2 = content.indexOf( "<a href=\"index.html\" title=\"breadcrumbs /Child\">breadcrumbs /Child</a>" );
+    index3 = content.indexOf( "<a href=\"../../../../../index.html\" title=\"links ./Parent\">links ./Parent</a>" );
+    index4 = content.indexOf( "<a href=\"../../../../../index.html\" title=\"Parent\">Parent</a>" );
+    if ( index1 < 0 || index2 < 0 || index3 < 0 || index4 < 0 )
+    {
+        System.err.println( "staged deepDownBelow index.html is missing links!" );
+        result = false;
+    }
+
+    // inheriting_child
+    inheritingChild = new File( stageDirectory, "inheriting_child" );
+    if ( !inheritingChild.exists() || !inheritingChild.isDirectory() )
+    {
+        System.err.println( "staged inheritingChild is missing or not a directory." );
+        result = false;
+    }
+
+    index = new File( inheritingChild, "index.html" );
+    if ( !index.exists() || index.isDirectory() )
+    {
+        System.err.println( "incorrect index file in staged inheritingChild!" );
+        result = false;
+    }
+
+    content = FileUtils.fileRead( index, "UTF-8" );
+    index1 = content.indexOf( "<a href=\"../index.html\" title=\"breadcrumbs /Parent\">breadcrumbs /Parent</a>" );
+    index2 = content.indexOf( "<a href=\"index.html\" title=\"breadcrumbs ./Child\">breadcrumbs ./Child</a>" );
+    index3 = content.indexOf( "<a href=\"../index.html\" title=\"links Parent\">links Parent</a>" );
+    index4 = content.indexOf( "<a href=\"../index.html\" title=\"Parent\">Parent</a>" );
+    if ( index1 < 0 || index2 < 0 || index3 < 0 || index4 < 0 )
+    {
+        System.err.println( "staged inheritingChild index.html is missing links!" );
+        result = false;
+    }
+
+    // module
+    moduleDirectory = new File( parentDirectory, "module" );
+    if ( !moduleDirectory.exists() || !moduleDirectory.isDirectory() )
+    {
+        System.err.println( "staged moduleDirectory is missing or not a directory." );
+        result = false;
+    }
+
+    index = new File( moduleDirectory, "index.html" );
+    if ( !index.exists() || index.isDirectory() )
+    {
+        System.err.println( "incorrect index file in staged moduleDirectory!" );
+        result = false;
+    }
+
+    content = FileUtils.fileRead( index, "UTF-8" );
+    index1 = content.indexOf( "<a href=\"index.html\" title=\"breadcrumbs Module\">breadcrumbs Module</a>" );
+    index2 = content.indexOf( "<a href=\"index.html\" title=\"links ./Module\">links ./Module</a>" );
+    index3 = content.indexOf( "<a href=\"../sub_module/index.html\" title=\"Sub-Module\">Sub-Module</a>" );
+    if ( index1 < 0 || index2 < 0 || index3 < 0 )
+    {
+        System.err.println( "staged moduleDirectory index.html has wrong links!" );
+        result = false;
+    }
+
+
+    // sub_module
+    subModuleDirectory = new File( parentDirectory, "sub_module" );
+    if ( !subModuleDirectory.exists() || !subModuleDirectory.isDirectory() )
+    {
+        System.err.println( "staged subModuleDirectory is missing or not a directory." );
+        result = false;
+    }
+
+    index = new File( subModuleDirectory, "index.html" );
+    if ( !index.exists() || index.isDirectory() )
+    {
+        System.err.println( "incorrect index file in staged subModuleDirectory!" );
+        result = false;
+    }
+
+    content = FileUtils.fileRead( index, "UTF-8" );
+    index1 = content.indexOf( "<a href=\"../module/index.html\" title=\"breadcrumbs /Module\">breadcrumbs /Module</a>" );
+    index2 = content.indexOf( "<a href=\"index.html\" title=\"breadcrumbs ./SubModule\">breadcrumbs ./SubModule</a>" );
+    index3 = content.indexOf( "<a href=\"../module/index.html\" title=\"links Module\">links Module</a>" );
+    index4 = content.indexOf( "<a href=\"../module/index.html\" title=\"Module\">Module</a>" );
+    if ( index1 < 0 || index2 < 0 || index3 < 0 )
+    {
+        System.err.println( "staged subModuleDirectory index.html has wrong links!" );
+        result = false;
+    }
+
+
+    // STAGE DEPLOY
+
+
+    final File stageDeployDirectory = new File( siteDirectory, "stage-deploy" );
+    if ( !stageDeployDirectory.exists() || !stageDeployDirectory.isDirectory() )
+    {
+        System.err.println( "stage-deploy directory is missing or not a directory." );
+        result = false;
+    }
+
+    // the created directory structure in
+    //      target/it/site-inheritance/webhost.company.com/stage-deploy/
+    // should match the deploy structure in
+    //      target/it/site-inheritance/webhost.company.com/deploy/
+
+    // junk directory (aggregator)
+    junkDirectory = new File( stageDeployDirectory, "junk" );
+    if ( !junkDirectory.exists() || !junkDirectory.isDirectory() )
+    {
+        System.err.println( "stage-deployed junkDirectory is missing or not a directory." );
+        result = false;
+    }
+
+    index = new File( junkDirectory, "index.html" );
+    if ( !index.exists() || index.isDirectory() )
+    {
+        System.err.println( "no index file in stage-deployed junk or is a directory." );
+        result = false;
+    }
+
+    content = FileUtils.fileRead( index, "UTF-8" );
+    int indexOf = content.indexOf( "<a href=\"../index.html\" title=\"Aggregator\">Aggregator</a>" );
+    if ( indexOf < 0 )
+    {
+        System.err.println( "stage-deployed junk index.html is missing module link!" );
+        result = false;
+    }
+
+    // deploy directory (main site)
+    index = new File( stageDeployDirectory, "index.html" );
+    if ( !index.exists() || index.isDirectory() )
+    {
+        System.err.println( "no index file in stage-deploy or is a directory." );
+        result = false;
+    }
+
+    content = FileUtils.fileRead( index, "UTF-8" );
+    int index1 = content.indexOf( "<a href=\"www/website/deep/down/below/index.html\" title=\"Child and Module\">Child and Module</a>" );
+    int index2 = content.indexOf( "<a href=\"inheriting_child/index.html\" title=\"Inheriting Child\">Inheriting Child</a>" );
+    int index3 = content.indexOf( "<a href=\"www/website/module/index.html\" title=\"Module\">Module</a>" );
+    int index4 = content.indexOf( "<a href=\"./\" title=\"Aggregator\">Aggregator</a>" );
+    if ( index1 < 0 || index2 < 0 || index3 < 0 || index4 < 0 )
+    {
+        System.err.println( "stage-deployed index.html is missing module link!" );
+        result = false;
+    }
+
+    // parent directory
+    parentDirectory = new File( stageDeployDirectory, "www/website" );
+    if ( !parentDirectory.exists() || !parentDirectory.isDirectory() )
+    {
+        System.err.println( "stage-deployed parentDirectory is missing or not a directory." );
+        result = false;
+    }
+
+    index = new File( parentDirectory, "index.html" );
+    if ( index.exists() || index.isDirectory() )
+    {
+        System.err.println( "incorrect index file in stage-deployed parent!" );
+        result = false;
+    }
+
+    // child_and_module
+    deepDownBelow = new File( parentDirectory, "deep/down/below" );
+    if ( !deepDownBelow.exists() || !deepDownBelow.isDirectory() )
+    {
+        System.err.println( "stage-deployed deepDownBelow is missing or not a directory." );
+        result = false;
+    }
+
+    index = new File( deepDownBelow, "index.html" );
+    if ( !index.exists() || index.isDirectory() )
+    {
+        System.err.println( "incorrect index file in stage-deployed deepDownBelow!" );
+        result = false;
+    }
+
+    content = FileUtils.fileRead( index, "UTF-8" );
+    index1 = content.indexOf( "<a href=\"../../../../../index.html\" title=\"breadcrumbs Parent\">breadcrumbs Parent</a>" );
+    index2 = content.indexOf( "<a href=\"index.html\" title=\"breadcrumbs /Child\">breadcrumbs /Child</a>" );
+    index3 = content.indexOf( "<a href=\"../../../../../index.html\" title=\"links ./Parent\">links ./Parent</a>" );
+    index4 = content.indexOf( "<a href=\"../../../../../index.html\" title=\"Parent\">Parent</a>" );
+    if ( index1 < 0 || index2 < 0 || index3 < 0 || index4 < 0 )
+    {
+        System.err.println( "stage-deployed deepDownBelow index.html is missing links!" );
+        result = false;
+    }
+
+    // inheriting_child
+    inheritingChild = new File( stageDeployDirectory, "inheriting_child" );
+    if ( !inheritingChild.exists() || !inheritingChild.isDirectory() )
+    {
+        System.err.println( "stage-deployed inheritingChild is missing or not a directory." );
+        result = false;
+    }
+
+    index = new File( inheritingChild, "index.html" );
+    if ( !index.exists() || index.isDirectory() )
+    {
+        System.err.println( "incorrect index file in stage-deployed inheritingChild!" );
+        result = false;
+    }
+
+    content = FileUtils.fileRead( index, "UTF-8" );
+    index1 = content.indexOf( "<a href=\"../index.html\" title=\"breadcrumbs /Parent\">breadcrumbs /Parent</a>" );
+    index2 = content.indexOf( "<a href=\"index.html\" title=\"breadcrumbs ./Child\">breadcrumbs ./Child</a>" );
+    index3 = content.indexOf( "<a href=\"../index.html\" title=\"links Parent\">links Parent</a>" );
+    index4 = content.indexOf( "<a href=\"../index.html\" title=\"Parent\">Parent</a>" );
+    if ( index1 < 0 || index2 < 0 || index3 < 0 || index4 < 0 )
+    {
+        System.err.println( "stage-deployed inheritingChild index.html is missing links!" );
+        result = false;
+    }
+
+    // module
+    moduleDirectory = new File( parentDirectory, "module" );
+    if ( !moduleDirectory.exists() || !moduleDirectory.isDirectory() )
+    {
+        System.err.println( "stage-deployed moduleDirectory is missing or not a directory." );
+        result = false;
+    }
+
+    index = new File( moduleDirectory, "index.html" );
+    if ( !index.exists() || index.isDirectory() )
+    {
+        System.err.println( "incorrect index file in stage-deployed moduleDirectory!" );
+        result = false;
+    }
+
+    content = FileUtils.fileRead( index, "UTF-8" );
+    index1 = content.indexOf( "<a href=\"index.html\" title=\"breadcrumbs Module\">breadcrumbs Module</a>" );
+    index2 = content.indexOf( "<a href=\"index.html\" title=\"links ./Module\">links ./Module</a>" );
+    index3 = content.indexOf( "<a href=\"../sub_module/index.html\" title=\"Sub-Module\">Sub-Module</a>" );
+    if ( index1 < 0 || index2 < 0 || index3 < 0 )
+    {
+        System.err.println( "stage-deployed moduleDirectory index.html has wrong links!" );
+        result = false;
+    }
+
+
+    // sub_module
+    subModuleDirectory = new File( parentDirectory, "sub_module" );
+    if ( !subModuleDirectory.exists() || !subModuleDirectory.isDirectory() )
+    {
+        System.err.println( "stage-deployed subModuleDirectory is missing or not a directory." );
+        result = false;
+    }
+
+    index = new File( subModuleDirectory, "index.html" );
+    if ( !index.exists() || index.isDirectory() )
+    {
+        System.err.println( "incorrect index file in stage-deployed subModuleDirectory!" );
+        result = false;
+    }
+
+    content = FileUtils.fileRead( index, "UTF-8" );
+    index1 = content.indexOf( "<a href=\"../module/index.html\" title=\"breadcrumbs /Module\">breadcrumbs /Module</a>" );
+    index2 = content.indexOf( "<a href=\"index.html\" title=\"breadcrumbs ./SubModule\">breadcrumbs ./SubModule</a>" );
+    index3 = content.indexOf( "<a href=\"../module/index.html\" title=\"links Module\">links Module</a>" );
+    index4 = content.indexOf( "<a href=\"../module/index.html\" title=\"Module\">Module</a>" );
+    if ( index1 < 0 || index2 < 0 || index3 < 0 )
+    {
+        System.err.println( "stage-deployed subModuleDirectory index.html has wrong links!" );
+        result = false;
+    }
+
+}
+catch ( IOException e )
+{
+    e.printStackTrace();
+    result = false;
+}
+
+return result;
diff --git a/src/it/site-jar/goals.txt b/src/it/site-jar/goals.txt
new file mode 100644
index 0000000..bc94129
--- /dev/null
+++ b/src/it/site-jar/goals.txt
@@ -0,0 +1 @@
+clean site:site site:jar
\ No newline at end of file
diff --git a/src/it/site-jar/pom.xml b/src/it/site-jar/pom.xml
new file mode 100644
index 0000000..aff8fca
--- /dev/null
+++ b/src/it/site-jar/pom.xml
@@ -0,0 +1,70 @@
+<!--
+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/xsd/maven-4.0.0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <groupId>org.apache.maven.plugins.site.its</groupId>
+  <artifactId>site-jar</artifactId>
+  <version>1.0-SNAPSHOT</version>
+  <packaging>pom</packaging>
+
+  <name>site-jar IT</name>
+
+  <properties>
+    <currentVersion>2.0.7</currentVersion>
+    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+  </properties>
+
+  <distributionManagement>
+    <site>
+      <id>site-deploy</id>
+      <name>Example company web server</name>
+      <url>file://@project.build.directory@/it/site-deploy/target/site-deployed/</url>
+    </site>
+  </distributionManagement>
+
+  <build>
+    <plugins>
+      <plugin>
+        <artifactId>maven-site-plugin</artifactId>
+        <version>@project.version@</version>
+      </plugin>
+    </plugins>
+  </build>
+
+  <reporting>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-project-info-reports-plugin</artifactId>
+        <version>2.1.2</version>
+        <reportSets>
+          <reportSet>
+            <reports>
+              <report>index</report>
+            </reports>
+          </reportSet>
+        </reportSets>
+      </plugin>
+    </plugins>
+  </reporting>
+</project>
diff --git a/src/it/site-jar/src/main/java/foo/App.java b/src/it/site-jar/src/main/java/foo/App.java
new file mode 100644
... 15987 lines suppressed ...

-- 
To stop receiving notification emails like this one, please contact
"commits@maven.apache.org" <co...@maven.apache.org>.