diff --git a/bundleplugin/doc/site/wrap-mojo.html b/bundleplugin/doc/site/wrap-mojo.html
new file mode 100644
index 0000000..f75df61
--- /dev/null
+++ b/bundleplugin/doc/site/wrap-mojo.html
@@ -0,0 +1,409 @@
+<!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 - 
+    bundle:wrap</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="collapsed">
+
+                          <a href="project-reports.html" title="Project Reports">Project Reports</a>
+
+                  </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>bundle:wrap<a name="bundle:wrap"></a></h2>
+      <p><b>Full name</b>:</p>
+      <p>org.apache.felix:maven-bundle-plugin:2.3.5:wrap</p>
+      <p><b>This plugin goal has been deprecated</b>:</p>
+      <div>The wrap goal is no longer supported and may be removed in a future
+release</div>
+      <p><b>Description</b>:</p>
+      <div>(no description)</div>
+      <p><b>Attributes</b>:</p>
+      <ul>
+        <li>Requires a Maven project to be executed.</li>
+        <li>Requires dependency resolution of artifacts in scope: <tt>test</tt>.</li>
+        <li>The goal is thread-safe and supports parallel builds.</li>
+        <li>Binds by default to the lifecycle phase: <tt>package</tt>.</li>
+      </ul>
+      <div class="section"><h3>Required Parameters<a name="Required_Parameters"></a></h3>
+        <table class="bodyTable" border="0">
+          <tr class="a">
+            <th>Name</th>
+            <th>Type</th>
+            <th>Since</th>
+            <th>Description</th>
+          </tr>
+          <tr class="b">
+            <td><b><a href="#buildDirectory">buildDirectory</a></b></td>
+            <td><tt>String</tt></td>
+            <td><tt>-</tt></td>
+            <td>The directory for the generated JAR.<br /></td>
+          </tr>
+          <tr class="a">
+            <td><b><a href="#outputDirectory">outputDirectory</a></b></td>
+            <td><tt>File</tt></td>
+            <td><tt>-</tt></td>
+            <td>The directory for the generated bundles.<br /></td>
+          </tr>
+        </table>
+      </div>
+      <div class="section"><h3>Optional Parameters<a name="Optional_Parameters"></a></h3>
+        <table class="bodyTable" border="0">
+          <tr class="a">
+            <th>Name</th>
+            <th>Type</th>
+            <th>Since</th>
+            <th>Description</th>
+          </tr>
+          <tr class="b">
+            <td><b><a href="#archive">archive</a></b></td>
+            <td><tt>MavenArchiveConfiguration</tt></td>
+            <td><tt>-</tt></td>
+            <td>The archive configuration to use.<br /></td>
+          </tr>
+          <tr class="a">
+            <td><b><a href="#classifier">classifier</a></b></td>
+            <td><tt>String</tt></td>
+            <td><tt>-</tt></td>
+            <td>Classifier type of the bundle to be installed. For example,
+&quot;jdk14&quot;. Defaults to none which means this is the project's main
+bundle.<br /></td>
+          </tr>
+          <tr class="b">
+            <td><b><a href="#depth">depth</a></b></td>
+            <td><tt>int</tt></td>
+            <td><tt>-</tt></td>
+            <td>Process up to some depth<br /></td>
+          </tr>
+          <tr class="a">
+            <td><b><a href="#dumpClasspath">dumpClasspath</a></b></td>
+            <td><tt>File</tt></td>
+            <td><tt>-</tt></td>
+            <td>File where the BND class-path will be dumped<br /></td>
+          </tr>
+          <tr class="b">
+            <td><b><a href="#dumpInstructions">dumpInstructions</a></b></td>
+            <td><tt>File</tt></td>
+            <td><tt>-</tt></td>
+            <td>File where the BND instructions will be dumped<br /></td>
+          </tr>
+          <tr class="a">
+            <td><b><a href="#excludeDependencies">excludeDependencies</a></b></td>
+            <td><tt>String</tt></td>
+            <td><tt>-</tt></td>
+            <td>Comma separated list of artifactIds to exclude from the dependency
+classpath passed to BND (use &quot;true&quot; to exclude everything)<br /></td>
+          </tr>
+          <tr class="b">
+            <td><b><a href="#ignoreMissingArtifacts">ignoreMissingArtifacts</a></b></td>
+            <td><tt>boolean</tt></td>
+            <td><tt>-</tt></td>
+            <td>Ignore missing artifacts that are not required by current project
+but are required by the transitive dependencies.<br /></td>
+          </tr>
+          <tr class="a">
+            <td><b><a href="#instructions">instructions</a></b></td>
+            <td><tt>Map</tt></td>
+            <td><tt>-</tt></td>
+            <td>The BND instructions for the bundle.<br /></td>
+          </tr>
+          <tr class="b">
+            <td><b><a href="#manifestLocation">manifestLocation</a></b></td>
+            <td><tt>File</tt></td>
+            <td><tt>-</tt></td>
+            <td>Directory where the manifest will be written<br /><b>Default value is</b>: <tt>${project.build.outputDirectory}/META-INF</tt>.</td>
+          </tr>
+          <tr class="a">
+            <td><b><a href="#supportedProjectTypes">supportedProjectTypes</a></b></td>
+            <td><tt>List</tt></td>
+            <td><tt>-</tt></td>
+            <td>Project types which this plugin supports.<br /></td>
+          </tr>
+          <tr class="b">
+            <td><b><a href="#unpackBundle">unpackBundle</a></b></td>
+            <td><tt>boolean</tt></td>
+            <td><tt>-</tt></td>
+            <td>When true, unpack the bundle contents to the outputDirectory<br /></td>
+          </tr>
+          <tr class="a">
+            <td><b><a href="#wrapImportPackage">wrapImportPackage</a></b></td>
+            <td><tt>String</tt></td>
+            <td><tt>-</tt></td>
+            <td>Import-Package to be used when wrapping dependencies.<br /><b>Default value is</b>: <tt>*</tt>.</td>
+          </tr>
+        </table>
+      </div>
+      <div class="section"><h3>Parameter Details<a name="Parameter_Details"></a></h3>
+        <p><b><a name="archive">archive</a>:</b></p>
+        <div>The archive configuration to use.</div>
+        <ul>
+          <li><b>Type</b>: <tt>org.apache.maven.archiver.MavenArchiveConfiguration</tt></li>
+          <li><b>Required</b>: <tt>No</tt></li>
+        </ul><hr /><p><b><a name="buildDirectory">buildDirectory</a>:</b></p>
+        <div>The directory for the generated JAR.</div>
+        <ul>
+          <li><b>Type</b>: <tt>java.lang.String</tt></li>
+          <li><b>Required</b>: <tt>Yes</tt></li>
+          <li><b>Expression</b>: <tt>${project.build.directory}</tt></li>
+        </ul><hr /><p><b><a name="classifier">classifier</a>:</b></p>
+        <div>Classifier type of the bundle to be installed. For example,
+&quot;jdk14&quot;. Defaults to none which means this is the project's main
+bundle.</div>
+        <ul>
+          <li><b>Type</b>: <tt>java.lang.String</tt></li>
+          <li><b>Required</b>: <tt>No</tt></li>
+        </ul><hr /><p><b><a name="depth">depth</a>:</b></p>
+        <div>Process up to some depth</div>
+        <ul>
+          <li><b>Type</b>: <tt>int</tt></li>
+          <li><b>Required</b>: <tt>No</tt></li>
+        </ul><hr /><p><b><a name="dumpClasspath">dumpClasspath</a>:</b></p>
+        <div>File where the BND class-path will be dumped</div>
+        <ul>
+          <li><b>Type</b>: <tt>java.io.File</tt></li>
+          <li><b>Required</b>: <tt>No</tt></li>
+          <li><b>Expression</b>: <tt>${dumpClasspath}</tt></li>
+        </ul><hr /><p><b><a name="dumpInstructions">dumpInstructions</a>:</b></p>
+        <div>File where the BND instructions will be dumped</div>
+        <ul>
+          <li><b>Type</b>: <tt>java.io.File</tt></li>
+          <li><b>Required</b>: <tt>No</tt></li>
+          <li><b>Expression</b>: <tt>${dumpInstructions}</tt></li>
+        </ul><hr /><p><b><a name="excludeDependencies">excludeDependencies</a>:</b></p>
+        <div>Comma separated list of artifactIds to exclude from the dependency
+classpath passed to BND (use &quot;true&quot; to exclude everything)</div>
+        <ul>
+          <li><b>Type</b>: <tt>java.lang.String</tt></li>
+          <li><b>Required</b>: <tt>No</tt></li>
+          <li><b>Expression</b>: <tt>${excludeDependencies}</tt></li>
+        </ul><hr /><p><b><a name="ignoreMissingArtifacts">ignoreMissingArtifacts</a>:</b></p>
+        <div>Ignore missing artifacts that are not required by current project
+but are required by the transitive dependencies.</div>
+        <ul>
+          <li><b>Type</b>: <tt>boolean</tt></li>
+          <li><b>Required</b>: <tt>No</tt></li>
+        </ul><hr /><p><b><a name="instructions">instructions</a>:</b></p>
+        <div>The BND instructions for the bundle.</div>
+        <ul>
+          <li><b>Type</b>: <tt>java.util.Map</tt></li>
+          <li><b>Required</b>: <tt>No</tt></li>
+        </ul><hr /><p><b><a name="manifestLocation">manifestLocation</a>:</b></p>
+        <div>Directory where the manifest will be written</div>
+        <ul>
+          <li><b>Type</b>: <tt>java.io.File</tt></li>
+          <li><b>Required</b>: <tt>No</tt></li>
+          <li><b>Expression</b>: <tt>${manifestLocation}</tt></li>
+          <li><b>Default</b>: <tt>${project.build.outputDirectory}/META-INF</tt></li>
+        </ul><hr /><p><b><a name="outputDirectory">outputDirectory</a>:</b></p>
+        <div>The directory for the generated bundles.</div>
+        <ul>
+          <li><b>Type</b>: <tt>java.io.File</tt></li>
+          <li><b>Required</b>: <tt>Yes</tt></li>
+          <li><b>Expression</b>: <tt>${project.build.outputDirectory}</tt></li>
+        </ul><hr /><p><b><a name="supportedProjectTypes">supportedProjectTypes</a>:</b></p>
+        <div>Project types which this plugin supports.</div>
+        <ul>
+          <li><b>Type</b>: <tt>java.util.List</tt></li>
+          <li><b>Required</b>: <tt>No</tt></li>
+        </ul><hr /><p><b><a name="unpackBundle">unpackBundle</a>:</b></p>
+        <div>When true, unpack the bundle contents to the outputDirectory</div>
+        <ul>
+          <li><b>Type</b>: <tt>boolean</tt></li>
+          <li><b>Required</b>: <tt>No</tt></li>
+          <li><b>Expression</b>: <tt>${unpackBundle}</tt></li>
+        </ul><hr /><p><b><a name="wrapImportPackage">wrapImportPackage</a>:</b></p>
+        <div>Import-Package to be used when wrapping dependencies.</div>
+        <ul>
+          <li><b>Type</b>: <tt>java.lang.String</tt></li>
+          <li><b>Required</b>: <tt>No</tt></li>
+          <li><b>Expression</b>: <tt>${wrapImportPackage}</tt></li>
+          <li><b>Default</b>: <tt>*</tt></li>
+        </ul>
+      </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>
+
