diff --git a/bundleplugin/doc/site/project-reports.html b/bundleplugin/doc/site/project-reports.html
new file mode 100644
index 0000000..b8b0bdb
--- /dev/null
+++ b/bundleplugin/doc/site/project-reports.html
@@ -0,0 +1,228 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<!-- Generated by Apache Maven Doxia at Jul 5, 2011 -->
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+
+  <head>
+
+    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+
+    <title>Maven Bundle Plugin - Generated Reports</title>
+
+    <style type="text/css" media="all">
+
+      @import url("./css/maven-base.css");
+
+      @import url("./css/maven-theme.css");
+
+      @import url("./css/site.css");
+
+    </style>
+
+    <link rel="stylesheet" href="./css/print.css" type="text/css" media="print" />
+
+    <meta name="Date-Revision-yyyymmdd" content="20110705" />
+
+    <meta http-equiv="Content-Language" content="en" />
+
+        
+
+  </head>
+
+  <body class="composite">
+
+    <div id="banner">
+
+                    <div id="bannerLeft">
+
+                Maven Bundle Plugin
+
+                </div>
+
+                    <div class="clear">
+
+        <hr/>
+
+      </div>
+
+    </div>
+
+    <div id="breadcrumbs">
+
+            
+
+        
+
+                <div class="xleft">
+
+        <span id="publishDate">Last Published: 2011-07-05</span>
+
+                  &nbsp;| <span id="projectVersion">Version: 2.3.5</span>
+
+                      </div>
+
+            <div class="xright">        
+
+        
+
+      </div>
+
+      <div class="clear">
+
+        <hr/>
+
+      </div>
+
+    </div>
+
+    <div id="leftColumn">
+
+      <div id="navcolumn">
+
+             
+
+        
+
+                                <h5>Overview</h5>
+
+                  <ul>
+
+                  <li class="none">
+
+                          <a href="index.html" title="Introduction">Introduction</a>
+
+            </li>
+
+                  <li class="none">
+
+                          <a href="plugin-info.html" title="Goals">Goals</a>
+
+            </li>
+
+                  <li class="none">
+
+                          <a href="https://cwiki.apache.org/confluence/display/FELIX/Apache+Felix+Maven+Bundle+Plugin+%28BND%29" class="externalLink" title="Wiki">Wiki</a>
+
+            </li>
+
+                  <li class="none">
+
+                          <a href="https://cwiki.apache.org/confluence/display/FELIX/Apache+Felix+Bundle+Plugin+FAQ" class="externalLink" title="FAQ">FAQ</a>
+
+            </li>
+
+                  <li class="none">
+
+                          <a href="jira-report.html" title="Release Notes">Release Notes</a>
+
+            </li>
+
+          </ul>
+
+                       <h5>Project Documentation</h5>
+
+                  <ul>
+
+                                                                                                                                                                                <li class="collapsed">
+
+                          <a href="project-info.html" title="Project Information">Project Information</a>
+
+                  </li>
+
+                                                                                                                                                <li class="expanded">
+
+            <strong>Project Reports</strong>
+
+                  <ul>
+
+                      <li class="none">
+
+                          <a href="jira-report.html" title="JIRA Report">JIRA Report</a>
+
+            </li>
+
+                      <li class="none">
+
+                          <a href="plugin-info.html" title="Plugin Documentation">Plugin Documentation</a>
+
+            </li>
+
+                      <li class="none">
+
+                          <a href="xref/index.html" title="Source Xref">Source Xref</a>
+
+            </li>
+
+                      <li class="none">
+
+                          <a href="surefire-report.html" title="Surefire Report">Surefire Report</a>
+
+            </li>
+
+                      <li class="none">
+
+                          <a href="xref-test/index.html" title="Test Source Xref">Test Source Xref</a>
+
+            </li>
+
+              </ul>
+
+        </li>
+
+          </ul>
+
+                             <a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy">
+
+        <img class="poweredBy" alt="Built by Maven" src="./images/logos/maven-feather.png" />
+
+      </a>
+
+                   
+
+        
+
+            </div>
+
+    </div>
+
+    <div id="bodyColumn">
+
+      <div id="contentBox">
+
+        <div class="section"><h2>Generated Reports<a name="Generated_Reports"></a></h2><p>This document provides an overview of the various reports that are automatically generated by <a class="externalLink" href="http://maven.apache.org">Maven</a> . Each report is briefly described below.</p><div class="section"><h3>Overview<a name="Overview"></a></h3><table border="0" class="bodyTable"><tr class="a"><th>Document</th><th>Description</th></tr><tr class="b"><td><a href="jira-report.html">JIRA Report</a></td><td>Report on Issues from the JIRA Issue Tracking System.</td></tr><tr class="a"><td><a href="plugin-info.html">Plugin Documentation</a></td><td>This report provides goals and parameters documentation of a plugin.</td></tr><tr class="b"><td><a href="xref/index.html">Source Xref</a></td><td>HTML based, cross-reference version of Java source code.</td></tr><tr class="a"><td><a href="surefire-report.html">Surefire Report</a></td><td>Report on the test results of the project.</td></tr><tr class="b"><td><a href="xref-test/index.html">Test Source Xref</a></td><td>HTML based, cross-reference version of Java test source code.</td></tr></table></div></div>
+
+      </div>
+
+    </div>
+
+    <div class="clear">
+
+      <hr/>
+
+    </div>
+
+    <div id="footer">
+
+      <div class="xright">Copyright &#169;                    2006-2011
+
+                        <a href="http://www.apache.org/">The Apache Software Foundation</a>.
+
+            All Rights Reserved.      
+
+        
+
+      </div>
+
+      <div class="clear">
+
+        <hr/>
+
+      </div>
+
+    </div>
+
+  </body>
+
+</html>
+
