Update local maven site docs in preparation for 2.5.0

git-svn-id: https://svn.apache.org/repos/asf/felix/trunk@1604137 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/bundleplugin/doc/site/ant-mojo.html b/bundleplugin/doc/site/ant-mojo.html
index e0cd685..094887d 100644
--- a/bundleplugin/doc/site/ant-mojo.html
+++ b/bundleplugin/doc/site/ant-mojo.html
@@ -1,5 +1,5 @@
 <!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 Jun 8, 2013 -->
+<!-- Generated by Apache Maven Doxia at Jun 20, 2014 -->
 <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" />
@@ -11,7 +11,7 @@
       @import url("./css/site.css");
     </style>
     <link rel="stylesheet" href="./css/print.css" type="text/css" media="print" />
-    <meta name="Date-Revision-yyyymmdd" content="20130608" />
+    <meta name="Date-Revision-yyyymmdd" content="20140620" />
     <meta http-equiv="Content-Language" content="en" />
         
   </head>
@@ -28,8 +28,8 @@
             
         
                 <div class="xleft">
-        <span id="publishDate">Last Published: 2013-06-08</span>
-                  &nbsp;| <span id="projectVersion">Version: 2.4.0-SNAPSHOT</span>
+        <span id="publishDate">Last Published: 2014-06-20</span>
+                  &nbsp;| <span id="projectVersion">Version: 2.5.0</span>
                       </div>
             <div class="xright">        
         
@@ -82,7 +82,7 @@
   
     <div class="section"><h2>bundle:ant<a name="bundle:ant"></a></h2>
       <p><b>Full name</b>:</p>
-      <p>org.apache.felix:maven-bundle-plugin:2.4.0-SNAPSHOT:ant</p>
+      <p>org.apache.felix:maven-bundle-plugin:2.5.0:ant</p>
       <p><b>Description</b>:</p>
       <div>Generate Ant script to create the bundle (you should run ant:ant
 first).</div>
@@ -175,19 +175,25 @@
             <td>Directory where the manifest will be written<br /><b>Default value is</b>: <tt>${project.build.outputDirectory}/META-INF</tt>.<br /><b>User property is</b>: <tt>manifestLocation</tt>.</td>
           </tr>
           <tr class="b">
+            <td><b><a href="#niceManifest">niceManifest</a></b></td>
+            <td><tt>boolean</tt></td>
+            <td><tt>-</tt></td>
+            <td>(no description)<br /></td>
+          </tr>
+          <tr class="a">
             <td><b><a href="#packaging">packaging</a></b></td>
             <td><tt>String</tt></td>
             <td><tt>-</tt></td>
             <td>Packaging type of the bundle to be installed. For example, &quot;jar&quot;.
 Defaults to none which means use the same packaging as the project.<br /></td>
           </tr>
-          <tr class="a">
+          <tr class="b">
             <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">
+          <tr class="a">
             <td><b><a href="#unpackBundle">unpackBundle</a></b></td>
             <td><tt>boolean</tt></td>
             <td><tt>-</tt></td>
@@ -251,6 +257,11 @@
           <li><b>Required</b>: <tt>No</tt></li>
           <li><b>User Property</b>: <tt>manifestLocation</tt></li>
           <li><b>Default</b>: <tt>${project.build.outputDirectory}/META-INF</tt></li>
+        </ul><hr /><p><b><a name="niceManifest">niceManifest</a>:</b></p>
+        <div>(no description)</div>
+        <ul>
+          <li><b>Type</b>: <tt>boolean</tt></li>
+          <li><b>Required</b>: <tt>No</tt></li>
         </ul><hr /><p><b><a name="outputDirectory">outputDirectory</a>:</b></p>
         <div>The directory for the generated bundles.</div>
         <ul>
@@ -285,7 +296,7 @@
       <hr/>
     </div>
     <div id="footer">
-      <div class="xright">Copyright &#169;                    2006-2013
+      <div class="xright">Copyright &#169;                    2006-2014
                         <a href="http://www.apache.org/">The Apache Software Foundation</a>.
             All Rights Reserved.      
         
diff --git a/bundleplugin/doc/site/bundle-mojo.html b/bundleplugin/doc/site/bundle-mojo.html
index ea4b148..e597c9b 100644
--- a/bundleplugin/doc/site/bundle-mojo.html
+++ b/bundleplugin/doc/site/bundle-mojo.html
@@ -1,5 +1,5 @@
 <!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 Jun 8, 2013 -->
+<!-- Generated by Apache Maven Doxia at Jun 20, 2014 -->
 <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" />
@@ -11,7 +11,7 @@
       @import url("./css/site.css");
     </style>
     <link rel="stylesheet" href="./css/print.css" type="text/css" media="print" />
-    <meta name="Date-Revision-yyyymmdd" content="20130608" />
+    <meta name="Date-Revision-yyyymmdd" content="20140620" />
     <meta http-equiv="Content-Language" content="en" />
         
   </head>
@@ -28,8 +28,8 @@
             
         
                 <div class="xleft">
-        <span id="publishDate">Last Published: 2013-06-08</span>
-                  &nbsp;| <span id="projectVersion">Version: 2.4.0-SNAPSHOT</span>
+        <span id="publishDate">Last Published: 2014-06-20</span>
+                  &nbsp;| <span id="projectVersion">Version: 2.5.0</span>
                       </div>
             <div class="xright">        
         
@@ -82,7 +82,7 @@
   
     <div class="section"><h2>bundle:bundle<a name="bundle:bundle"></a></h2>
       <p><b>Full name</b>:</p>
-      <p>org.apache.felix:maven-bundle-plugin:2.4.0-SNAPSHOT:bundle</p>
+      <p>org.apache.felix:maven-bundle-plugin:2.5.0:bundle</p>
       <p><b>Description</b>:</p>
       <div>Create an OSGi bundle from Maven project</div>
       <p><b>Attributes</b>:</p>
@@ -174,19 +174,25 @@
             <td>Directory where the manifest will be written<br /><b>Default value is</b>: <tt>${project.build.outputDirectory}/META-INF</tt>.<br /><b>User property is</b>: <tt>manifestLocation</tt>.</td>
           </tr>
           <tr class="b">
+            <td><b><a href="#niceManifest">niceManifest</a></b></td>
+            <td><tt>boolean</tt></td>
+            <td><tt>-</tt></td>
+            <td>(no description)<br /></td>
+          </tr>
+          <tr class="a">
             <td><b><a href="#packaging">packaging</a></b></td>
             <td><tt>String</tt></td>
             <td><tt>-</tt></td>
             <td>Packaging type of the bundle to be installed. For example, &quot;jar&quot;.
 Defaults to none which means use the same packaging as the project.<br /></td>
           </tr>
-          <tr class="a">
+          <tr class="b">
             <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">
+          <tr class="a">
             <td><b><a href="#unpackBundle">unpackBundle</a></b></td>
             <td><tt>boolean</tt></td>
             <td><tt>-</tt></td>
@@ -250,6 +256,11 @@
           <li><b>Required</b>: <tt>No</tt></li>
           <li><b>User Property</b>: <tt>manifestLocation</tt></li>
           <li><b>Default</b>: <tt>${project.build.outputDirectory}/META-INF</tt></li>
+        </ul><hr /><p><b><a name="niceManifest">niceManifest</a>:</b></p>
+        <div>(no description)</div>
+        <ul>
+          <li><b>Type</b>: <tt>boolean</tt></li>
+          <li><b>Required</b>: <tt>No</tt></li>
         </ul><hr /><p><b><a name="outputDirectory">outputDirectory</a>:</b></p>
         <div>The directory for the generated bundles.</div>
         <ul>
@@ -284,7 +295,7 @@
       <hr/>
     </div>
     <div id="footer">
-      <div class="xright">Copyright &#169;                    2006-2013
+      <div class="xright">Copyright &#169;                    2006-2014
                         <a href="http://www.apache.org/">The Apache Software Foundation</a>.
             All Rights Reserved.      
         
diff --git a/bundleplugin/doc/site/bundleall-mojo.html b/bundleplugin/doc/site/bundleall-mojo.html
index 68d522b..3ded7ab 100644
--- a/bundleplugin/doc/site/bundleall-mojo.html
+++ b/bundleplugin/doc/site/bundleall-mojo.html
@@ -1,5 +1,5 @@
 <!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 Jun 8, 2013 -->
+<!-- Generated by Apache Maven Doxia at Jun 20, 2014 -->
 <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" />
@@ -11,7 +11,7 @@
       @import url("./css/site.css");
     </style>
     <link rel="stylesheet" href="./css/print.css" type="text/css" media="print" />
-    <meta name="Date-Revision-yyyymmdd" content="20130608" />
+    <meta name="Date-Revision-yyyymmdd" content="20140620" />
     <meta http-equiv="Content-Language" content="en" />
         
   </head>
@@ -28,8 +28,8 @@
             
         
                 <div class="xleft">
-        <span id="publishDate">Last Published: 2013-06-08</span>
-                  &nbsp;| <span id="projectVersion">Version: 2.4.0-SNAPSHOT</span>
+        <span id="publishDate">Last Published: 2014-06-20</span>
+                  &nbsp;| <span id="projectVersion">Version: 2.5.0</span>
                       </div>
             <div class="xright">        
         
@@ -82,7 +82,7 @@
   
     <div class="section"><h2>bundle:bundleall<a name="bundle:bundleall"></a></h2>
       <p><b>Full name</b>:</p>
-      <p>org.apache.felix:maven-bundle-plugin:2.4.0-SNAPSHOT:bundleall</p>
+      <p>org.apache.felix:maven-bundle-plugin:2.5.0:bundleall</p>
       <p><b>This plugin goal has been deprecated</b>:</p>
       <div>The bundleall goal is no longer supported and may be removed in a
 future release</div>
@@ -190,32 +190,38 @@
             <td>Directory where the manifest will be written<br /><b>Default value is</b>: <tt>${project.build.outputDirectory}/META-INF</tt>.<br /><b>User property is</b>: <tt>manifestLocation</tt>.</td>
           </tr>
           <tr class="b">
+            <td><b><a href="#niceManifest">niceManifest</a></b></td>
+            <td><tt>boolean</tt></td>
+            <td><tt>-</tt></td>
+            <td>(no description)<br /></td>
+          </tr>
+          <tr class="a">
             <td><b><a href="#packaging">packaging</a></b></td>
             <td><tt>String</tt></td>
             <td><tt>-</tt></td>
             <td>Packaging type of the bundle to be installed. For example, &quot;jar&quot;.
 Defaults to none which means use the same packaging as the project.<br /></td>
           </tr>
-          <tr class="a">
+          <tr class="b">
             <td><b><a href="#rebuildBundle">rebuildBundle</a></b></td>
             <td><tt>boolean</tt></td>
             <td><tt>-</tt></td>
             <td>When true, generate the manifest by rebuilding the full bundle in
 memory<br /><b>User property is</b>: <tt>rebuildBundle</tt>.</td>
           </tr>
-          <tr class="b">
+          <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="a">
+          <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 /><b>User property is</b>: <tt>unpackBundle</tt>.</td>
           </tr>
-          <tr class="b">
+          <tr class="a">
             <td><b><a href="#wrapImportPackage">wrapImportPackage</a></b></td>
             <td><tt>String</tt></td>
             <td><tt>-</tt></td>
@@ -290,6 +296,11 @@
           <li><b>Required</b>: <tt>No</tt></li>
           <li><b>User Property</b>: <tt>manifestLocation</tt></li>
           <li><b>Default</b>: <tt>${project.build.outputDirectory}/META-INF</tt></li>
+        </ul><hr /><p><b><a name="niceManifest">niceManifest</a>:</b></p>
+        <div>(no description)</div>
+        <ul>
+          <li><b>Type</b>: <tt>boolean</tt></li>
+          <li><b>Required</b>: <tt>No</tt></li>
         </ul><hr /><p><b><a name="outputDirectory">outputDirectory</a>:</b></p>
         <div>The directory for the generated bundles.</div>
         <ul>
@@ -338,7 +349,7 @@
       <hr/>
     </div>
     <div id="footer">
-      <div class="xright">Copyright &#169;                    2006-2013
+      <div class="xright">Copyright &#169;                    2006-2014
                         <a href="http://www.apache.org/">The Apache Software Foundation</a>.
             All Rights Reserved.      
         
diff --git a/bundleplugin/doc/site/clean-mojo.html b/bundleplugin/doc/site/clean-mojo.html
index 362037c..1358dc8 100644
--- a/bundleplugin/doc/site/clean-mojo.html
+++ b/bundleplugin/doc/site/clean-mojo.html
@@ -1,5 +1,5 @@
 <!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 Jun 8, 2013 -->
+<!-- Generated by Apache Maven Doxia at Jun 20, 2014 -->
 <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" />
@@ -11,7 +11,7 @@
       @import url("./css/site.css");
     </style>
     <link rel="stylesheet" href="./css/print.css" type="text/css" media="print" />
-    <meta name="Date-Revision-yyyymmdd" content="20130608" />
+    <meta name="Date-Revision-yyyymmdd" content="20140620" />
     <meta http-equiv="Content-Language" content="en" />
         
   </head>
@@ -28,8 +28,8 @@
             
         
                 <div class="xleft">
-        <span id="publishDate">Last Published: 2013-06-08</span>
-                  &nbsp;| <span id="projectVersion">Version: 2.4.0-SNAPSHOT</span>
+        <span id="publishDate">Last Published: 2014-06-20</span>
+                  &nbsp;| <span id="projectVersion">Version: 2.5.0</span>
                       </div>
             <div class="xright">        
         
@@ -82,7 +82,7 @@
   
     <div class="section"><h2>bundle:clean<a name="bundle:clean"></a></h2>
       <p><b>Full name</b>:</p>
-      <p>org.apache.felix:maven-bundle-plugin:2.4.0-SNAPSHOT:clean</p>
+      <p>org.apache.felix:maven-bundle-plugin:2.5.0:clean</p>
       <p><b>Description</b>:</p>
       <div>Clean an OBR repository by finding and removing missing resources.</div>
       <p><b>Attributes</b>:</p>
@@ -123,7 +123,7 @@
       <hr/>
     </div>
     <div id="footer">
-      <div class="xright">Copyright &#169;                    2006-2013
+      <div class="xright">Copyright &#169;                    2006-2014
                         <a href="http://www.apache.org/">The Apache Software Foundation</a>.
             All Rights Reserved.      
         
diff --git a/bundleplugin/doc/site/cleanVersions-mojo.html b/bundleplugin/doc/site/cleanVersions-mojo.html
index 242d1ca..39f8782 100644
--- a/bundleplugin/doc/site/cleanVersions-mojo.html
+++ b/bundleplugin/doc/site/cleanVersions-mojo.html
@@ -1,5 +1,5 @@
 <!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 Jun 8, 2013 -->
+<!-- Generated by Apache Maven Doxia at Jun 20, 2014 -->
 <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" />
@@ -11,7 +11,7 @@
       @import url("./css/site.css");
     </style>
     <link rel="stylesheet" href="./css/print.css" type="text/css" media="print" />
-    <meta name="Date-Revision-yyyymmdd" content="20130608" />
+    <meta name="Date-Revision-yyyymmdd" content="20140620" />
     <meta http-equiv="Content-Language" content="en" />
         
   </head>
@@ -28,8 +28,8 @@
             
         
                 <div class="xleft">
-        <span id="publishDate">Last Published: 2013-06-08</span>
-                  &nbsp;| <span id="projectVersion">Version: 2.4.0-SNAPSHOT</span>
+        <span id="publishDate">Last Published: 2014-06-20</span>
+                  &nbsp;| <span id="projectVersion">Version: 2.5.0</span>
                       </div>
             <div class="xright">        
         
@@ -82,7 +82,7 @@
   
     <div class="section"><h2>bundle:cleanVersions<a name="bundle:cleanVersions"></a></h2>
       <p><b>Full name</b>:</p>
-      <p>org.apache.felix:maven-bundle-plugin:2.4.0-SNAPSHOT:cleanVersions</p>
+      <p>org.apache.felix:maven-bundle-plugin:2.5.0:cleanVersions</p>
       <p><b>Description</b>:</p>
       <div>(no description)</div>
       <p><b>Attributes</b>:</p>
@@ -123,7 +123,7 @@
       <hr/>
     </div>
     <div id="footer">
-      <div class="xright">Copyright &#169;                    2006-2013
+      <div class="xright">Copyright &#169;                    2006-2014
                         <a href="http://www.apache.org/">The Apache Software Foundation</a>.
             All Rights Reserved.      
         
diff --git a/bundleplugin/doc/site/dependencies.html b/bundleplugin/doc/site/dependencies.html
index f59497b..aa607a5 100644
--- a/bundleplugin/doc/site/dependencies.html
+++ b/bundleplugin/doc/site/dependencies.html
@@ -1,5 +1,5 @@
 <!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 Jun 8, 2013 -->
+<!-- Generated by Apache Maven Doxia at Jun 20, 2014 -->
 <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" />
@@ -10,7 +10,7 @@
       @import url("./css/site.css");
     </style>
     <link rel="stylesheet" href="./css/print.css" type="text/css" media="print" />
-    <meta name="Date-Revision-yyyymmdd" content="20130608" />
+    <meta name="Date-Revision-yyyymmdd" content="20140620" />
     <meta http-equiv="Content-Language" content="en" />
         
   </head>
@@ -27,8 +27,8 @@
             
         
                 <div class="xleft">
-        <span id="publishDate">Last Published: 2013-06-08</span>
-                  &nbsp;| <span id="projectVersion">Version: 2.4.0-SNAPSHOT</span>
+        <span id="publishDate">Last Published: 2014-06-20</span>
+                  &nbsp;| <span id="projectVersion">Version: 2.5.0</span>
                       </div>
             <div class="xright">        
         
@@ -100,7 +100,7 @@
     </div>
     <div id="bodyColumn">
       <div id="contentBox">
-        <a name="Project_Dependencies"></a><div class="section"><h2>Project Dependencies<a name="Project_Dependencies"></a></h2><a name="Project_Dependencies_compile"></a><div class="section"><h3>compile<a name="compile"></a></h3><p>The following is a list of compile dependencies for this project. These dependencies are required to compile and run the application:</p><table border="0" class="bodyTable"><tr class="a"><th>GroupId</th><th>ArtifactId</th><th>Version</th><th>Type</th><th>License</th></tr><tr class="b"><td>biz.aQute.bnd</td><td><a class="externalLink" href="http://www.aQute.biz/Code/Bnd/bndlib">bndlib</a></td><td>2.1.0</td><td>jar</td><td><a class="externalLink" href="http://www.opensource.org/licenses/apache2.0.php">Apache Software License 2.0</a></td></tr><tr class="a"><td>org.apache.felix</td><td><a class="externalLink" href="http://felix.apache.org/org.apache.felix.bundlerepository/">org.apache.felix.bundlerepository</a></td><td>1.6.6</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="b"><td>org.apache.maven</td><td><a class="externalLink" href="http://maven.apache.org/shared/maven-archiver/">maven-archiver</a></td><td>2.5</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="a"><td>org.apache.maven</td><td><a class="externalLink" href="http://maven.apache.org/maven-core">maven-core</a></td><td>2.0.7</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="b"><td>org.apache.maven.shared</td><td><a class="externalLink" href="http://maven.apache.org/shared/maven-dependency-tree/">maven-dependency-tree</a></td><td>2.1</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="a"><td>org.codehaus.plexus</td><td><a class="externalLink" href="http://plexus.codehaus.org/plexus-utils">plexus-utils</a></td><td>3.0.10</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr></table></div><a name="Project_Dependencies_test"></a><div class="section"><h3>test<a name="test"></a></h3><p>The following is a list of test dependencies for this project. These dependencies are only required to compile and run unit tests for the application:</p><table border="0" class="bodyTable"><tr class="a"><th>GroupId</th><th>ArtifactId</th><th>Version</th><th>Type</th><th>License</th></tr><tr class="b"><td>junit</td><td><a class="externalLink" href="http://junit.org">junit</a></td><td>4.0</td><td>jar</td><td>-</td></tr><tr class="a"><td>org.apache.maven.shared</td><td><a class="externalLink" href="http://maven.apache.org/shared/maven-plugin-testing-harness/">maven-plugin-testing-harness</a></td><td>1.1</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="b"><td>org.easymock</td><td><a class="externalLink" href="http://www.easymock.org">easymock</a></td><td>2.4</td><td>jar</td><td><a class="externalLink" href="http://www.easymock.org/License.html">MIT License</a></td></tr><tr class="a"><td>org.mockito</td><td><a class="externalLink" href="http://www.mockito.org">mockito-all</a></td><td>1.7</td><td>jar</td><td><a class="externalLink" href="http://code.google.com/p/mockito/wiki/License">The MIT License</a></td></tr></table></div></div><a name="Project_Transitive_Dependencies"></a><div class="section"><h2>Project Transitive Dependencies<a name="Project_Transitive_Dependencies"></a></h2><p>The following is a list of transitive dependencies for this project. Transitive dependencies are the dependencies of the project dependencies.</p><a name="Project_Transitive_Dependencies_compile"></a><div class="section"><h3>compile<a name="compile"></a></h3><p>The following is a list of compile dependencies for this project. These dependencies are required to compile and run the application:</p><table border="0" class="bodyTable"><tr class="a"><th>GroupId</th><th>ArtifactId</th><th>Version</th><th>Type</th><th>License</th></tr><tr class="b"><td>classworlds</td><td><a class="externalLink" href="http://classworlds.codehaus.org/">classworlds</a></td><td>1.1</td><td>jar</td><td>-</td></tr><tr class="a"><td>commons-cli</td><td>commons-cli</td><td>1.0</td><td>jar</td><td>-</td></tr><tr class="b"><td>org.apache.maven</td><td><a class="externalLink" href="http://maven.apache.org/maven-artifact">maven-artifact</a></td><td>2.0.7</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="a"><td>org.apache.maven</td><td><a class="externalLink" href="http://maven.apache.org/maven-artifact-manager">maven-artifact-manager</a></td><td>2.0.7</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="b"><td>org.apache.maven</td><td><a class="externalLink" href="http://maven.apache.org/maven-error-diagnostics">maven-error-diagnostics</a></td><td>2.0.7</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="a"><td>org.apache.maven</td><td><a class="externalLink" href="http://maven.apache.org/maven-model">maven-model</a></td><td>2.0.7</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="b"><td>org.apache.maven</td><td><a class="externalLink" href="http://maven.apache.org/maven-monitor">maven-monitor</a></td><td>2.0.7</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="a"><td>org.apache.maven</td><td><a class="externalLink" href="http://maven.apache.org/maven-plugin-api">maven-plugin-api</a></td><td>2.0.7</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="b"><td>org.apache.maven</td><td><a class="externalLink" href="http://maven.apache.org/maven-plugin-descriptor">maven-plugin-descriptor</a></td><td>2.0.7</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="a"><td>org.apache.maven</td><td><a class="externalLink" href="http://maven.apache.org/maven-plugin-parameter-documenter">maven-plugin-parameter-documenter</a></td><td>2.0.7</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="b"><td>org.apache.maven</td><td><a class="externalLink" href="http://maven.apache.org/maven-plugin-registry">maven-plugin-registry</a></td><td>2.0.7</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="a"><td>org.apache.maven</td><td><a class="externalLink" href="http://maven.apache.org/maven-profile">maven-profile</a></td><td>2.0.7</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="b"><td>org.apache.maven</td><td><a class="externalLink" href="http://maven.apache.org/maven-project">maven-project</a></td><td>2.0.7</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="a"><td>org.apache.maven</td><td><a class="externalLink" href="http://maven.apache.org/maven-repository-metadata">maven-repository-metadata</a></td><td>2.0.7</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="b"><td>org.apache.maven</td><td><a class="externalLink" href="http://maven.apache.org/maven-settings">maven-settings</a></td><td>2.0.7</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="a"><td>org.apache.maven.doxia</td><td><a class="externalLink" href="http://maven.apache.org/doxia/doxia-sink-api">doxia-sink-api</a></td><td>1.0-alpha-7</td><td>jar</td><td>-</td></tr><tr class="b"><td>org.apache.maven.reporting</td><td><a class="externalLink" href="http://maven.apache.org/maven-reporting/maven-reporting-api">maven-reporting-api</a></td><td>2.0.7</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="a"><td>org.apache.maven.wagon</td><td><a class="externalLink" href="http://maven.apache.org/wagon/wagon-provider-api">wagon-provider-api</a></td><td>1.0-beta-2</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="b"><td>org.codehaus.plexus</td><td><a class="externalLink" href="http://forge.sonatype.com/spice-parent/plexus-archiver/">plexus-archiver</a></td><td>2.1</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a></td></tr><tr class="a"><td>org.codehaus.plexus</td><td><a class="externalLink" href="http://plexus.codehaus.org/plexus-containers/plexus-component-annotations/">plexus-component-annotations</a></td><td>1.5.5</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="b"><td>org.codehaus.plexus</td><td>plexus-container-default</td><td>1.0-alpha-9-stable-1</td><td>jar</td><td>-</td></tr><tr class="a"><td>org.codehaus.plexus</td><td>plexus-interactivity-api</td><td>1.0-alpha-4</td><td>jar</td><td>-</td></tr><tr class="b"><td>org.codehaus.plexus</td><td><a class="externalLink" href="http://plexus.codehaus.org/plexus-interpolation/">plexus-interpolation</a></td><td>1.15</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="a"><td>org.codehaus.plexus</td><td><a class="externalLink" href="http://plexus.codehaus.org/plexus-components/plexus-io">plexus-io</a></td><td>2.0.2</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="b"><td>org.eclipse.aether</td><td><a class="externalLink" href="http://www.eclipse.org/aether/aether-util/">aether-util</a></td><td>0.9.0.M2</td><td>jar</td><td><a class="externalLink" href="http://www.eclipse.org/legal/epl-v10.html">Eclipse Public License, Version 1.0</a></td></tr><tr class="a"><td>org.osgi</td><td>org.osgi.core</td><td>4.2.0</td><td>jar</td><td>-</td></tr></table></div><a name="Project_Transitive_Dependencies_runtime"></a><div class="section"><h3>runtime<a name="runtime"></a></h3><p>The following is a list of runtime dependencies for this project. These dependencies are required to run the application:</p><table border="0" class="bodyTable"><tr class="a"><th>GroupId</th><th>ArtifactId</th><th>Version</th><th>Type</th><th>License</th></tr><tr class="b"><td>com.jcraft</td><td><a class="externalLink" href="http://www.jcraft.com/jsch/">jsch</a></td><td>0.1.27</td><td>jar</td><td><a class="externalLink" href="http://www.jcraft.com/jsch/LICENSE.txt">BSD</a></td></tr><tr class="a"><td>jtidy</td><td><a class="externalLink" href="http://jtidy.sourceforge.net">jtidy</a></td><td>4aug2000r7-dev</td><td>jar</td><td><a class="externalLink" href="http://svn.sourceforge.net/viewvc/*checkout*/jtidy/trunk/jtidy/LICENSE.txt?revision=95">Java HTML Tidy License</a></td></tr><tr class="b"><td>org.apache.maven.wagon</td><td><a class="externalLink" href="http://maven.apache.org/wagon/wagon-providers/wagon-file">wagon-file</a></td><td>1.0-beta-2</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="a"><td>org.apache.maven.wagon</td><td><a class="externalLink" href="http://maven.apache.org/wagon/wagon-providers/wagon-http-lightweight">wagon-http-lightweight</a></td><td>1.0-beta-2</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="b"><td>org.apache.maven.wagon</td><td><a class="externalLink" href="http://maven.apache.org/wagon/wagon-providers/wagon-http-shared">wagon-http-shared</a></td><td>1.0-beta-2</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="a"><td>org.apache.maven.wagon</td><td><a class="externalLink" href="http://maven.apache.org/wagon/wagon-providers/wagon-ssh">wagon-ssh</a></td><td>1.0-beta-2</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="b"><td>org.apache.maven.wagon</td><td><a class="externalLink" href="http://maven.apache.org/wagon/wagon-providers/wagon-ssh-common">wagon-ssh-common</a></td><td>1.0-beta-2</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="a"><td>org.apache.maven.wagon</td><td><a class="externalLink" href="http://maven.apache.org/wagon/wagon-providers/wagon-ssh-external">wagon-ssh-external</a></td><td>1.0-beta-2</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="b"><td>xml-apis</td><td><a class="externalLink" href="http://xml.apache.org/commons/#external">xml-apis</a></td><td>1.0.b2</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr></table></div></div><a name="Project_Dependency_Graph"></a><div class="section"><h2>Project Dependency Graph<a name="Project_Dependency_Graph"></a></h2><script language="javascript" type="text/javascript">
+        <a name="Project_Dependencies"></a><div class="section"><h2>Project Dependencies<a name="Project_Dependencies"></a></h2><a name="Project_Dependencies_compile"></a><div class="section"><h3>compile<a name="compile"></a></h3><p>The following is a list of compile dependencies for this project. These dependencies are required to compile and run the application:</p><table border="0" class="bodyTable"><tr class="a"><th>GroupId</th><th>ArtifactId</th><th>Version</th><th>Type</th><th>License</th></tr><tr class="b"><td>biz.aQute.bnd</td><td><a class="externalLink" href="http://www.aQute.biz/Code/Bnd/bndlib">bndlib</a></td><td>2.3.0</td><td>jar</td><td><a class="externalLink" href="http://www.opensource.org/licenses/apache2.0.php">Apache Software License 2.0</a></td></tr><tr class="a"><td>org.apache.felix</td><td><a class="externalLink" href="http://felix.apache.org/org.apache.felix.bundlerepository/">org.apache.felix.bundlerepository</a></td><td>1.6.6</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="b"><td>org.apache.felix</td><td><a class="externalLink" href="http://felix.apache.org/org.apache.felix.utils/">org.apache.felix.utils</a></td><td>1.6.0</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="a"><td>org.apache.maven</td><td><a class="externalLink" href="http://maven.apache.org/shared/maven-archiver/">maven-archiver</a></td><td>2.5</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="b"><td>org.apache.maven</td><td><a class="externalLink" href="http://maven.apache.org/maven-core">maven-core</a></td><td>2.0.7</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="a"><td>org.apache.maven.doxia</td><td><a class="externalLink" href="http://maven.apache.org/doxia/doxia/doxia-sink-api">doxia-sink-api</a></td><td>1.0</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="b"><td>org.apache.maven.doxia</td><td><a class="externalLink" href="http://maven.apache.org/doxia/doxia-sitetools/doxia-site-renderer">doxia-site-renderer</a></td><td>1.0</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="a"><td>org.apache.maven.shared</td><td><a class="externalLink" href="http://maven.apache.org/shared/maven-dependency-tree/">maven-dependency-tree</a></td><td>2.1</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="b"><td>org.codehaus.plexus</td><td><a class="externalLink" href="http://plexus.codehaus.org/plexus-utils">plexus-utils</a></td><td>3.0.10</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr></table></div><a name="Project_Dependencies_test"></a><div class="section"><h3>test<a name="test"></a></h3><p>The following is a list of test dependencies for this project. These dependencies are only required to compile and run unit tests for the application:</p><table border="0" class="bodyTable"><tr class="a"><th>GroupId</th><th>ArtifactId</th><th>Version</th><th>Type</th><th>License</th></tr><tr class="b"><td>junit</td><td><a class="externalLink" href="http://junit.org">junit</a></td><td>4.0</td><td>jar</td><td>-</td></tr><tr class="a"><td>org.apache.maven.shared</td><td><a class="externalLink" href="http://maven.apache.org/shared/maven-plugin-testing-harness/">maven-plugin-testing-harness</a></td><td>1.1</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="b"><td>org.easymock</td><td><a class="externalLink" href="http://www.easymock.org">easymock</a></td><td>2.4</td><td>jar</td><td><a class="externalLink" href="http://www.easymock.org/License.html">MIT License</a></td></tr><tr class="a"><td>org.mockito</td><td><a class="externalLink" href="http://www.mockito.org">mockito-all</a></td><td>1.7</td><td>jar</td><td><a class="externalLink" href="http://code.google.com/p/mockito/wiki/License">The MIT License</a></td></tr></table></div></div><a name="Project_Transitive_Dependencies"></a><div class="section"><h2>Project Transitive Dependencies<a name="Project_Transitive_Dependencies"></a></h2><p>The following is a list of transitive dependencies for this project. Transitive dependencies are the dependencies of the project dependencies.</p><a name="Project_Transitive_Dependencies_compile"></a><div class="section"><h3>compile<a name="compile"></a></h3><p>The following is a list of compile dependencies for this project. These dependencies are required to compile and run the application:</p><table border="0" class="bodyTable"><tr class="a"><th>GroupId</th><th>ArtifactId</th><th>Version</th><th>Type</th><th>License</th></tr><tr class="b"><td>classworlds</td><td><a class="externalLink" href="http://classworlds.codehaus.org/">classworlds</a></td><td>1.1</td><td>jar</td><td>-</td></tr><tr class="a"><td>commons-cli</td><td>commons-cli</td><td>1.0</td><td>jar</td><td>-</td></tr><tr class="b"><td>commons-collections</td><td><a class="externalLink" href="http://jakarta.apache.org/commons/collections/">commons-collections</a></td><td>3.2</td><td>jar</td><td>/LICENSE.txt</td></tr><tr class="a"><td>commons-lang</td><td>commons-lang</td><td>2.1</td><td>jar</td><td>/LICENSE.txt</td></tr><tr class="b"><td>org.apache.maven</td><td><a class="externalLink" href="http://maven.apache.org/maven-artifact">maven-artifact</a></td><td>2.0.7</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="a"><td>org.apache.maven</td><td><a class="externalLink" href="http://maven.apache.org/maven-artifact-manager">maven-artifact-manager</a></td><td>2.0.7</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="b"><td>org.apache.maven</td><td><a class="externalLink" href="http://maven.apache.org/maven-error-diagnostics">maven-error-diagnostics</a></td><td>2.0.7</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="a"><td>org.apache.maven</td><td><a class="externalLink" href="http://maven.apache.org/maven-model">maven-model</a></td><td>2.0.7</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="b"><td>org.apache.maven</td><td><a class="externalLink" href="http://maven.apache.org/maven-monitor">maven-monitor</a></td><td>2.0.7</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="a"><td>org.apache.maven</td><td><a class="externalLink" href="http://maven.apache.org/maven-plugin-api">maven-plugin-api</a></td><td>2.0.7</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="b"><td>org.apache.maven</td><td><a class="externalLink" href="http://maven.apache.org/maven-plugin-descriptor">maven-plugin-descriptor</a></td><td>2.0.7</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="a"><td>org.apache.maven</td><td><a class="externalLink" href="http://maven.apache.org/maven-plugin-parameter-documenter">maven-plugin-parameter-documenter</a></td><td>2.0.7</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="b"><td>org.apache.maven</td><td><a class="externalLink" href="http://maven.apache.org/maven-plugin-registry">maven-plugin-registry</a></td><td>2.0.7</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="a"><td>org.apache.maven</td><td><a class="externalLink" href="http://maven.apache.org/maven-profile">maven-profile</a></td><td>2.0.7</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="b"><td>org.apache.maven</td><td><a class="externalLink" href="http://maven.apache.org/maven-project">maven-project</a></td><td>2.0.7</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="a"><td>org.apache.maven</td><td><a class="externalLink" href="http://maven.apache.org/maven-repository-metadata">maven-repository-metadata</a></td><td>2.0.7</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="b"><td>org.apache.maven</td><td><a class="externalLink" href="http://maven.apache.org/maven-settings">maven-settings</a></td><td>2.0.7</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="a"><td>org.apache.maven.doxia</td><td><a class="externalLink" href="http://maven.apache.org/doxia/doxia/doxia-core">doxia-core</a></td><td>1.0</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="b"><td>org.apache.maven.doxia</td><td><a class="externalLink" href="http://maven.apache.org/doxia/doxia-sitetools/doxia-decoration-model">doxia-decoration-model</a></td><td>1.0</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="a"><td>org.apache.maven.doxia</td><td><a class="externalLink" href="http://maven.apache.org/doxia/doxia/doxia-modules/doxia-module-apt">doxia-module-apt</a></td><td>1.0</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="b"><td>org.apache.maven.doxia</td><td><a class="externalLink" href="http://maven.apache.org/doxia/doxia/doxia-modules/doxia-module-fml">doxia-module-fml</a></td><td>1.0</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="a"><td>org.apache.maven.doxia</td><td><a class="externalLink" href="http://maven.apache.org/doxia/doxia/doxia-modules/doxia-module-xdoc">doxia-module-xdoc</a></td><td>1.0</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="b"><td>org.apache.maven.doxia</td><td><a class="externalLink" href="http://maven.apache.org/doxia/doxia/doxia-modules/doxia-module-xhtml">doxia-module-xhtml</a></td><td>1.0</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="a"><td>org.apache.maven.reporting</td><td><a class="externalLink" href="http://maven.apache.org/maven-reporting/maven-reporting-api">maven-reporting-api</a></td><td>2.0.7</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="b"><td>org.apache.maven.wagon</td><td><a class="externalLink" href="http://maven.apache.org/wagon/wagon-provider-api">wagon-provider-api</a></td><td>1.0-beta-2</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="a"><td>org.apache.velocity</td><td><a class="externalLink" href="http://velocity.apache.org/engine/releases/velocity-1.5/">velocity</a></td><td>1.5</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="b"><td>org.codehaus.plexus</td><td><a class="externalLink" href="http://forge.sonatype.com/spice-parent/plexus-archiver/">plexus-archiver</a></td><td>2.1</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a></td></tr><tr class="a"><td>org.codehaus.plexus</td><td><a class="externalLink" href="http://plexus.codehaus.org/plexus-containers/plexus-component-annotations/">plexus-component-annotations</a></td><td>1.5.5</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="b"><td>org.codehaus.plexus</td><td>plexus-container-default</td><td>1.0-alpha-9-stable-1</td><td>jar</td><td>-</td></tr><tr class="a"><td>org.codehaus.plexus</td><td><a class="externalLink" href="http://plexus.codehaus.org/plexus-components/plexus-i18n">plexus-i18n</a></td><td>1.0-beta-7</td><td>jar</td><td>-</td></tr><tr class="b"><td>org.codehaus.plexus</td><td>plexus-interactivity-api</td><td>1.0-alpha-4</td><td>jar</td><td>-</td></tr><tr class="a"><td>org.codehaus.plexus</td><td><a class="externalLink" href="http://plexus.codehaus.org/plexus-interpolation/">plexus-interpolation</a></td><td>1.15</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="b"><td>org.codehaus.plexus</td><td><a class="externalLink" href="http://plexus.codehaus.org/plexus-components/plexus-io">plexus-io</a></td><td>2.0.2</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="a"><td>org.codehaus.plexus</td><td><a class="externalLink" href="http://plexus.codehaus.org/plexus-components/plexus-velocity">plexus-velocity</a></td><td>1.1.7</td><td>jar</td><td>-</td></tr><tr class="b"><td>org.eclipse.aether</td><td><a class="externalLink" href="http://www.eclipse.org/aether/aether-util/">aether-util</a></td><td>0.9.0.M2</td><td>jar</td><td><a class="externalLink" href="http://www.eclipse.org/legal/epl-v10.html">Eclipse Public License, Version 1.0</a></td></tr><tr class="a"><td>org.osgi</td><td>org.osgi.compendium</td><td>4.2.0</td><td>jar</td><td>-</td></tr><tr class="b"><td>org.osgi</td><td><a class="externalLink" href="http://www.osgi.org">org.osgi.core</a></td><td>4.3.1</td><td>jar</td><td><a class="externalLink" href="http://opensource.org/licenses/apache2.0.php">Apache License, Version 2.0</a></td></tr><tr class="a"><td>oro</td><td>oro</td><td>2.0.8</td><td>jar</td><td>-</td></tr></table></div><a name="Project_Transitive_Dependencies_runtime"></a><div class="section"><h3>runtime<a name="runtime"></a></h3><p>The following is a list of runtime dependencies for this project. These dependencies are required to run the application:</p><table border="0" class="bodyTable"><tr class="a"><th>GroupId</th><th>ArtifactId</th><th>Version</th><th>Type</th><th>License</th></tr><tr class="b"><td>com.jcraft</td><td><a class="externalLink" href="http://www.jcraft.com/jsch/">jsch</a></td><td>0.1.27</td><td>jar</td><td><a class="externalLink" href="http://www.jcraft.com/jsch/LICENSE.txt">BSD</a></td></tr><tr class="a"><td>jtidy</td><td><a class="externalLink" href="http://jtidy.sourceforge.net">jtidy</a></td><td>4aug2000r7-dev</td><td>jar</td><td><a class="externalLink" href="http://svn.sourceforge.net/viewvc/*checkout*/jtidy/trunk/jtidy/LICENSE.txt?revision=95">Java HTML Tidy License</a></td></tr><tr class="b"><td>org.apache.maven.wagon</td><td><a class="externalLink" href="http://maven.apache.org/wagon/wagon-providers/wagon-file">wagon-file</a></td><td>1.0-beta-2</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="a"><td>org.apache.maven.wagon</td><td><a class="externalLink" href="http://maven.apache.org/wagon/wagon-providers/wagon-http-lightweight">wagon-http-lightweight</a></td><td>1.0-beta-2</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="b"><td>org.apache.maven.wagon</td><td><a class="externalLink" href="http://maven.apache.org/wagon/wagon-providers/wagon-http-shared">wagon-http-shared</a></td><td>1.0-beta-2</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="a"><td>org.apache.maven.wagon</td><td><a class="externalLink" href="http://maven.apache.org/wagon/wagon-providers/wagon-ssh">wagon-ssh</a></td><td>1.0-beta-2</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="b"><td>org.apache.maven.wagon</td><td><a class="externalLink" href="http://maven.apache.org/wagon/wagon-providers/wagon-ssh-common">wagon-ssh-common</a></td><td>1.0-beta-2</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="a"><td>org.apache.maven.wagon</td><td><a class="externalLink" href="http://maven.apache.org/wagon/wagon-providers/wagon-ssh-external">wagon-ssh-external</a></td><td>1.0-beta-2</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr><tr class="b"><td>xml-apis</td><td><a class="externalLink" href="http://xml.apache.org/commons/#external">xml-apis</a></td><td>1.0.b2</td><td>jar</td><td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td></tr></table></div></div><a name="Project_Dependency_Graph"></a><div class="section"><h2>Project Dependency Graph<a name="Project_Dependency_Graph"></a></h2><script language="javascript" type="text/javascript">
       function toggleDependencyDetail( divId, imgId )
       {
         var div = document.getElementById( divId );
@@ -117,30 +117,33 @@
         }
       }
 </script>
-<a name="Dependency_Tree"></a><div class="section"><h3>Dependency Tree<a name="Dependency_Tree"></a></h3><ul><li>org.apache.felix:maven-bundle-plugin:maven-plugin:2.4.0-SNAPSHOT <img id="_1397986861" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1805994600', '_1397986861' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1805994600" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Bundle Plugin</th></tr><tr class="b"><td><p><b>Description: </b>Provides a maven plugin that supports creating an OSGi bundle
+<a name="Dependency_Tree"></a><div class="section"><h3>Dependency Tree<a name="Dependency_Tree"></a></h3><ul><li>org.apache.felix:maven-bundle-plugin:maven-plugin:2.5.0 <img id="_468888161" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1186070023', '_468888161' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1186070023" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Bundle Plugin</th></tr><tr class="b"><td><p><b>Description: </b>Provides a maven plugin that supports creating an OSGi bundle
   from the contents of the compilation classpath along with its
   resources and dependencies. Plus a zillion other features.
-  The plugin uses the Bnd tool (http://www.aqute.biz/Code/Bnd)</p><p><b>URL: </b><a class="externalLink" href="http://felix.apache.org/maven-bundle-plugin/">http://felix.apache.org/maven-bundle-plugin/</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div><ul><li>biz.aQute.bnd:bndlib:jar:2.1.0 (compile) <img id="_2124682751" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_847411179', '_2124682751' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_847411179" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>A Swiss Army Knife for OSGi</th></tr><tr class="b"><td><p><b>Description: </b>The bndlib project is a general library to be used with OSGi bundles. It contains
-    lots of cool functionality that calculates dependencies, etc.</p><p><b>URL: </b><a class="externalLink" href="http://www.aQute.biz/Code/Bnd/bndlib">http://www.aQute.biz/Code/Bnd/bndlib</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.opensource.org/licenses/apache2.0.php">Apache Software License 2.0</a></p></td></tr></table></div><ul><li>org.osgi:org.osgi.core:jar:4.2.0 (compile) <img id="_2109964013" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_668099104', '_2109964013' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_668099104" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>org.osgi.core</th></tr><tr class="b"><td><p><b>Description: </b>POM was created by Sonatype Nexus</p><p><b>Project License: </b>No project license is defined for this project.</p></td></tr></table></div></li></ul></li><li>org.apache.felix:org.apache.felix.bundlerepository:jar:1.6.6 (compile) <img id="_94356821" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_632718946', '_94356821' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_632718946" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Apache Felix Bundle Repository</th></tr><tr class="b"><td><p><b>Description: </b>Bundle repository service.</p><p><b>URL: </b><a class="externalLink" href="http://felix.apache.org/org.apache.felix.bundlerepository/">http://felix.apache.org/org.apache.felix.bundlerepository/</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div><ul><li>org.easymock:easymock:jar:2.4 (compile) <img id="_1940029524" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_592154419', '_1940029524' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_592154419" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>EasyMock</th></tr><tr class="b"><td><p><b>Description: </b>EasyMock provides an easy way to create Mock Objects for interfaces by generating them on the fly using Java's proxy mechanism</p><p><b>URL: </b><a class="externalLink" href="http://www.easymock.org">http://www.easymock.org</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.easymock.org/License.html">MIT License</a></p></td></tr></table></div></li></ul></li><li>org.apache.maven:maven-core:jar:2.0.7 (compile) <img id="_1683025293" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1134722863', '_1683025293' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1134722863" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Core</th></tr><tr class="b"><td><p><b>Description: </b>Maven is a project development management and comprehension tool. Based on the concept of a project object model: builds, dependency management, documentation creation, site publication, and distribution publication are all controlled from the declarative file. Maven can be extended by plugins to utilise a number of other development tools for reporting or the build process.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-core">http://maven.apache.org/maven-core</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div><ul><li>org.apache.maven:maven-settings:jar:2.0.7 (compile) <img id="_438774694" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1905589642', '_438774694' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1905589642" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Local Settings Model</th></tr><tr class="b"><td><p><b>Description: </b>Maven is a project development management and comprehension tool. Based on the concept of a project object model: builds, dependency management, documentation creation, site publication, and distribution publication are all controlled from the declarative file. Maven can be extended by plugins to utilise a number of other development tools for reporting or the build process.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-settings">http://maven.apache.org/maven-settings</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div><ul><li>org.apache.maven:maven-model:jar:2.0.7 (compile) <img id="_334440622" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_215079650', '_334440622' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_215079650" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Model</th></tr><tr class="b"><td><p><b>Description: </b>Maven Model</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-model">http://maven.apache.org/maven-model</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9-stable-1 (compile) <img id="_1490673062" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_584696363', '_1490673062' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_584696363" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Default Plexus Container</th></tr><tr class="b"><td><p><b>Description: </b>There is currently no description associated with this project.</p><p><b>Project License: </b>No project license is defined for this project.</p></td></tr></table></div></li></ul></li><li>org.apache.maven.wagon:wagon-file:jar:1.0-beta-2 (runtime) <img id="_2034259857" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_960942714', '_2034259857' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_960942714" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Wagon File Provider</th></tr><tr class="b"><td><p><b>Description: </b>Wagon that gets and puts artifacts using file system protocol</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/wagon/wagon-providers/wagon-file">http://maven.apache.org/wagon/wagon-providers/wagon-file</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div><ul><li>org.apache.maven.wagon:wagon-provider-api:jar:1.0-beta-2 (runtime) <img id="_751648567" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_2002738904', '_751648567' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_2002738904" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Wagon API</th></tr><tr class="b"><td><p><b>Description: </b>Maven Wagon API that defines the contract between different Wagon implementations</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/wagon/wagon-provider-api">http://maven.apache.org/wagon/wagon-provider-api</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li></ul></li><li>org.apache.maven:maven-plugin-parameter-documenter:jar:2.0.7 (compile) <img id="_551855458" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1523259723', '_551855458' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1523259723" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Plugin Parameter Documenter API</th></tr><tr class="b"><td><p><b>Description: </b>Maven is a project development management and comprehension tool. Based on the concept of a project object model: builds, dependency management, documentation creation, site publication, and distribution publication are all controlled from the declarative file. Maven can be extended by plugins to utilise a number of other development tools for reporting or the build process.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-plugin-parameter-documenter">http://maven.apache.org/maven-plugin-parameter-documenter</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div><ul><li>org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9-stable-1 (compile) <img id="_100665092" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1820696432', '_100665092' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1820696432" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Default Plexus Container</th></tr><tr class="b"><td><p><b>Description: </b>There is currently no description associated with this project.</p><p><b>Project License: </b>No project license is defined for this project.</p></td></tr></table></div></li></ul></li><li>org.apache.maven.wagon:wagon-http-lightweight:jar:1.0-beta-2 (runtime) <img id="_1201806375" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1886945575', '_1201806375' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1886945575" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Wagon Lightweight HTTP Provider</th></tr><tr class="b"><td><p><b>Description: </b>Wagon that gets and puts artifacts through http using standard Java library</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/wagon/wagon-providers/wagon-http-lightweight">http://maven.apache.org/wagon/wagon-providers/wagon-http-lightweight</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div><ul><li>org.apache.maven.wagon:wagon-http-shared:jar:1.0-beta-2 (runtime) <img id="_549454036" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1003337356', '_549454036' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1003337356" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Wagon HTTP Shared Library</th></tr><tr class="b"><td><p><b>Description: </b>Shared Library for the wagon-http, and wagon-http-lightweight wagon providers.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/wagon/wagon-providers/wagon-http-shared">http://maven.apache.org/wagon/wagon-providers/wagon-http-shared</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div><ul><li>jtidy:jtidy:jar:4aug2000r7-dev (runtime) <img id="_2052525479" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1049928328', '_2052525479' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1049928328" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>JTidy</th></tr><tr class="b"><td><p><b>Description: </b>JTidy is a Java port of HTML Tidy, a HTML syntax checker and pretty printer. Like its non-Java cousin, JTidy can be used as a tool for cleaning up malformed and faulty HTML. In addition, JTidy provides a DOM parser for real-world HTML.</p><p><b>URL: </b><a class="externalLink" href="http://jtidy.sourceforge.net">http://jtidy.sourceforge.net</a></p><p><b>Project License: </b><a class="externalLink" href="http://svn.sourceforge.net/viewvc/*checkout*/jtidy/trunk/jtidy/LICENSE.txt?revision=95">Java HTML Tidy License</a></p></td></tr></table></div></li><li>org.apache.maven.wagon:wagon-provider-api:jar:1.0-beta-2 (runtime) <img id="_88799330" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1100520037', '_88799330' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1100520037" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Wagon API</th></tr><tr class="b"><td><p><b>Description: </b>Maven Wagon API that defines the contract between different Wagon implementations</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/wagon/wagon-provider-api">http://maven.apache.org/wagon/wagon-provider-api</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li></ul></li><li>xml-apis:xml-apis:jar:1.0.b2 (runtime) <img id="_699450177" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1055808636', '_699450177' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1055808636" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>XML Commons External Components XML APIs</th></tr><tr class="b"><td><p><b>Description: </b>xml-commons provides an Apache-hosted set of DOM, SAX, and 
+  The plugin uses the Bnd tool (http://www.aqute.biz/Code/Bnd)</p><p><b>URL: </b><a class="externalLink" href="http://felix.apache.org/maven-bundle-plugin/">http://felix.apache.org/maven-bundle-plugin/</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div><ul><li>biz.aQute.bnd:bndlib:jar:2.3.0 (compile) <img id="_166168944" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1383521807', '_166168944' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1383521807" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>A Swiss Army Knife for OSGi</th></tr><tr class="b"><td><p><b>Description: </b>The bndlib project is a general library to be used with OSGi bundles. It contains
+    lots of cool functionality that calculates dependencies, etc.</p><p><b>URL: </b><a class="externalLink" href="http://www.aQute.biz/Code/Bnd/bndlib">http://www.aQute.biz/Code/Bnd/bndlib</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.opensource.org/licenses/apache2.0.php">Apache Software License 2.0</a></p></td></tr></table></div><ul><li>org.osgi:org.osgi.core:jar:4.3.1 (compile) <img id="_1628526364" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_340116283', '_1628526364' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_340116283" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>osgi.core</th></tr><tr class="b"><td><p><b>Description: </b>OSGi Service Platform Release 4 Version 4.3, Core Interfaces
+     and Classes for use in compiling bundles.</p><p><b>URL: </b><a class="externalLink" href="http://www.osgi.org">http://www.osgi.org</a></p><p><b>Project License: </b><a class="externalLink" href="http://opensource.org/licenses/apache2.0.php">Apache License, Version 2.0</a></p></td></tr></table></div></li></ul></li><li>org.apache.felix:org.apache.felix.bundlerepository:jar:1.6.6 (compile) <img id="_1801102561" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_363437395', '_1801102561' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_363437395" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Apache Felix Bundle Repository</th></tr><tr class="b"><td><p><b>Description: </b>Bundle repository service.</p><p><b>URL: </b><a class="externalLink" href="http://felix.apache.org/org.apache.felix.bundlerepository/">http://felix.apache.org/org.apache.felix.bundlerepository/</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div><ul><li>org.easymock:easymock:jar:2.4 (compile) <img id="_545809774" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_221317176', '_545809774' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_221317176" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>EasyMock</th></tr><tr class="b"><td><p><b>Description: </b>EasyMock provides an easy way to create Mock Objects for interfaces by generating them on the fly using Java's proxy mechanism</p><p><b>URL: </b><a class="externalLink" href="http://www.easymock.org">http://www.easymock.org</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.easymock.org/License.html">MIT License</a></p></td></tr></table></div></li></ul></li><li>org.apache.felix:org.apache.felix.utils:jar:1.6.0 (compile) <img id="_1033984187" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1908155821', '_1033984187' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1908155821" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Apache Felix Utils</th></tr><tr class="b"><td><p><b>Description: </b>Utility classes for OSGi.</p><p><b>URL: </b><a class="externalLink" href="http://felix.apache.org/org.apache.felix.utils/">http://felix.apache.org/org.apache.felix.utils/</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div><ul><li>org.osgi:org.osgi.compendium:jar:4.2.0 (compile) <img id="_1419665350" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_744251585', '_1419665350' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_744251585" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>org.osgi.compendium</th></tr><tr class="b"><td><p><b>Description: </b>POM was created by Sonatype Nexus</p><p><b>Project License: </b>No project license is defined for this project.</p></td></tr></table></div></li></ul></li><li>org.apache.maven:maven-core:jar:2.0.7 (compile) <img id="_2113561769" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_839113415', '_2113561769' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_839113415" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Core</th></tr><tr class="b"><td><p><b>Description: </b>Maven is a project development management and comprehension tool. Based on the concept of a project object model: builds, dependency management, documentation creation, site publication, and distribution publication are all controlled from the declarative file. Maven can be extended by plugins to utilise a number of other development tools for reporting or the build process.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-core">http://maven.apache.org/maven-core</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div><ul><li>org.apache.maven:maven-settings:jar:2.0.7 (compile) <img id="_610013260" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1901815474', '_610013260' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1901815474" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Local Settings Model</th></tr><tr class="b"><td><p><b>Description: </b>Maven is a project development management and comprehension tool. Based on the concept of a project object model: builds, dependency management, documentation creation, site publication, and distribution publication are all controlled from the declarative file. Maven can be extended by plugins to utilise a number of other development tools for reporting or the build process.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-settings">http://maven.apache.org/maven-settings</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div><ul><li>org.apache.maven:maven-model:jar:2.0.7 (compile) <img id="_1014150685" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1668043405', '_1014150685' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1668043405" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Model</th></tr><tr class="b"><td><p><b>Description: </b>Maven Model</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-model">http://maven.apache.org/maven-model</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9-stable-1 (compile) <img id="_83608398" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_739791519', '_83608398' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_739791519" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Default Plexus Container</th></tr><tr class="b"><td><p><b>Description: </b>There is currently no description associated with this project.</p><p><b>Project License: </b>No project license is defined for this project.</p></td></tr></table></div></li></ul></li><li>org.apache.maven.wagon:wagon-file:jar:1.0-beta-2 (runtime) <img id="_1130055143" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1902660911', '_1130055143' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1902660911" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Wagon File Provider</th></tr><tr class="b"><td><p><b>Description: </b>Wagon that gets and puts artifacts using file system protocol</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/wagon/wagon-providers/wagon-file">http://maven.apache.org/wagon/wagon-providers/wagon-file</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div><ul><li>org.apache.maven.wagon:wagon-provider-api:jar:1.0-beta-2 (runtime) <img id="_1227084972" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1349256119', '_1227084972' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1349256119" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Wagon API</th></tr><tr class="b"><td><p><b>Description: </b>Maven Wagon API that defines the contract between different Wagon implementations</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/wagon/wagon-provider-api">http://maven.apache.org/wagon/wagon-provider-api</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li></ul></li><li>org.apache.maven:maven-plugin-parameter-documenter:jar:2.0.7 (compile) <img id="_650290750" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_606080213', '_650290750' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_606080213" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Plugin Parameter Documenter API</th></tr><tr class="b"><td><p><b>Description: </b>Maven is a project development management and comprehension tool. Based on the concept of a project object model: builds, dependency management, documentation creation, site publication, and distribution publication are all controlled from the declarative file. Maven can be extended by plugins to utilise a number of other development tools for reporting or the build process.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-plugin-parameter-documenter">http://maven.apache.org/maven-plugin-parameter-documenter</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div><ul><li>org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9-stable-1 (compile) <img id="_315211990" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_221634725', '_315211990' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_221634725" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Default Plexus Container</th></tr><tr class="b"><td><p><b>Description: </b>There is currently no description associated with this project.</p><p><b>Project License: </b>No project license is defined for this project.</p></td></tr></table></div></li></ul></li><li>org.apache.maven.wagon:wagon-http-lightweight:jar:1.0-beta-2 (runtime) <img id="_1777759039" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_57228163', '_1777759039' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_57228163" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Wagon Lightweight HTTP Provider</th></tr><tr class="b"><td><p><b>Description: </b>Wagon that gets and puts artifacts through http using standard Java library</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/wagon/wagon-providers/wagon-http-lightweight">http://maven.apache.org/wagon/wagon-providers/wagon-http-lightweight</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div><ul><li>org.apache.maven.wagon:wagon-http-shared:jar:1.0-beta-2 (runtime) <img id="_1009698489" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1989549429', '_1009698489' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1989549429" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Wagon HTTP Shared Library</th></tr><tr class="b"><td><p><b>Description: </b>Shared Library for the wagon-http, and wagon-http-lightweight wagon providers.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/wagon/wagon-providers/wagon-http-shared">http://maven.apache.org/wagon/wagon-providers/wagon-http-shared</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div><ul><li>jtidy:jtidy:jar:4aug2000r7-dev (runtime) <img id="_433529003" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_953886916', '_433529003' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_953886916" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>JTidy</th></tr><tr class="b"><td><p><b>Description: </b>JTidy is a Java port of HTML Tidy, a HTML syntax checker and pretty printer. Like its non-Java cousin, JTidy can be used as a tool for cleaning up malformed and faulty HTML. In addition, JTidy provides a DOM parser for real-world HTML.</p><p><b>URL: </b><a class="externalLink" href="http://jtidy.sourceforge.net">http://jtidy.sourceforge.net</a></p><p><b>Project License: </b><a class="externalLink" href="http://svn.sourceforge.net/viewvc/*checkout*/jtidy/trunk/jtidy/LICENSE.txt?revision=95">Java HTML Tidy License</a></p></td></tr></table></div></li><li>org.apache.maven.wagon:wagon-provider-api:jar:1.0-beta-2 (runtime) <img id="_468702455" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1364237050', '_468702455' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1364237050" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Wagon API</th></tr><tr class="b"><td><p><b>Description: </b>Maven Wagon API that defines the contract between different Wagon implementations</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/wagon/wagon-provider-api">http://maven.apache.org/wagon/wagon-provider-api</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li></ul></li><li>xml-apis:xml-apis:jar:1.0.b2 (runtime) <img id="_519383332" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1772261234', '_519383332' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1772261234" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>XML Commons External Components XML APIs</th></tr><tr class="b"><td><p><b>Description: </b>xml-commons provides an Apache-hosted set of DOM, SAX, and 
     JAXP interfaces for use in other xml-based projects. Our hope is that we 
     can standardize on both a common version and packaging scheme for these 
     critical XML standards interfaces to make the lives of both our developers 
     and users easier. The External Components portion of xml-commons contains 
     interfaces that are defined by external standards organizations. For DOM, 
     that's the W3C; for SAX it's David Megginson and sax.sourceforge.net; for 
-    JAXP it's Sun.</p><p><b>URL: </b><a class="externalLink" href="http://xml.apache.org/commons/#external">http://xml.apache.org/commons/#external</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.apache.maven.wagon:wagon-provider-api:jar:1.0-beta-2 (runtime) <img id="_529014059" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_569551080', '_529014059' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_569551080" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Wagon API</th></tr><tr class="b"><td><p><b>Description: </b>Maven Wagon API that defines the contract between different Wagon implementations</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/wagon/wagon-provider-api">http://maven.apache.org/wagon/wagon-provider-api</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li></ul></li><li>org.apache.maven.reporting:maven-reporting-api:jar:2.0.7 (compile) <img id="_1772316360" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1388774862', '_1772316360' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1388774862" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Reporting API</th></tr><tr class="b"><td><p><b>Description: </b>Maven is a project development management and comprehension tool. Based on the concept of a project object model: builds, dependency management, documentation creation, site publication, and distribution publication are all controlled from the declarative file. Maven can be extended by plugins to utilise a number of other development tools for reporting or the build process.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-reporting/maven-reporting-api">http://maven.apache.org/maven-reporting/maven-reporting-api</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div><ul><li>org.apache.maven.doxia:doxia-sink-api:jar:1.0-alpha-7 (compile) <img id="_641191930" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_98375116', '_641191930' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_98375116" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Doxia Sink API</th></tr><tr class="b"><td><p><b>Description: </b>There is currently no description associated with this project.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/doxia/doxia-sink-api">http://maven.apache.org/doxia/doxia-sink-api</a></p><p><b>Project License: </b>No project license is defined for this project.</p></td></tr></table></div></li></ul></li><li>org.apache.maven:maven-profile:jar:2.0.7 (compile) <img id="_109130331" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_848901081', '_109130331' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_848901081" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Profile Model</th></tr><tr class="b"><td><p><b>Description: </b>Maven is a project development management and comprehension tool. Based on the concept of a project object model: builds, dependency management, documentation creation, site publication, and distribution publication are all controlled from the declarative file. Maven can be extended by plugins to utilise a number of other development tools for reporting or the build process.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-profile">http://maven.apache.org/maven-profile</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div><ul><li>org.apache.maven:maven-model:jar:2.0.7 (compile) <img id="_1715773496" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_956971846', '_1715773496' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_956971846" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Model</th></tr><tr class="b"><td><p><b>Description: </b>Maven Model</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-model">http://maven.apache.org/maven-model</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9-stable-1 (compile) <img id="_987908459" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_445274435', '_987908459' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_445274435" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Default Plexus Container</th></tr><tr class="b"><td><p><b>Description: </b>There is currently no description associated with this project.</p><p><b>Project License: </b>No project license is defined for this project.</p></td></tr></table></div></li></ul></li><li>org.apache.maven:maven-model:jar:2.0.7 (compile) <img id="_474684270" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_982672932', '_474684270' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_982672932" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Model</th></tr><tr class="b"><td><p><b>Description: </b>Maven Model</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-model">http://maven.apache.org/maven-model</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.apache.maven:maven-artifact:jar:2.0.7 (compile) <img id="_977607974" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1493891743', '_977607974' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1493891743" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Artifact</th></tr><tr class="b"><td><p><b>Description: </b>Maven is a project development management and comprehension tool. Based on the concept of a project object model: builds, dependency management, documentation creation, site publication, and distribution publication are all controlled from the declarative file. Maven can be extended by plugins to utilise a number of other development tools for reporting or the build process.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-artifact">http://maven.apache.org/maven-artifact</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.apache.maven.wagon:wagon-provider-api:jar:1.0-beta-2 (compile) <img id="_1861544789" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1045378624', '_1861544789' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1045378624" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Wagon API</th></tr><tr class="b"><td><p><b>Description: </b>Maven Wagon API that defines the contract between different Wagon implementations</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/wagon/wagon-provider-api">http://maven.apache.org/wagon/wagon-provider-api</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9-stable-1 (compile) <img id="_2022442350" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_607803463', '_2022442350' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_607803463" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Default Plexus Container</th></tr><tr class="b"><td><p><b>Description: </b>There is currently no description associated with this project.</p><p><b>Project License: </b>No project license is defined for this project.</p></td></tr></table></div></li><li>org.apache.maven:maven-repository-metadata:jar:2.0.7 (compile) <img id="_289211267" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_754431638', '_289211267' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_754431638" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Repository Metadata Model</th></tr><tr class="b"><td><p><b>Description: </b>Maven Plugin Mapping</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-repository-metadata">http://maven.apache.org/maven-repository-metadata</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.apache.maven:maven-error-diagnostics:jar:2.0.7 (compile) <img id="_1294916163" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_903647721', '_1294916163' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_903647721" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Error Diagnostics</th></tr><tr class="b"><td><p><b>Description: </b>Provides a manager component which will process a given Throwable instance through a set of diagnostic
+    JAXP it's Sun.</p><p><b>URL: </b><a class="externalLink" href="http://xml.apache.org/commons/#external">http://xml.apache.org/commons/#external</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.apache.maven.wagon:wagon-provider-api:jar:1.0-beta-2 (runtime) <img id="_1072421631" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1679607629', '_1072421631' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1679607629" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Wagon API</th></tr><tr class="b"><td><p><b>Description: </b>Maven Wagon API that defines the contract between different Wagon implementations</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/wagon/wagon-provider-api">http://maven.apache.org/wagon/wagon-provider-api</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li></ul></li><li>org.apache.maven.reporting:maven-reporting-api:jar:2.0.7 (compile) <img id="_785394586" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_439955551', '_785394586' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_439955551" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Reporting API</th></tr><tr class="b"><td><p><b>Description: </b>Maven is a project development management and comprehension tool. Based on the concept of a project object model: builds, dependency management, documentation creation, site publication, and distribution publication are all controlled from the declarative file. Maven can be extended by plugins to utilise a number of other development tools for reporting or the build process.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-reporting/maven-reporting-api">http://maven.apache.org/maven-reporting/maven-reporting-api</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.apache.maven:maven-profile:jar:2.0.7 (compile) <img id="_975999339" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1285268786', '_975999339' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1285268786" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Profile Model</th></tr><tr class="b"><td><p><b>Description: </b>Maven is a project development management and comprehension tool. Based on the concept of a project object model: builds, dependency management, documentation creation, site publication, and distribution publication are all controlled from the declarative file. Maven can be extended by plugins to utilise a number of other development tools for reporting or the build process.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-profile">http://maven.apache.org/maven-profile</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div><ul><li>org.apache.maven:maven-model:jar:2.0.7 (compile) <img id="_748488694" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1984470414', '_748488694' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1984470414" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Model</th></tr><tr class="b"><td><p><b>Description: </b>Maven Model</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-model">http://maven.apache.org/maven-model</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9-stable-1 (compile) <img id="_1931355509" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_923434252', '_1931355509' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_923434252" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Default Plexus Container</th></tr><tr class="b"><td><p><b>Description: </b>There is currently no description associated with this project.</p><p><b>Project License: </b>No project license is defined for this project.</p></td></tr></table></div></li></ul></li><li>org.apache.maven:maven-model:jar:2.0.7 (compile) <img id="_720562550" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_116660931', '_720562550' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_116660931" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Model</th></tr><tr class="b"><td><p><b>Description: </b>Maven Model</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-model">http://maven.apache.org/maven-model</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.apache.maven:maven-artifact:jar:2.0.7 (compile) <img id="_1205320307" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1058046394', '_1205320307' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1058046394" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Artifact</th></tr><tr class="b"><td><p><b>Description: </b>Maven is a project development management and comprehension tool. Based on the concept of a project object model: builds, dependency management, documentation creation, site publication, and distribution publication are all controlled from the declarative file. Maven can be extended by plugins to utilise a number of other development tools for reporting or the build process.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-artifact">http://maven.apache.org/maven-artifact</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.apache.maven.wagon:wagon-provider-api:jar:1.0-beta-2 (compile) <img id="_1401780027" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_967352452', '_1401780027' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_967352452" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Wagon API</th></tr><tr class="b"><td><p><b>Description: </b>Maven Wagon API that defines the contract between different Wagon implementations</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/wagon/wagon-provider-api">http://maven.apache.org/wagon/wagon-provider-api</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9-stable-1 (compile) <img id="_861289961" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1063486742', '_861289961' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1063486742" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Default Plexus Container</th></tr><tr class="b"><td><p><b>Description: </b>There is currently no description associated with this project.</p><p><b>Project License: </b>No project license is defined for this project.</p></td></tr></table></div></li><li>org.apache.maven:maven-repository-metadata:jar:2.0.7 (compile) <img id="_918434445" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1336520931', '_918434445' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1336520931" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Repository Metadata Model</th></tr><tr class="b"><td><p><b>Description: </b>Maven Plugin Mapping</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-repository-metadata">http://maven.apache.org/maven-repository-metadata</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.apache.maven:maven-error-diagnostics:jar:2.0.7 (compile) <img id="_763005588" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1399183699', '_763005588' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1399183699" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Error Diagnostics</th></tr><tr class="b"><td><p><b>Description: </b>Provides a manager component which will process a given Throwable instance through a set of diagnostic
     sub-components, and return a String message with user-friendly information about the error and possibly
-    how to fix it.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-error-diagnostics">http://maven.apache.org/maven-error-diagnostics</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div><ul><li>org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9-stable-1 (compile) <img id="_280312999" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_12857215', '_280312999' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_12857215" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Default Plexus Container</th></tr><tr class="b"><td><p><b>Description: </b>There is currently no description associated with this project.</p><p><b>Project License: </b>No project license is defined for this project.</p></td></tr></table></div></li></ul></li><li>org.apache.maven:maven-project:jar:2.0.7 (compile) <img id="_547758798" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_2027560698', '_547758798' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_2027560698" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Project Builder</th></tr><tr class="b"><td><p><b>Description: </b>This library is used to not only read Maven project object model files, but to assemble inheritence
-    and to retrieve remote models as required.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-project">http://maven.apache.org/maven-project</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div><ul><li>org.apache.maven:maven-settings:jar:2.0.7 (compile) <img id="_788307588" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_922933610', '_788307588' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_922933610" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Local Settings Model</th></tr><tr class="b"><td><p><b>Description: </b>Maven is a project development management and comprehension tool. Based on the concept of a project object model: builds, dependency management, documentation creation, site publication, and distribution publication are all controlled from the declarative file. Maven can be extended by plugins to utilise a number of other development tools for reporting or the build process.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-settings">http://maven.apache.org/maven-settings</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.apache.maven:maven-profile:jar:2.0.7 (compile) <img id="_636979154" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1680914308', '_636979154' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1680914308" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Profile Model</th></tr><tr class="b"><td><p><b>Description: </b>Maven is a project development management and comprehension tool. Based on the concept of a project object model: builds, dependency management, documentation creation, site publication, and distribution publication are all controlled from the declarative file. Maven can be extended by plugins to utilise a number of other development tools for reporting or the build process.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-profile">http://maven.apache.org/maven-profile</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.apache.maven:maven-model:jar:2.0.7 (compile) <img id="_111383492" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_2086624771', '_111383492' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_2086624771" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Model</th></tr><tr class="b"><td><p><b>Description: </b>Maven Model</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-model">http://maven.apache.org/maven-model</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.apache.maven:maven-artifact-manager:jar:2.0.7 (compile) <img id="_106830425" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1474420893', '_106830425' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1474420893" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Artifact Manager</th></tr><tr class="b"><td><p><b>Description: </b>Maven is a project development management and comprehension tool. Based on the concept of a project object model: builds, dependency management, documentation creation, site publication, and distribution publication are all controlled from the declarative file. Maven can be extended by plugins to utilise a number of other development tools for reporting or the build process.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-artifact-manager">http://maven.apache.org/maven-artifact-manager</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.apache.maven:maven-plugin-registry:jar:2.0.7 (compile) <img id="_1040994606" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_571778001', '_1040994606' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_571778001" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Plugin Registry Model</th></tr><tr class="b"><td><p><b>Description: </b>Maven is a project development management and comprehension tool. Based on the concept of a project object model: builds, dependency management, documentation creation, site publication, and distribution publication are all controlled from the declarative file. Maven can be extended by plugins to utilise a number of other development tools for reporting or the build process.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-plugin-registry">http://maven.apache.org/maven-plugin-registry</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div><ul><li>org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9-stable-1 (compile) <img id="_2010589502" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_855959801', '_2010589502' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_855959801" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Default Plexus Container</th></tr><tr class="b"><td><p><b>Description: </b>There is currently no description associated with this project.</p><p><b>Project License: </b>No project license is defined for this project.</p></td></tr></table></div></li></ul></li><li>org.apache.maven:maven-artifact:jar:2.0.7 (compile) <img id="_1994257972" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_215061597', '_1994257972' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_215061597" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Artifact</th></tr><tr class="b"><td><p><b>Description: </b>Maven is a project development management and comprehension tool. Based on the concept of a project object model: builds, dependency management, documentation creation, site publication, and distribution publication are all controlled from the declarative file. Maven can be extended by plugins to utilise a number of other development tools for reporting or the build process.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-artifact">http://maven.apache.org/maven-artifact</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9-stable-1 (compile) <img id="_2112712797" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_2025902409', '_2112712797' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_2025902409" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Default Plexus Container</th></tr><tr class="b"><td><p><b>Description: </b>There is currently no description associated with this project.</p><p><b>Project License: </b>No project license is defined for this project.</p></td></tr></table></div></li></ul></li><li>commons-cli:commons-cli:jar:1.0 (compile) <img id="_129665817" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_287216192', '_129665817' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_287216192" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>CLI</th></tr><tr class="b"><td><p><b>Description: </b>Commons CLI provides a simple API for working with the command line arguments and options.</p><p><b>Project License: </b>No project license is defined for this project.</p></td></tr></table></div></li><li>org.apache.maven:maven-plugin-api:jar:2.0.7 (compile) <img id="_1309747463" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1717459715', '_1309747463' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1717459715" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Plugin API</th></tr><tr class="b"><td><p><b>Description: </b>Maven is a project development management and comprehension tool. Based on the concept of a project object model: builds, dependency management, documentation creation, site publication, and distribution publication are all controlled from the declarative file. Maven can be extended by plugins to utilise a number of other development tools for reporting or the build process.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-plugin-api">http://maven.apache.org/maven-plugin-api</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.apache.maven.wagon:wagon-ssh-external:jar:1.0-beta-2 (runtime) <img id="_511012210" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_144765269', '_511012210' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_144765269" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Wagon SSH External Provider</th></tr><tr class="b"><td><p><b>Description: </b>Wagon that gets and puts artifacts using SSH protocol with a preinstalled SSH client</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/wagon/wagon-providers/wagon-ssh-external">http://maven.apache.org/wagon/wagon-providers/wagon-ssh-external</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div><ul><li>org.apache.maven.wagon:wagon-ssh-common:jar:1.0-beta-2 (runtime) <img id="_1038786791" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_567712461', '_1038786791' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_567712461" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Wagon SSH Common Library</th></tr><tr class="b"><td><p><b>Description: </b>Tools to manage artifacts and deployment</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/wagon/wagon-providers/wagon-ssh-common">http://maven.apache.org/wagon/wagon-providers/wagon-ssh-common</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div><ul><li>org.codehaus.plexus:plexus-interactivity-api:jar:1.0-alpha-4 (runtime) <img id="_406929046" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_558736528', '_406929046' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_558736528" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Plexus Default Interactivity Handler</th></tr><tr class="b"><td><p><b>Description: </b>There is currently no description associated with this project.</p><p><b>Project License: </b>No project license is defined for this project.</p></td></tr></table></div></li><li>org.apache.maven.wagon:wagon-provider-api:jar:1.0-beta-2 (runtime) <img id="_534935740" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1005487344', '_534935740' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1005487344" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Wagon API</th></tr><tr class="b"><td><p><b>Description: </b>Maven Wagon API that defines the contract between different Wagon implementations</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/wagon/wagon-provider-api">http://maven.apache.org/wagon/wagon-provider-api</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li></ul></li><li>org.apache.maven.wagon:wagon-provider-api:jar:1.0-beta-2 (runtime) <img id="_437989524" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1188674071', '_437989524' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1188674071" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Wagon API</th></tr><tr class="b"><td><p><b>Description: </b>Maven Wagon API that defines the contract between different Wagon implementations</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/wagon/wagon-provider-api">http://maven.apache.org/wagon/wagon-provider-api</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li></ul></li><li>org.apache.maven:maven-plugin-descriptor:jar:2.0.7 (compile) <img id="_1866475396" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1189911030', '_1866475396' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1189911030" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Plugin Descriptor Model</th></tr><tr class="b"><td><p><b>Description: </b>Maven is a project development management and comprehension tool. Based on the concept of a project object model: builds, dependency management, documentation creation, site publication, and distribution publication are all controlled from the declarative file. Maven can be extended by plugins to utilise a number of other development tools for reporting or the build process.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-plugin-descriptor">http://maven.apache.org/maven-plugin-descriptor</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div><ul><li>org.apache.maven:maven-plugin-api:jar:2.0.7 (compile) <img id="_686055756" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_383736426', '_686055756' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_383736426" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Plugin API</th></tr><tr class="b"><td><p><b>Description: </b>Maven is a project development management and comprehension tool. Based on the concept of a project object model: builds, dependency management, documentation creation, site publication, and distribution publication are all controlled from the declarative file. Maven can be extended by plugins to utilise a number of other development tools for reporting or the build process.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-plugin-api">http://maven.apache.org/maven-plugin-api</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.apache.maven:maven-artifact:jar:2.0.7 (compile) <img id="_100314459" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1606420123', '_100314459' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1606420123" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Artifact</th></tr><tr class="b"><td><p><b>Description: </b>Maven is a project development management and comprehension tool. Based on the concept of a project object model: builds, dependency management, documentation creation, site publication, and distribution publication are all controlled from the declarative file. Maven can be extended by plugins to utilise a number of other development tools for reporting or the build process.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-artifact">http://maven.apache.org/maven-artifact</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9-stable-1 (compile) <img id="_1137691367" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1750993047', '_1137691367' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1750993047" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Default Plexus Container</th></tr><tr class="b"><td><p><b>Description: </b>There is currently no description associated with this project.</p><p><b>Project License: </b>No project license is defined for this project.</p></td></tr></table></div></li></ul></li><li>org.codehaus.plexus:plexus-interactivity-api:jar:1.0-alpha-4 (compile) <img id="_176763988" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1515360673', '_176763988' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1515360673" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Plexus Default Interactivity Handler</th></tr><tr class="b"><td><p><b>Description: </b>There is currently no description associated with this project.</p><p><b>Project License: </b>No project license is defined for this project.</p></td></tr></table></div></li><li>org.apache.maven:maven-artifact-manager:jar:2.0.7 (compile) <img id="_1408596894" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1480603461', '_1408596894' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1480603461" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Artifact Manager</th></tr><tr class="b"><td><p><b>Description: </b>Maven is a project development management and comprehension tool. Based on the concept of a project object model: builds, dependency management, documentation creation, site publication, and distribution publication are all controlled from the declarative file. Maven can be extended by plugins to utilise a number of other development tools for reporting or the build process.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-artifact-manager">http://maven.apache.org/maven-artifact-manager</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div><ul><li>org.apache.maven:maven-repository-metadata:jar:2.0.7 (compile) <img id="_546753716" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_779483732', '_546753716' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_779483732" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Repository Metadata Model</th></tr><tr class="b"><td><p><b>Description: </b>Maven Plugin Mapping</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-repository-metadata">http://maven.apache.org/maven-repository-metadata</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.apache.maven:maven-artifact:jar:2.0.7 (compile) <img id="_515667552" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_478822775', '_515667552' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_478822775" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Artifact</th></tr><tr class="b"><td><p><b>Description: </b>Maven is a project development management and comprehension tool. Based on the concept of a project object model: builds, dependency management, documentation creation, site publication, and distribution publication are all controlled from the declarative file. Maven can be extended by plugins to utilise a number of other development tools for reporting or the build process.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-artifact">http://maven.apache.org/maven-artifact</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9-stable-1 (compile) <img id="_1518286694" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1398421450', '_1518286694' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1398421450" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Default Plexus Container</th></tr><tr class="b"><td><p><b>Description: </b>There is currently no description associated with this project.</p><p><b>Project License: </b>No project license is defined for this project.</p></td></tr></table></div></li><li>org.apache.maven.wagon:wagon-provider-api:jar:1.0-beta-2 (compile) <img id="_767356445" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1688915920', '_767356445' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1688915920" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Wagon API</th></tr><tr class="b"><td><p><b>Description: </b>Maven Wagon API that defines the contract between different Wagon implementations</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/wagon/wagon-provider-api">http://maven.apache.org/wagon/wagon-provider-api</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li></ul></li><li>org.apache.maven:maven-monitor:jar:2.0.7 (compile) <img id="_1302256484" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_26275337', '_1302256484' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_26275337" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Monitor</th></tr><tr class="b"><td><p><b>Description: </b>Maven is a project development management and comprehension tool. Based on the concept of a project object model: builds, dependency management, documentation creation, site publication, and distribution publication are all controlled from the declarative file. Maven can be extended by plugins to utilise a number of other development tools for reporting or the build process.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-monitor">http://maven.apache.org/maven-monitor</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.apache.maven.wagon:wagon-ssh:jar:1.0-beta-2 (runtime) <img id="_2143717685" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_262811505', '_2143717685' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_262811505" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Wagon SSH Provider</th></tr><tr class="b"><td><p><b>Description: </b>Tools to manage artifacts and deployment</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/wagon/wagon-providers/wagon-ssh">http://maven.apache.org/wagon/wagon-providers/wagon-ssh</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div><ul><li>com.jcraft:jsch:jar:0.1.27 (runtime) <img id="_800460267" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_824416429', '_800460267' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_824416429" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>JSch</th></tr><tr class="b"><td><p><b>Description: </b>JSch is a pure Java implementation of SSH2</p><p><b>URL: </b><a class="externalLink" href="http://www.jcraft.com/jsch/">http://www.jcraft.com/jsch/</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.jcraft.com/jsch/LICENSE.txt">BSD</a></p></td></tr></table></div></li><li>org.codehaus.plexus:plexus-interactivity-api:jar:1.0-alpha-4 (runtime) <img id="_1473309558" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1743055212', '_1473309558' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1743055212" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Plexus Default Interactivity Handler</th></tr><tr class="b"><td><p><b>Description: </b>There is currently no description associated with this project.</p><p><b>Project License: </b>No project license is defined for this project.</p></td></tr></table></div></li><li>org.apache.maven.wagon:wagon-ssh-common:jar:1.0-beta-2 (runtime) <img id="_792179736" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1070293779', '_792179736' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1070293779" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Wagon SSH Common Library</th></tr><tr class="b"><td><p><b>Description: </b>Tools to manage artifacts and deployment</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/wagon/wagon-providers/wagon-ssh-common">http://maven.apache.org/wagon/wagon-providers/wagon-ssh-common</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.apache.maven.wagon:wagon-provider-api:jar:1.0-beta-2 (runtime) <img id="_463542555" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1461965533', '_463542555' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1461965533" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Wagon API</th></tr><tr class="b"><td><p><b>Description: </b>Maven Wagon API that defines the contract between different Wagon implementations</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/wagon/wagon-provider-api">http://maven.apache.org/wagon/wagon-provider-api</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li></ul></li><li>classworlds:classworlds:jar:1.1 (compile) <img id="_1174506872" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_2090988565', '_1174506872' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_2090988565" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>classworlds</th></tr><tr class="b"><td><p><b>Description: </b>There is currently no description associated with this project.</p><p><b>URL: </b><a class="externalLink" href="http://classworlds.codehaus.org/">http://classworlds.codehaus.org/</a></p><p><b>Project License: </b>No project license is defined for this project.</p></td></tr></table></div></li></ul></li><li>org.apache.maven:maven-archiver:jar:2.5 (compile) <img id="_605294658" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_813229160', '_605294658' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_813229160" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Archiver</th></tr><tr class="b"><td><p><b>Description: </b>Provides utility methods for creating JARs and other archive files from a Maven project.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/shared/maven-archiver/">http://maven.apache.org/shared/maven-archiver/</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div><ul><li>org.codehaus.plexus:plexus-archiver:jar:2.1 (compile) <img id="_917225200" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_365528086', '_917225200' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_365528086" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Plexus Archiver Component</th></tr><tr class="b"><td><p><b>Description: </b>There is currently no description associated with this project.</p><p><b>URL: </b><a class="externalLink" href="http://forge.sonatype.com/spice-parent/plexus-archiver/">http://forge.sonatype.com/spice-parent/plexus-archiver/</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a></p></td></tr></table></div><ul><li>org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9-stable-1 (compile) <img id="_1054512350" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1381700762', '_1054512350' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1381700762" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Default Plexus Container</th></tr><tr class="b"><td><p><b>Description: </b>There is currently no description associated with this project.</p><p><b>Project License: </b>No project license is defined for this project.</p></td></tr></table></div></li><li>org.codehaus.plexus:plexus-io:jar:2.0.2 (compile) <img id="_1189039070" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1771473860', '_1189039070' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1771473860" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Plexus IO Components</th></tr><tr class="b"><td><p><b>Description: </b>The Plexus project provides a full software stack for creating and executing software projects.</p><p><b>URL: </b><a class="externalLink" href="http://plexus.codehaus.org/plexus-components/plexus-io">http://plexus.codehaus.org/plexus-components/plexus-io</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li></ul></li><li>org.codehaus.plexus:plexus-interpolation:jar:1.15 (compile) <img id="_1852268376" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1433456792', '_1852268376' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1433456792" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Plexus Interpolation API</th></tr><tr class="b"><td><p><b>Description: </b>The Plexus project provides a full software stack for creating and executing software projects.</p><p><b>URL: </b><a class="externalLink" href="http://plexus.codehaus.org/plexus-interpolation/">http://plexus.codehaus.org/plexus-interpolation/</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li></ul></li><li>org.apache.maven.shared:maven-dependency-tree:jar:2.1 (compile) <img id="_1094491898" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1527098318', '_1094491898' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1527098318" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Dependency Tree</th></tr><tr class="b"><td><p><b>Description: </b>A tree-based API for resolution of Maven project dependencies</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/shared/maven-dependency-tree/">http://maven.apache.org/shared/maven-dependency-tree/</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div><ul><li>org.codehaus.plexus:plexus-component-annotations:jar:1.5.5 (compile) <img id="_403584273" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_749195466', '_403584273' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_749195466" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Plexus :: Component Annotations</th></tr><tr class="b"><td><p><b>Description: </b>Plexus Component &quot;Java 5&quot; Annotations, to describe plexus components properties in java sources with
-    standard annotations instead of javadoc annotations.</p><p><b>URL: </b><a class="externalLink" href="http://plexus.codehaus.org/plexus-containers/plexus-component-annotations/">http://plexus.codehaus.org/plexus-containers/plexus-component-annotations/</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.eclipse.aether:aether-util:jar:0.9.0.M2 (compile) <img id="_92082153" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1778626355', '_92082153' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1778626355" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Aether Utilities</th></tr><tr class="b"><td><p><b>Description: </b>A collection of utility classes to ease usage of the repository system.</p><p><b>URL: </b><a class="externalLink" href="http://www.eclipse.org/aether/aether-util/">http://www.eclipse.org/aether/aether-util/</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.eclipse.org/legal/epl-v10.html">Eclipse Public License, Version 1.0</a></p></td></tr></table></div></li></ul></li><li>org.codehaus.plexus:plexus-utils:jar:3.0.10 (compile) <img id="_2088751962" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_693282372', '_2088751962' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_693282372" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Plexus Common Utilities</th></tr><tr class="b"><td><p><b>Description: </b>A collection of various utility classes to ease working with strings, files, command lines, XML and
-    more.</p><p><b>URL: </b><a class="externalLink" href="http://plexus.codehaus.org/plexus-utils">http://plexus.codehaus.org/plexus-utils</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.apache.maven.shared:maven-plugin-testing-harness:jar:1.1 (test) <img id="_592109468" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_177848473', '_592109468' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_177848473" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Plugin Testing Mechanism</th></tr><tr class="b"><td><p><b>Description: </b>Maven shared components</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/shared/maven-plugin-testing-harness/">http://maven.apache.org/shared/maven-plugin-testing-harness/</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>junit:junit:jar:4.0 (test) <img id="_1762745603" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1905810110', '_1762745603' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1905810110" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>junit</th></tr><tr class="b"><td><p><b>Description: </b>There is currently no description associated with this project.</p><p><b>URL: </b><a class="externalLink" href="http://junit.org">http://junit.org</a></p><p><b>Project License: </b>No project license is defined for this project.</p></td></tr></table></div></li><li>org.easymock:easymock:jar:2.4 (test) <img id="_1359855971" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1826351610', '_1359855971' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1826351610" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>EasyMock</th></tr><tr class="b"><td><p><b>Description: </b>EasyMock provides an easy way to create Mock Objects for interfaces by generating them on the fly using Java's proxy mechanism</p><p><b>URL: </b><a class="externalLink" href="http://www.easymock.org">http://www.easymock.org</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.easymock.org/License.html">MIT License</a></p></td></tr></table></div></li><li>org.mockito:mockito-all:jar:1.7 (test) <img id="_229181996" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_778292674', '_229181996' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_778292674" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Mockito</th></tr><tr class="b"><td><p><b>Description: </b>Mock objects library for java</p><p><b>URL: </b><a class="externalLink" href="http://www.mockito.org">http://www.mockito.org</a></p><p><b>Project License: </b><a class="externalLink" href="http://code.google.com/p/mockito/wiki/License">The MIT License</a></p></td></tr></table></div></li></ul></li></ul></div></div><a name="Licenses"></a><div class="section"><h2>Licenses<a name="Licenses"></a></h2><p><b>Apache Software License 2.0: </b>A Swiss Army Knife for OSGi</p><p><b>Java HTML Tidy License: </b>JTidy</p><p><b>Unknown: </b>CLI, Default Plexus Container, Doxia Sink API, Plexus Default Interactivity Handler, classworlds, junit, org.osgi.core</p><p><b>BSD: </b>JSch</p><p><b>Apache License, Version 2.0: </b>Plexus Archiver Component</p><p><b>Eclipse Public License, Version 1.0: </b>Aether Utilities</p><p><b>MIT License: </b>EasyMock</p><p><b>The Apache Software License, Version 2.0: </b>Apache Felix Bundle Repository, Maven Archiver, Maven Artifact, Maven Artifact Manager, Maven Bundle Plugin, Maven Core, Maven Dependency Tree, Maven Error Diagnostics, Maven Local Settings Model, Maven Model, Maven Monitor, Maven Plugin API, Maven Plugin Descriptor Model, Maven Plugin Parameter Documenter API, Maven Plugin Registry Model, Maven Plugin Testing Mechanism, Maven Profile Model, Maven Project Builder, Maven Reporting API, Maven Repository Metadata Model, Maven Wagon API, Maven Wagon File Provider, Maven Wagon HTTP Shared Library, Maven Wagon Lightweight HTTP Provider, Maven Wagon SSH Common Library, Maven Wagon SSH External Provider, Maven Wagon SSH Provider, Plexus :: Component Annotations, Plexus Common Utilities, Plexus IO Components, Plexus Interpolation API, XML Commons External Components XML APIs</p><p><b>The MIT License: </b>Mockito</p></div><a name="Dependency_File_Details"></a><div class="section"><h2>Dependency File Details<a name="Dependency_File_Details"></a></h2><table border="0" class="bodyTable"><tr class="a"><th>Filename</th><th>Size</th><th>Entries</th><th>Classes</th><th>Packages</th><th>JDK Rev</th><th>Debug</th></tr><tr class="b"><td>bndlib-2.1.0.jar</td><td>1.32 MB</td><td>1,111</td><td>462</td><td>79</td><td>1.5</td><td>debug</td></tr><tr class="a"><td>classworlds-1.1.jar</td><td>36.97 kB</td><td>33</td><td>23</td><td>3</td><td>1.3</td><td>debug</td></tr><tr class="b"><td>jsch-0.1.27.jar</td><td>119.15 kB</td><td>97</td><td>94</td><td>3</td><td>1.2</td><td>release</td></tr><tr class="a"><td>commons-cli-1.0.jar</td><td>29.41 kB</td><td>27</td><td>20</td><td>1</td><td>1.1</td><td>debug</td></tr><tr class="b"><td>jtidy-4aug2000r7-dev.jar</td><td>134.60 kB</td><td>129</td><td>119</td><td>3</td><td>1.1</td><td>release</td></tr><tr class="a"><td>junit-4.0.jar</td><td>103.13 kB</td><td>119</td><td>92</td><td>11</td><td>1.5</td><td>debug</td></tr><tr class="b"><td>org.apache.felix.bundlerepository-1.6.6.jar</td><td>164.33 kB</td><td>112</td><td>84</td><td>11</td><td>1.4</td><td>debug</td></tr><tr class="a"><td>maven-archiver-2.5.jar</td><td>21.30 kB</td><td>19</td><td>5</td><td>1</td><td>1.5</td><td>debug</td></tr><tr class="b"><td>maven-artifact-2.0.7.jar</td><td>85.80 kB</td><td>106</td><td>77</td><td>15</td><td>1.1</td><td>debug</td></tr><tr class="a"><td>maven-artifact-manager-2.0.7.jar</td><td>55.18 kB</td><td>46</td><td>24</td><td>7</td><td>1.1</td><td>debug</td></tr><tr class="b"><td>maven-core-2.0.7.jar</td><td>149.30 kB</td><td>108</td><td>67</td><td>13</td><td>1.1</td><td>debug</td></tr><tr class="a"><td>maven-error-diagnostics-2.0.7.jar</td><td>13.29 kB</td><td>22</td><td>6</td><td>1</td><td>1.1</td><td>debug</td></tr><tr class="b"><td>maven-model-2.0.7.jar</td><td>84.41 kB</td><td>60</td><td>45</td><td>2</td><td>1.1</td><td>debug</td></tr><tr class="a"><td>maven-monitor-2.0.7.jar</td><td>10.00 kB</td><td>19</td><td>5</td><td>1</td><td>1.1</td><td>debug</td></tr><tr class="b"><td>maven-plugin-api-2.0.7.jar</td><td>12.56 kB</td><td>23</td><td>9</td><td>2</td><td>1.1</td><td>debug</td></tr><tr class="a"><td>maven-plugin-descriptor-2.0.7.jar</td><td>36.01 kB</td><td>32</td><td>15</td><td>3</td><td>1.1</td><td>debug</td></tr><tr class="b"><td>maven-plugin-parameter-documenter-2.0.7.jar</td><td>20.27 kB</td><td>20</td><td>4</td><td>2</td><td>1.1</td><td>debug</td></tr><tr class="a"><td>maven-plugin-registry-2.0.7.jar</td><td>28.25 kB</td><td>28</td><td>10</td><td>2</td><td>1.1</td><td>debug</td></tr><tr class="b"><td>maven-profile-2.0.7.jar</td><td>34.42 kB</td><td>33</td><td>16</td><td>2</td><td>1.1</td><td>debug</td></tr><tr class="a"><td>maven-project-2.0.7.jar</td><td>113.81 kB</td><td>76</td><td>51</td><td>10</td><td>1.1</td><td>debug</td></tr><tr class="b"><td>maven-repository-metadata-2.0.7.jar</td><td>23.90 kB</td><td>23</td><td>6</td><td>2</td><td>1.1</td><td>debug</td></tr><tr class="a"><td>maven-settings-2.0.7.jar</td><td>47.96 kB</td><td>38</td><td>21</td><td>2</td><td>1.1</td><td>debug</td></tr><tr class="b"><td>doxia-sink-api-1.0-alpha-7.jar</td><td>5.80 kB</td><td>19</td><td>3</td><td>2</td><td>1.1</td><td>debug</td></tr><tr class="a"><td>maven-reporting-api-2.0.7.jar</td><td>9.71 kB</td><td>18</td><td>4</td><td>1</td><td>1.1</td><td>debug</td></tr><tr class="b"><td>maven-dependency-tree-2.1.jar</td><td>58.55 kB</td><td>63</td><td>39</td><td>7</td><td>1.5</td><td>debug</td></tr><tr class="a"><td>maven-plugin-testing-harness-1.1.jar</td><td>31.73 kB</td><td>28</td><td>11</td><td>2</td><td>1.1</td><td>debug</td></tr><tr class="b"><td>wagon-file-1.0-beta-2.jar</td><td>9.71 kB</td><td>18</td><td>1</td><td>1</td><td>1.1</td><td>debug</td></tr><tr class="a"><td>wagon-http-lightweight-1.0-beta-2.jar</td><td>12.03 kB</td><td>19</td><td>2</td><td>1</td><td>1.1</td><td>debug</td></tr><tr class="b"><td>wagon-http-shared-1.0-beta-2.jar</td><td>9.34 kB</td><td>17</td><td>2</td><td>1</td><td>1.1</td><td>debug</td></tr><tr class="a"><td>wagon-provider-api-1.0-beta-2.jar</td><td>45.24 kB</td><td>57</td><td>37</td><td>8</td><td>1.1</td><td>debug</td></tr><tr class="b"><td>wagon-ssh-1.0-beta-2.jar</td><td>23.05 kB</td><td>26</td><td>7</td><td>2</td><td>1.1</td><td>debug</td></tr><tr class="a"><td>wagon-ssh-common-1.0-beta-2.jar</td><td>24.61 kB</td><td>37</td><td>18</td><td>3</td><td>1.1</td><td>debug</td></tr><tr class="b"><td>wagon-ssh-external-1.0-beta-2.jar</td><td>12.27 kB</td><td>19</td><td>1</td><td>1</td><td>1.1</td><td>debug</td></tr><tr class="a"><td>plexus-archiver-2.1.jar</td><td>180.12 kB</td><td>137</td><td>112</td><td>12</td><td>1.5</td><td>debug</td></tr><tr class="b"><td>plexus-component-annotations-1.5.5.jar</td><td>4.11 kB</td><td>15</td><td>3</td><td>1</td><td>1.5</td><td>release</td></tr><tr class="a"><td>plexus-container-default-1.0-alpha-9-stable-1.jar</td><td>189.63 kB</td><td>215</td><td>175</td><td>28</td><td>1.1</td><td>debug</td></tr><tr class="b"><td>plexus-interactivity-api-1.0-alpha-4.jar</td><td>13.09 kB</td><td>25</td><td>11</td><td>1</td><td>1.1</td><td>debug</td></tr><tr class="a"><td>plexus-interpolation-1.15.jar</td><td>59.06 kB</td><td>60</td><td>44</td><td>6</td><td>1.5</td><td>debug</td></tr><tr class="b"><td>plexus-io-2.0.2.jar</td><td>56.90 kB</td><td>62</td><td>43</td><td>5</td><td>1.5</td><td>debug</td></tr><tr class="a"><td>plexus-utils-3.0.10.jar</td><td>225.47 kB</td><td>127</td><td>102</td><td>9</td><td>1.5</td><td>debug</td></tr><tr class="b"><td>easymock-2.4.jar</td><td>79.23 kB</td><td>83</td><td>71</td><td>3</td><td>1.5</td><td>debug</td></tr><tr class="a"><td>aether-util-0.9.0.M2.jar</td><td>130.46 kB</td><td>118</td><td>93</td><td>13</td><td>1.5</td><td>debug</td></tr><tr class="b"><td>mockito-all-1.7.jar</td><td>943.04 kB</td><td>846</td><td>469</td><td>48</td><td>1.5</td><td>debug</td></tr><tr class="a"><td>org.osgi.core-4.2.0.jar</td><td>241.14 kB</td><td>180</td><td>68</td><td>8</td><td>1.2</td><td>debug</td></tr><tr class="b"><td>xml-apis-1.0.b2.jar</td><td>106.76 kB</td><td>217</td><td>184</td><td>17</td><td>1.2</td><td>release</td></tr><tr class="a"><th>Total</th><th>Size</th><th>Entries</th><th>Classes</th><th>Packages</th><th>JDK Rev</th><th>Debug</th></tr><tr class="b"><td>45</td><td>5.03 MB</td><td>4,687</td><td>2,755</td><td>356</td><td>1.5</td><td>41</td></tr><tr class="a"><td>compile: 32</td><td>compile: 3.46 MB</td><td>compile: 3,032</td><td>compile: 1,684</td><td>compile: 260</td><td>-</td><td>compile: 31</td></tr><tr class="b"><td>test: 4</td><td>test: 1.13 MB</td><td>test: 1,076</td><td>test: 643</td><td>test: 64</td><td>-</td><td>test: 4</td></tr><tr class="a"><td>runtime: 9</td><td>runtime: 451.54 kB</td><td>runtime: 579</td><td>runtime: 428</td><td>runtime: 32</td><td>-</td><td>runtime: 6</td></tr></table></div><a name="Dependency_Repository_Locations"></a><div class="section"><h2>Dependency Repository Locations<a name="Dependency_Repository_Locations"></a></h2><table border="0" class="bodyTable"><tr class="a"><th>Repo ID</th><th>URL</th><th>Release</th><th>Snapshot</th><th>Blacklisted</th></tr><tr class="b"><td>nexus</td><td><a class="externalLink" href="https://repository.sonatype.org/content/groups/sonatype-grid">https://repository.sonatype.org/content/groups/sonatype-grid</a></td><td>Yes</td><td>-</td><td>Yes</td></tr></table><p>Repository locations for each of the Dependencies.</p><table border="0" class="bodyTable"><tr class="a"><th>Artifact</th></tr><tr class="b"><td>biz.aQute.bnd:bndlib:jar:2.1.0</td></tr><tr class="a"><td>classworlds:classworlds:jar:1.1</td></tr><tr class="b"><td>com.jcraft:jsch:jar:0.1.27</td></tr><tr class="a"><td>commons-cli:commons-cli:jar:1.0</td></tr><tr class="b"><td>jtidy:jtidy:jar:4aug2000r7-dev</td></tr><tr class="a"><td>junit:junit:jar:4.0</td></tr><tr class="b"><td>org.apache.felix:org.apache.felix.bundlerepository:jar:1.6.6</td></tr><tr class="a"><td>org.apache.maven:maven-archiver:jar:2.5</td></tr><tr class="b"><td>org.apache.maven:maven-artifact:jar:2.0.7</td></tr><tr class="a"><td>org.apache.maven:maven-artifact-manager:jar:2.0.7</td></tr><tr class="b"><td>org.apache.maven:maven-core:jar:2.0.7</td></tr><tr class="a"><td>org.apache.maven:maven-error-diagnostics:jar:2.0.7</td></tr><tr class="b"><td>org.apache.maven:maven-model:jar:2.0.7</td></tr><tr class="a"><td>org.apache.maven:maven-monitor:jar:2.0.7</td></tr><tr class="b"><td>org.apache.maven:maven-plugin-api:jar:2.0.7</td></tr><tr class="a"><td>org.apache.maven:maven-plugin-descriptor:jar:2.0.7</td></tr><tr class="b"><td>org.apache.maven:maven-plugin-parameter-documenter:jar:2.0.7</td></tr><tr class="a"><td>org.apache.maven:maven-plugin-registry:jar:2.0.7</td></tr><tr class="b"><td>org.apache.maven:maven-profile:jar:2.0.7</td></tr><tr class="a"><td>org.apache.maven:maven-project:jar:2.0.7</td></tr><tr class="b"><td>org.apache.maven:maven-repository-metadata:jar:2.0.7</td></tr><tr class="a"><td>org.apache.maven:maven-settings:jar:2.0.7</td></tr><tr class="b"><td>org.apache.maven.doxia:doxia-sink-api:jar:1.0-alpha-7</td></tr><tr class="a"><td>org.apache.maven.reporting:maven-reporting-api:jar:2.0.7</td></tr><tr class="b"><td>org.apache.maven.shared:maven-dependency-tree:jar:2.1</td></tr><tr class="a"><td>org.apache.maven.shared:maven-plugin-testing-harness:jar:1.1</td></tr><tr class="b"><td>org.apache.maven.wagon:wagon-file:jar:1.0-beta-2</td></tr><tr class="a"><td>org.apache.maven.wagon:wagon-http-lightweight:jar:1.0-beta-2</td></tr><tr class="b"><td>org.apache.maven.wagon:wagon-http-shared:jar:1.0-beta-2</td></tr><tr class="a"><td>org.apache.maven.wagon:wagon-provider-api:jar:1.0-beta-2</td></tr><tr class="b"><td>org.apache.maven.wagon:wagon-ssh:jar:1.0-beta-2</td></tr><tr class="a"><td>org.apache.maven.wagon:wagon-ssh-common:jar:1.0-beta-2</td></tr><tr class="b"><td>org.apache.maven.wagon:wagon-ssh-external:jar:1.0-beta-2</td></tr><tr class="a"><td>org.codehaus.plexus:plexus-archiver:jar:2.1</td></tr><tr class="b"><td>org.codehaus.plexus:plexus-component-annotations:jar:1.5.5</td></tr><tr class="a"><td>org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9-stable-1</td></tr><tr class="b"><td>org.codehaus.plexus:plexus-interactivity-api:jar:1.0-alpha-4</td></tr><tr class="a"><td>org.codehaus.plexus:plexus-interpolation:jar:1.15</td></tr><tr class="b"><td>org.codehaus.plexus:plexus-io:jar:2.0.2</td></tr><tr class="a"><td>org.codehaus.plexus:plexus-utils:jar:3.0.10</td></tr><tr class="b"><td>org.easymock:easymock:jar:2.4</td></tr><tr class="a"><td>org.eclipse.aether:aether-util:jar:0.9.0.M2</td></tr><tr class="b"><td>org.mockito:mockito-all:jar:1.7</td></tr><tr class="a"><td>org.osgi:org.osgi.core:jar:4.2.0</td></tr><tr class="b"><td>xml-apis:xml-apis:jar:1.0.b2</td></tr><tr class="a"><th>Total</th></tr><tr class="b"><td>45 (compile: 32, test: 4, runtime: 9)</td></tr></table></div>
+    how to fix it.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-error-diagnostics">http://maven.apache.org/maven-error-diagnostics</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div><ul><li>org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9-stable-1 (compile) <img id="_1622432996" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_2092270828', '_1622432996' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_2092270828" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Default Plexus Container</th></tr><tr class="b"><td><p><b>Description: </b>There is currently no description associated with this project.</p><p><b>Project License: </b>No project license is defined for this project.</p></td></tr></table></div></li></ul></li><li>org.apache.maven:maven-project:jar:2.0.7 (compile) <img id="_749210340" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_957646515', '_749210340' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_957646515" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Project Builder</th></tr><tr class="b"><td><p><b>Description: </b>This library is used to not only read Maven project object model files, but to assemble inheritence
+    and to retrieve remote models as required.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-project">http://maven.apache.org/maven-project</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div><ul><li>org.apache.maven:maven-settings:jar:2.0.7 (compile) <img id="_1206179427" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_637063626', '_1206179427' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_637063626" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Local Settings Model</th></tr><tr class="b"><td><p><b>Description: </b>Maven is a project development management and comprehension tool. Based on the concept of a project object model: builds, dependency management, documentation creation, site publication, and distribution publication are all controlled from the declarative file. Maven can be extended by plugins to utilise a number of other development tools for reporting or the build process.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-settings">http://maven.apache.org/maven-settings</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.apache.maven:maven-profile:jar:2.0.7 (compile) <img id="_1240992389" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1420224444', '_1240992389' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1420224444" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Profile Model</th></tr><tr class="b"><td><p><b>Description: </b>Maven is a project development management and comprehension tool. Based on the concept of a project object model: builds, dependency management, documentation creation, site publication, and distribution publication are all controlled from the declarative file. Maven can be extended by plugins to utilise a number of other development tools for reporting or the build process.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-profile">http://maven.apache.org/maven-profile</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.apache.maven:maven-model:jar:2.0.7 (compile) <img id="_1968417118" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1078801677', '_1968417118' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1078801677" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Model</th></tr><tr class="b"><td><p><b>Description: </b>Maven Model</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-model">http://maven.apache.org/maven-model</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.apache.maven:maven-artifact-manager:jar:2.0.7 (compile) <img id="_582857903" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_655170498', '_582857903' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_655170498" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Artifact Manager</th></tr><tr class="b"><td><p><b>Description: </b>Maven is a project development management and comprehension tool. Based on the concept of a project object model: builds, dependency management, documentation creation, site publication, and distribution publication are all controlled from the declarative file. Maven can be extended by plugins to utilise a number of other development tools for reporting or the build process.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-artifact-manager">http://maven.apache.org/maven-artifact-manager</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.apache.maven:maven-plugin-registry:jar:2.0.7 (compile) <img id="_1671764436" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1168586984', '_1671764436' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1168586984" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Plugin Registry Model</th></tr><tr class="b"><td><p><b>Description: </b>Maven is a project development management and comprehension tool. Based on the concept of a project object model: builds, dependency management, documentation creation, site publication, and distribution publication are all controlled from the declarative file. Maven can be extended by plugins to utilise a number of other development tools for reporting or the build process.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-plugin-registry">http://maven.apache.org/maven-plugin-registry</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div><ul><li>org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9-stable-1 (compile) <img id="_640714070" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1558621462', '_640714070' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1558621462" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Default Plexus Container</th></tr><tr class="b"><td><p><b>Description: </b>There is currently no description associated with this project.</p><p><b>Project License: </b>No project license is defined for this project.</p></td></tr></table></div></li></ul></li><li>org.apache.maven:maven-artifact:jar:2.0.7 (compile) <img id="_439075107" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1631011993', '_439075107' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1631011993" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Artifact</th></tr><tr class="b"><td><p><b>Description: </b>Maven is a project development management and comprehension tool. Based on the concept of a project object model: builds, dependency management, documentation creation, site publication, and distribution publication are all controlled from the declarative file. Maven can be extended by plugins to utilise a number of other development tools for reporting or the build process.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-artifact">http://maven.apache.org/maven-artifact</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9-stable-1 (compile) <img id="_820694245" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1471036201', '_820694245' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1471036201" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Default Plexus Container</th></tr><tr class="b"><td><p><b>Description: </b>There is currently no description associated with this project.</p><p><b>Project License: </b>No project license is defined for this project.</p></td></tr></table></div></li></ul></li><li>commons-cli:commons-cli:jar:1.0 (compile) <img id="_1059396336" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_783209472', '_1059396336' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_783209472" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>CLI</th></tr><tr class="b"><td><p><b>Description: </b>Commons CLI provides a simple API for working with the command line arguments and options.</p><p><b>Project License: </b>No project license is defined for this project.</p></td></tr></table></div></li><li>org.apache.maven:maven-plugin-api:jar:2.0.7 (compile) <img id="_239894" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_199707925', '_239894' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_199707925" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Plugin API</th></tr><tr class="b"><td><p><b>Description: </b>Maven is a project development management and comprehension tool. Based on the concept of a project object model: builds, dependency management, documentation creation, site publication, and distribution publication are all controlled from the declarative file. Maven can be extended by plugins to utilise a number of other development tools for reporting or the build process.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-plugin-api">http://maven.apache.org/maven-plugin-api</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.apache.maven.wagon:wagon-ssh-external:jar:1.0-beta-2 (runtime) <img id="_1673834096" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_2098689918', '_1673834096' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_2098689918" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Wagon SSH External Provider</th></tr><tr class="b"><td><p><b>Description: </b>Wagon that gets and puts artifacts using SSH protocol with a preinstalled SSH client</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/wagon/wagon-providers/wagon-ssh-external">http://maven.apache.org/wagon/wagon-providers/wagon-ssh-external</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div><ul><li>org.apache.maven.wagon:wagon-ssh-common:jar:1.0-beta-2 (runtime) <img id="_744369504" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1326697959', '_744369504' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1326697959" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Wagon SSH Common Library</th></tr><tr class="b"><td><p><b>Description: </b>Tools to manage artifacts and deployment</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/wagon/wagon-providers/wagon-ssh-common">http://maven.apache.org/wagon/wagon-providers/wagon-ssh-common</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div><ul><li>org.codehaus.plexus:plexus-interactivity-api:jar:1.0-alpha-4 (runtime) <img id="_566180117" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1025182909', '_566180117' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1025182909" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Plexus Default Interactivity Handler</th></tr><tr class="b"><td><p><b>Description: </b>There is currently no description associated with this project.</p><p><b>Project License: </b>No project license is defined for this project.</p></td></tr></table></div></li><li>org.apache.maven.wagon:wagon-provider-api:jar:1.0-beta-2 (runtime) <img id="_1732484403" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1761085280', '_1732484403' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1761085280" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Wagon API</th></tr><tr class="b"><td><p><b>Description: </b>Maven Wagon API that defines the contract between different Wagon implementations</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/wagon/wagon-provider-api">http://maven.apache.org/wagon/wagon-provider-api</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li></ul></li><li>org.apache.maven.wagon:wagon-provider-api:jar:1.0-beta-2 (runtime) <img id="_853941763" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1381826986', '_853941763' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1381826986" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Wagon API</th></tr><tr class="b"><td><p><b>Description: </b>Maven Wagon API that defines the contract between different Wagon implementations</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/wagon/wagon-provider-api">http://maven.apache.org/wagon/wagon-provider-api</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li></ul></li><li>org.apache.maven:maven-plugin-descriptor:jar:2.0.7 (compile) <img id="_1343036283" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_578461880', '_1343036283' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_578461880" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Plugin Descriptor Model</th></tr><tr class="b"><td><p><b>Description: </b>Maven is a project development management and comprehension tool. Based on the concept of a project object model: builds, dependency management, documentation creation, site publication, and distribution publication are all controlled from the declarative file. Maven can be extended by plugins to utilise a number of other development tools for reporting or the build process.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-plugin-descriptor">http://maven.apache.org/maven-plugin-descriptor</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div><ul><li>org.apache.maven:maven-plugin-api:jar:2.0.7 (compile) <img id="_2099115097" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1816140563', '_2099115097' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1816140563" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Plugin API</th></tr><tr class="b"><td><p><b>Description: </b>Maven is a project development management and comprehension tool. Based on the concept of a project object model: builds, dependency management, documentation creation, site publication, and distribution publication are all controlled from the declarative file. Maven can be extended by plugins to utilise a number of other development tools for reporting or the build process.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-plugin-api">http://maven.apache.org/maven-plugin-api</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.apache.maven:maven-artifact:jar:2.0.7 (compile) <img id="_1788010157" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_2124957760', '_1788010157' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_2124957760" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Artifact</th></tr><tr class="b"><td><p><b>Description: </b>Maven is a project development management and comprehension tool. Based on the concept of a project object model: builds, dependency management, documentation creation, site publication, and distribution publication are all controlled from the declarative file. Maven can be extended by plugins to utilise a number of other development tools for reporting or the build process.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-artifact">http://maven.apache.org/maven-artifact</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9-stable-1 (compile) <img id="_1726782870" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1909313631', '_1726782870' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1909313631" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Default Plexus Container</th></tr><tr class="b"><td><p><b>Description: </b>There is currently no description associated with this project.</p><p><b>Project License: </b>No project license is defined for this project.</p></td></tr></table></div></li></ul></li><li>org.codehaus.plexus:plexus-interactivity-api:jar:1.0-alpha-4 (compile) <img id="_42332711" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1042311657', '_42332711' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1042311657" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Plexus Default Interactivity Handler</th></tr><tr class="b"><td><p><b>Description: </b>There is currently no description associated with this project.</p><p><b>Project License: </b>No project license is defined for this project.</p></td></tr></table></div></li><li>org.apache.maven:maven-artifact-manager:jar:2.0.7 (compile) <img id="_1187373069" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_2132475905', '_1187373069' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_2132475905" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Artifact Manager</th></tr><tr class="b"><td><p><b>Description: </b>Maven is a project development management and comprehension tool. Based on the concept of a project object model: builds, dependency management, documentation creation, site publication, and distribution publication are all controlled from the declarative file. Maven can be extended by plugins to utilise a number of other development tools for reporting or the build process.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-artifact-manager">http://maven.apache.org/maven-artifact-manager</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div><ul><li>org.apache.maven:maven-repository-metadata:jar:2.0.7 (compile) <img id="_540931086" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1830575374', '_540931086' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1830575374" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Repository Metadata Model</th></tr><tr class="b"><td><p><b>Description: </b>Maven Plugin Mapping</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-repository-metadata">http://maven.apache.org/maven-repository-metadata</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.apache.maven:maven-artifact:jar:2.0.7 (compile) <img id="_95467561" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1698975666', '_95467561' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1698975666" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Artifact</th></tr><tr class="b"><td><p><b>Description: </b>Maven is a project development management and comprehension tool. Based on the concept of a project object model: builds, dependency management, documentation creation, site publication, and distribution publication are all controlled from the declarative file. Maven can be extended by plugins to utilise a number of other development tools for reporting or the build process.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-artifact">http://maven.apache.org/maven-artifact</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9-stable-1 (compile) <img id="_257044910" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_172152193', '_257044910' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_172152193" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Default Plexus Container</th></tr><tr class="b"><td><p><b>Description: </b>There is currently no description associated with this project.</p><p><b>Project License: </b>No project license is defined for this project.</p></td></tr></table></div></li><li>org.apache.maven.wagon:wagon-provider-api:jar:1.0-beta-2 (compile) <img id="_737532725" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_732627698', '_737532725' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_732627698" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Wagon API</th></tr><tr class="b"><td><p><b>Description: </b>Maven Wagon API that defines the contract between different Wagon implementations</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/wagon/wagon-provider-api">http://maven.apache.org/wagon/wagon-provider-api</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li></ul></li><li>org.apache.maven:maven-monitor:jar:2.0.7 (compile) <img id="_1662017839" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_187452912', '_1662017839' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_187452912" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Monitor</th></tr><tr class="b"><td><p><b>Description: </b>Maven is a project development management and comprehension tool. Based on the concept of a project object model: builds, dependency management, documentation creation, site publication, and distribution publication are all controlled from the declarative file. Maven can be extended by plugins to utilise a number of other development tools for reporting or the build process.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/maven-monitor">http://maven.apache.org/maven-monitor</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.apache.maven.wagon:wagon-ssh:jar:1.0-beta-2 (runtime) <img id="_2060264653" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1070102118', '_2060264653' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1070102118" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Wagon SSH Provider</th></tr><tr class="b"><td><p><b>Description: </b>Tools to manage artifacts and deployment</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/wagon/wagon-providers/wagon-ssh">http://maven.apache.org/wagon/wagon-providers/wagon-ssh</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div><ul><li>com.jcraft:jsch:jar:0.1.27 (runtime) <img id="_1960085185" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1658187565', '_1960085185' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1658187565" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>JSch</th></tr><tr class="b"><td><p><b>Description: </b>JSch is a pure Java implementation of SSH2</p><p><b>URL: </b><a class="externalLink" href="http://www.jcraft.com/jsch/">http://www.jcraft.com/jsch/</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.jcraft.com/jsch/LICENSE.txt">BSD</a></p></td></tr></table></div></li><li>org.codehaus.plexus:plexus-interactivity-api:jar:1.0-alpha-4 (runtime) <img id="_34107799" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_148268570', '_34107799' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_148268570" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Plexus Default Interactivity Handler</th></tr><tr class="b"><td><p><b>Description: </b>There is currently no description associated with this project.</p><p><b>Project License: </b>No project license is defined for this project.</p></td></tr></table></div></li><li>org.apache.maven.wagon:wagon-ssh-common:jar:1.0-beta-2 (runtime) <img id="_625455826" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_498877233', '_625455826' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_498877233" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Wagon SSH Common Library</th></tr><tr class="b"><td><p><b>Description: </b>Tools to manage artifacts and deployment</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/wagon/wagon-providers/wagon-ssh-common">http://maven.apache.org/wagon/wagon-providers/wagon-ssh-common</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.apache.maven.wagon:wagon-provider-api:jar:1.0-beta-2 (runtime) <img id="_1763980587" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_253177966', '_1763980587' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_253177966" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Wagon API</th></tr><tr class="b"><td><p><b>Description: </b>Maven Wagon API that defines the contract between different Wagon implementations</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/wagon/wagon-provider-api">http://maven.apache.org/wagon/wagon-provider-api</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li></ul></li><li>classworlds:classworlds:jar:1.1 (compile) <img id="_900010540" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_605266952', '_900010540' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_605266952" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>classworlds</th></tr><tr class="b"><td><p><b>Description: </b>There is currently no description associated with this project.</p><p><b>URL: </b><a class="externalLink" href="http://classworlds.codehaus.org/">http://classworlds.codehaus.org/</a></p><p><b>Project License: </b>No project license is defined for this project.</p></td></tr></table></div></li></ul></li><li>org.apache.maven:maven-archiver:jar:2.5 (compile) <img id="_723424942" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1377801134', '_723424942' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1377801134" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Archiver</th></tr><tr class="b"><td><p><b>Description: </b>Provides utility methods for creating JARs and other archive files from a Maven project.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/shared/maven-archiver/">http://maven.apache.org/shared/maven-archiver/</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div><ul><li>org.codehaus.plexus:plexus-archiver:jar:2.1 (compile) <img id="_1112752984" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_185922477', '_1112752984' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_185922477" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Plexus Archiver Component</th></tr><tr class="b"><td><p><b>Description: </b>There is currently no description associated with this project.</p><p><b>URL: </b><a class="externalLink" href="http://forge.sonatype.com/spice-parent/plexus-archiver/">http://forge.sonatype.com/spice-parent/plexus-archiver/</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a></p></td></tr></table></div><ul><li>org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9-stable-1 (compile) <img id="_553184415" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_225685078', '_553184415' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_225685078" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Default Plexus Container</th></tr><tr class="b"><td><p><b>Description: </b>There is currently no description associated with this project.</p><p><b>Project License: </b>No project license is defined for this project.</p></td></tr></table></div></li><li>org.codehaus.plexus:plexus-io:jar:2.0.2 (compile) <img id="_263196061" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1575543245', '_263196061' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1575543245" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Plexus IO Components</th></tr><tr class="b"><td><p><b>Description: </b>The Plexus project provides a full software stack for creating and executing software projects.</p><p><b>URL: </b><a class="externalLink" href="http://plexus.codehaus.org/plexus-components/plexus-io">http://plexus.codehaus.org/plexus-components/plexus-io</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li></ul></li><li>org.codehaus.plexus:plexus-interpolation:jar:1.15 (compile) <img id="_560608837" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_360553490', '_560608837' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_360553490" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Plexus Interpolation API</th></tr><tr class="b"><td><p><b>Description: </b>The Plexus project provides a full software stack for creating and executing software projects.</p><p><b>URL: </b><a class="externalLink" href="http://plexus.codehaus.org/plexus-interpolation/">http://plexus.codehaus.org/plexus-interpolation/</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li></ul></li><li>org.apache.maven.shared:maven-dependency-tree:jar:2.1 (compile) <img id="_129939592" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1767705351', '_129939592' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1767705351" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Dependency Tree</th></tr><tr class="b"><td><p><b>Description: </b>A tree-based API for resolution of Maven project dependencies</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/shared/maven-dependency-tree/">http://maven.apache.org/shared/maven-dependency-tree/</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div><ul><li>org.codehaus.plexus:plexus-component-annotations:jar:1.5.5 (compile) <img id="_434600476" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_909982020', '_434600476' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_909982020" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Plexus :: Component Annotations</th></tr><tr class="b"><td><p><b>Description: </b>Plexus Component &quot;Java 5&quot; Annotations, to describe plexus components properties in java sources with
+    standard annotations instead of javadoc annotations.</p><p><b>URL: </b><a class="externalLink" href="http://plexus.codehaus.org/plexus-containers/plexus-component-annotations/">http://plexus.codehaus.org/plexus-containers/plexus-component-annotations/</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.eclipse.aether:aether-util:jar:0.9.0.M2 (compile) <img id="_539400323" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1210111966', '_539400323' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1210111966" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Aether Utilities</th></tr><tr class="b"><td><p><b>Description: </b>A collection of utility classes to ease usage of the repository system.</p><p><b>URL: </b><a class="externalLink" href="http://www.eclipse.org/aether/aether-util/">http://www.eclipse.org/aether/aether-util/</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.eclipse.org/legal/epl-v10.html">Eclipse Public License, Version 1.0</a></p></td></tr></table></div></li></ul></li><li>org.codehaus.plexus:plexus-utils:jar:3.0.10 (compile) <img id="_783364787" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1103189869', '_783364787' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1103189869" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Plexus Common Utilities</th></tr><tr class="b"><td><p><b>Description: </b>A collection of various utility classes to ease working with strings, files, command lines, XML and
+    more.</p><p><b>URL: </b><a class="externalLink" href="http://plexus.codehaus.org/plexus-utils">http://plexus.codehaus.org/plexus-utils</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.apache.maven.doxia:doxia-sink-api:jar:1.0 (compile) <img id="_803501724" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1672821852', '_803501724' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1672821852" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Doxia :: Sink API</th></tr><tr class="b"><td><p><b>Description: </b>Doxia Sink API.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/doxia/doxia/doxia-sink-api">http://maven.apache.org/doxia/doxia/doxia-sink-api</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.apache.maven.doxia:doxia-site-renderer:jar:1.0 (compile) <img id="_751446244" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_962925725', '_751446244' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_962925725" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Doxia Sitetools :: Site Renderer Component</th></tr><tr class="b"><td><p><b>Description: </b>The Site Renderer handles the rendering of sites.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/doxia/doxia-sitetools/doxia-site-renderer">http://maven.apache.org/doxia/doxia-sitetools/doxia-site-renderer</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div><ul><li>org.apache.maven.doxia:doxia-core:jar:1.0 (compile) <img id="_1439168426" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_962655000', '_1439168426' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_962655000" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Doxia :: Core</th></tr><tr class="b"><td><p><b>Description: </b>Doxia core classes and interfaces.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/doxia/doxia/doxia-core">http://maven.apache.org/doxia/doxia/doxia-core</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div><ul><li>org.apache.maven.doxia:doxia-sink-api:jar:1.0 (compile) <img id="_1136059673" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_2052752254', '_1136059673' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_2052752254" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Doxia :: Sink API</th></tr><tr class="b"><td><p><b>Description: </b>Doxia Sink API.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/doxia/doxia/doxia-sink-api">http://maven.apache.org/doxia/doxia/doxia-sink-api</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li></ul></li><li>org.apache.maven.doxia:doxia-sink-api:jar:1.0 (compile) <img id="_1030725860" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1307449904', '_1030725860' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1307449904" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Doxia :: Sink API</th></tr><tr class="b"><td><p><b>Description: </b>Doxia Sink API.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/doxia/doxia/doxia-sink-api">http://maven.apache.org/doxia/doxia/doxia-sink-api</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.codehaus.plexus:plexus-i18n:jar:1.0-beta-7 (compile) <img id="_1481296884" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_830463033', '_1481296884' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_830463033" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Plexus I18N Component</th></tr><tr class="b"><td><p><b>Description: </b>There is currently no description associated with this project.</p><p><b>URL: </b><a class="externalLink" href="http://plexus.codehaus.org/plexus-components/plexus-i18n">http://plexus.codehaus.org/plexus-components/plexus-i18n</a></p><p><b>Project License: </b>No project license is defined for this project.</p></td></tr></table></div></li><li>org.codehaus.plexus:plexus-velocity:jar:1.1.7 (compile) <img id="_90908079" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_633544582', '_90908079' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_633544582" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Plexus Velocity Component</th></tr><tr class="b"><td><p><b>Description: </b>There is currently no description associated with this project.</p><p><b>URL: </b><a class="externalLink" href="http://plexus.codehaus.org/plexus-components/plexus-velocity">http://plexus.codehaus.org/plexus-components/plexus-velocity</a></p><p><b>Project License: </b>No project license is defined for this project.</p></td></tr></table></div></li><li>org.apache.velocity:velocity:jar:1.5 (compile) <img id="_953562833" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_2112813467', '_953562833' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_2112813467" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Apache Velocity</th></tr><tr class="b"><td><p><b>Description: </b>Apache Velocity is a general purpose template engine.</p><p><b>URL: </b><a class="externalLink" href="http://velocity.apache.org/engine/releases/velocity-1.5/">http://velocity.apache.org/engine/releases/velocity-1.5/</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div><ul><li>commons-lang:commons-lang:jar:2.1 (compile) <img id="_1156518841" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_366211092', '_1156518841' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_366211092" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Lang</th></tr><tr class="b"><td><p><b>Description: </b>Commons.Lang, a package of Java utility classes for the
+    classes that are in java.lang's hierarchy, or are considered to be so
+    standard as to justify existence in java.lang.</p><p><b>URL: </b>http://jakarta.apache.org/commons/${pom.artifactId.substring(8)}/</p><p><b>Project License: </b><a href="/LICENSE.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>oro:oro:jar:2.0.8 (compile) <img id="_1067843442" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1440806410', '_1067843442' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1440806410" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>oro</th></tr><tr class="b"><td><p><b>Description: </b>There is currently no description associated with this project.</p><p><b>Project License: </b>No project license is defined for this project.</p></td></tr></table></div></li></ul></li><li>org.apache.maven.doxia:doxia-decoration-model:jar:1.0 (compile) <img id="_1047526855" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1682524754', '_1047526855' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1682524754" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Doxia Sitetools :: Decoration Model</th></tr><tr class="b"><td><p><b>Description: </b>The Decoration Model handles the site descriptor, also known as site.xml.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/doxia/doxia-sitetools/doxia-decoration-model">http://maven.apache.org/doxia/doxia-sitetools/doxia-decoration-model</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>commons-collections:commons-collections:jar:3.2 (compile) <img id="_1988623576" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1053542081', '_1988623576' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1053542081" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Collections</th></tr><tr class="b"><td><p><b>Description: </b>Types that extend and augment the Java Collections Framework.</p><p><b>URL: </b><a class="externalLink" href="http://jakarta.apache.org/commons/collections/">http://jakarta.apache.org/commons/collections/</a></p><p><b>Project License: </b><a href="/LICENSE.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.apache.maven.doxia:doxia-module-apt:jar:1.0 (compile) <img id="_1226363984" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1139843394', '_1226363984' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1139843394" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Doxia :: APT Module</th></tr><tr class="b"><td><p><b>Description: </b>A Doxia module for Almost Plain Text source documents.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/doxia/doxia/doxia-modules/doxia-module-apt">http://maven.apache.org/doxia/doxia/doxia-modules/doxia-module-apt</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div><ul><li>org.apache.maven.doxia:doxia-core:jar:1.0 (compile) <img id="_2030196912" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1199113365', '_2030196912' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1199113365" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Doxia :: Core</th></tr><tr class="b"><td><p><b>Description: </b>Doxia core classes and interfaces.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/doxia/doxia/doxia-core">http://maven.apache.org/doxia/doxia/doxia-core</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.apache.maven.doxia:doxia-sink-api:jar:1.0 (compile) <img id="_1169381106" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1322363475', '_1169381106' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1322363475" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Doxia :: Sink API</th></tr><tr class="b"><td><p><b>Description: </b>Doxia Sink API.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/doxia/doxia/doxia-sink-api">http://maven.apache.org/doxia/doxia/doxia-sink-api</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li></ul></li><li>org.apache.maven.doxia:doxia-module-fml:jar:1.0 (compile) <img id="_1909909138" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_804093187', '_1909909138' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_804093187" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Doxia :: FML Module</th></tr><tr class="b"><td><p><b>Description: </b>A Doxia module for FML source documents.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/doxia/doxia/doxia-modules/doxia-module-fml">http://maven.apache.org/doxia/doxia/doxia-modules/doxia-module-fml</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div><ul><li>org.apache.maven.doxia:doxia-core:jar:1.0 (compile) <img id="_2002607686" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_179928144', '_2002607686' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_179928144" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Doxia :: Core</th></tr><tr class="b"><td><p><b>Description: </b>Doxia core classes and interfaces.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/doxia/doxia/doxia-core">http://maven.apache.org/doxia/doxia/doxia-core</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.apache.maven.doxia:doxia-sink-api:jar:1.0 (compile) <img id="_857293021" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_2106101164', '_857293021' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_2106101164" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Doxia :: Sink API</th></tr><tr class="b"><td><p><b>Description: </b>Doxia Sink API.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/doxia/doxia/doxia-sink-api">http://maven.apache.org/doxia/doxia/doxia-sink-api</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li></ul></li><li>org.apache.maven.doxia:doxia-module-xdoc:jar:1.0 (compile) <img id="_418078595" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1969021773', '_418078595' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1969021773" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Doxia :: XDoc Module</th></tr><tr class="b"><td><p><b>Description: </b>A Doxia module for Xdoc source documents.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/doxia/doxia/doxia-modules/doxia-module-xdoc">http://maven.apache.org/doxia/doxia/doxia-modules/doxia-module-xdoc</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div><ul><li>org.apache.maven.doxia:doxia-core:jar:1.0 (compile) <img id="_406036890" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_173311606', '_406036890' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_173311606" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Doxia :: Core</th></tr><tr class="b"><td><p><b>Description: </b>Doxia core classes and interfaces.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/doxia/doxia/doxia-core">http://maven.apache.org/doxia/doxia/doxia-core</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.apache.maven.doxia:doxia-sink-api:jar:1.0 (compile) <img id="_205087894" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1842857981', '_205087894' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1842857981" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Doxia :: Sink API</th></tr><tr class="b"><td><p><b>Description: </b>Doxia Sink API.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/doxia/doxia/doxia-sink-api">http://maven.apache.org/doxia/doxia/doxia-sink-api</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li></ul></li><li>org.apache.maven.doxia:doxia-module-xhtml:jar:1.0 (compile) <img id="_621683760" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_491940653', '_621683760' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_491940653" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Doxia :: XHTML Module</th></tr><tr class="b"><td><p><b>Description: </b>A Doxia module for Xhtml source documents.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/doxia/doxia/doxia-modules/doxia-module-xhtml">http://maven.apache.org/doxia/doxia/doxia-modules/doxia-module-xhtml</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div><ul><li>org.apache.maven.doxia:doxia-core:jar:1.0 (compile) <img id="_1946705092" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1674941900', '_1946705092' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1674941900" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Doxia :: Core</th></tr><tr class="b"><td><p><b>Description: </b>Doxia core classes and interfaces.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/doxia/doxia/doxia-core">http://maven.apache.org/doxia/doxia/doxia-core</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>org.apache.maven.doxia:doxia-sink-api:jar:1.0 (compile) <img id="_686294880" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1205191002', '_686294880' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1205191002" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Doxia :: Sink API</th></tr><tr class="b"><td><p><b>Description: </b>Doxia Sink API.</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/doxia/doxia/doxia-sink-api">http://maven.apache.org/doxia/doxia/doxia-sink-api</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li></ul></li></ul></li><li>org.apache.maven.shared:maven-plugin-testing-harness:jar:1.1 (test) <img id="_448987939" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_1901354341', '_448987939' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_1901354341" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Maven Plugin Testing Mechanism</th></tr><tr class="b"><td><p><b>Description: </b>Maven shared components</p><p><b>URL: </b><a class="externalLink" href="http://maven.apache.org/shared/maven-plugin-testing-harness/">http://maven.apache.org/shared/maven-plugin-testing-harness/</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></p></td></tr></table></div></li><li>junit:junit:jar:4.0 (test) <img id="_1548517467" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_718691035', '_1548517467' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_718691035" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>junit</th></tr><tr class="b"><td><p><b>Description: </b>There is currently no description associated with this project.</p><p><b>URL: </b><a class="externalLink" href="http://junit.org">http://junit.org</a></p><p><b>Project License: </b>No project license is defined for this project.</p></td></tr></table></div></li><li>org.easymock:easymock:jar:2.4 (test) <img id="_1145913775" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_563262414', '_1145913775' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_563262414" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>EasyMock</th></tr><tr class="b"><td><p><b>Description: </b>EasyMock provides an easy way to create Mock Objects for interfaces by generating them on the fly using Java's proxy mechanism</p><p><b>URL: </b><a class="externalLink" href="http://www.easymock.org">http://www.easymock.org</a></p><p><b>Project License: </b><a class="externalLink" href="http://www.easymock.org/License.html">MIT License</a></p></td></tr></table></div></li><li>org.mockito:mockito-all:jar:1.7 (test) <img id="_985082213" src="./images/icon_info_sml.gif" alt="Information" onclick="toggleDependencyDetail( '_455073434', '_985082213' );" style="cursor: pointer;vertical-align:text-bottom;"></img><div id="_455073434" style="display:none"><table border="0" class="bodyTable"><tr class="a"><th>Mockito</th></tr><tr class="b"><td><p><b>Description: </b>Mock objects library for java</p><p><b>URL: </b><a class="externalLink" href="http://www.mockito.org">http://www.mockito.org</a></p><p><b>Project License: </b><a class="externalLink" href="http://code.google.com/p/mockito/wiki/License">The MIT License</a></p></td></tr></table></div></li></ul></li></ul></div></div><a name="Licenses"></a><div class="section"><h2>Licenses<a name="Licenses"></a></h2><p><b>Apache Software License 2.0: </b>A Swiss Army Knife for OSGi</p><p><b>Java HTML Tidy License: </b>JTidy</p><p><b>Unknown: </b>CLI, Default Plexus Container, Plexus Default Interactivity Handler, Plexus I18N Component, Plexus Velocity Component, classworlds, junit, org.osgi.compendium, oro</p><p><b>BSD: </b>JSch</p><p><b>Apache License, Version 2.0: </b>Plexus Archiver Component, osgi.core</p><p><b>Eclipse Public License, Version 1.0: </b>Aether Utilities</p><p><b>MIT License: </b>EasyMock</p><p><b>The Apache Software License, Version 2.0: </b>Apache Felix Bundle Repository, Apache Felix Utils, Apache Velocity, Collections, Doxia :: APT Module, Doxia :: Core, Doxia :: FML Module, Doxia :: Sink API, Doxia :: XDoc Module, Doxia :: XHTML Module, Doxia Sitetools :: Decoration Model, Doxia Sitetools :: Site Renderer Component, Lang, Maven Archiver, Maven Artifact, Maven Artifact Manager, Maven Bundle Plugin, Maven Core, Maven Dependency Tree, Maven Error Diagnostics, Maven Local Settings Model, Maven Model, Maven Monitor, Maven Plugin API, Maven Plugin Descriptor Model, Maven Plugin Parameter Documenter API, Maven Plugin Registry Model, Maven Plugin Testing Mechanism, Maven Profile Model, Maven Project Builder, Maven Reporting API, Maven Repository Metadata Model, Maven Wagon API, Maven Wagon File Provider, Maven Wagon HTTP Shared Library, Maven Wagon Lightweight HTTP Provider, Maven Wagon SSH Common Library, Maven Wagon SSH External Provider, Maven Wagon SSH Provider, Plexus :: Component Annotations, Plexus Common Utilities, Plexus IO Components, Plexus Interpolation API, XML Commons External Components XML APIs</p><p><b>The MIT License: </b>Mockito</p></div><a name="Dependency_File_Details"></a><div class="section"><h2>Dependency File Details<a name="Dependency_File_Details"></a></h2><table border="0" class="bodyTable"><tr class="a"><th>Filename</th><th>Size</th><th>Entries</th><th>Classes</th><th>Packages</th><th>JDK Rev</th><th>Debug</th></tr><tr class="b"><td>bndlib-2.3.0.jar</td><td>1.70 MB</td><td>1,412</td><td>621</td><td>96</td><td>1.5</td><td>debug</td></tr><tr class="a"><td>classworlds-1.1.jar</td><td>36.97 kB</td><td>33</td><td>23</td><td>3</td><td>1.3</td><td>debug</td></tr><tr class="b"><td>jsch-0.1.27.jar</td><td>119.15 kB</td><td>97</td><td>94</td><td>3</td><td>1.2</td><td>release</td></tr><tr class="a"><td>commons-cli-1.0.jar</td><td>29.41 kB</td><td>27</td><td>20</td><td>1</td><td>1.1</td><td>debug</td></tr><tr class="b"><td>commons-collections-3.2.jar</td><td>557.87 kB</td><td>477</td><td>458</td><td>12</td><td>1.1</td><td>debug</td></tr><tr class="a"><td>commons-lang-2.1.jar</td><td>202.85 kB</td><td>125</td><td>110</td><td>8</td><td>1.1</td><td>debug</td></tr><tr class="b"><td>jtidy-4aug2000r7-dev.jar</td><td>134.60 kB</td><td>129</td><td>119</td><td>3</td><td>1.1</td><td>release</td></tr><tr class="a"><td>junit-4.0.jar</td><td>103.13 kB</td><td>119</td><td>92</td><td>11</td><td>1.5</td><td>debug</td></tr><tr class="b"><td>org.apache.felix.bundlerepository-1.6.6.jar</td><td>164.33 kB</td><td>112</td><td>84</td><td>11</td><td>1.4</td><td>debug</td></tr><tr class="a"><td>org.apache.felix.utils-1.6.0.jar</td><td>66.04 kB</td><td>58</td><td>36</td><td>8</td><td>1.5</td><td>debug</td></tr><tr class="b"><td>maven-archiver-2.5.jar</td><td>21.30 kB</td><td>19</td><td>5</td><td>1</td><td>1.5</td><td>debug</td></tr><tr class="a"><td>maven-artifact-2.0.7.jar</td><td>85.80 kB</td><td>106</td><td>77</td><td>15</td><td>1.1</td><td>debug</td></tr><tr class="b"><td>maven-artifact-manager-2.0.7.jar</td><td>55.18 kB</td><td>46</td><td>24</td><td>7</td><td>1.1</td><td>debug</td></tr><tr class="a"><td>maven-core-2.0.7.jar</td><td>149.30 kB</td><td>108</td><td>67</td><td>13</td><td>1.1</td><td>debug</td></tr><tr class="b"><td>maven-error-diagnostics-2.0.7.jar</td><td>13.29 kB</td><td>22</td><td>6</td><td>1</td><td>1.1</td><td>debug</td></tr><tr class="a"><td>maven-model-2.0.7.jar</td><td>84.41 kB</td><td>60</td><td>45</td><td>2</td><td>1.1</td><td>debug</td></tr><tr class="b"><td>maven-monitor-2.0.7.jar</td><td>10.00 kB</td><td>19</td><td>5</td><td>1</td><td>1.1</td><td>debug</td></tr><tr class="a"><td>maven-plugin-api-2.0.7.jar</td><td>12.56 kB</td><td>23</td><td>9</td><td>2</td><td>1.1</td><td>debug</td></tr><tr class="b"><td>maven-plugin-descriptor-2.0.7.jar</td><td>36.01 kB</td><td>32</td><td>15</td><td>3</td><td>1.1</td><td>debug</td></tr><tr class="a"><td>maven-plugin-parameter-documenter-2.0.7.jar</td><td>20.27 kB</td><td>20</td><td>4</td><td>2</td><td>1.1</td><td>debug</td></tr><tr class="b"><td>maven-plugin-registry-2.0.7.jar</td><td>28.25 kB</td><td>28</td><td>10</td><td>2</td><td>1.1</td><td>debug</td></tr><tr class="a"><td>maven-profile-2.0.7.jar</td><td>34.42 kB</td><td>33</td><td>16</td><td>2</td><td>1.1</td><td>debug</td></tr><tr class="b"><td>maven-project-2.0.7.jar</td><td>113.81 kB</td><td>76</td><td>51</td><td>10</td><td>1.1</td><td>debug</td></tr><tr class="a"><td>maven-repository-metadata-2.0.7.jar</td><td>23.90 kB</td><td>23</td><td>6</td><td>2</td><td>1.1</td><td>debug</td></tr><tr class="b"><td>maven-settings-2.0.7.jar</td><td>47.96 kB</td><td>38</td><td>21</td><td>2</td><td>1.1</td><td>debug</td></tr><tr class="a"><td>doxia-core-1.0.jar</td><td>53.66 kB</td><td>77</td><td>48</td><td>13</td><td>1.4</td><td>debug</td></tr><tr class="b"><td>doxia-decoration-model-1.0.jar</td><td>47.84 kB</td><td>39</td><td>18</td><td>3</td><td>1.4</td><td>debug</td></tr><tr class="a"><td>doxia-module-apt-1.0.jar</td><td>45.97 kB</td><td>45</td><td>27</td><td>1</td><td>1.4</td><td>debug</td></tr><tr class="b"><td>doxia-module-fml-1.0.jar</td><td>18.11 kB</td><td>24</td><td>5</td><td>2</td><td>1.4</td><td>debug</td></tr><tr class="a"><td>doxia-module-xdoc-1.0.jar</td><td>27.15 kB</td><td>31</td><td>13</td><td>1</td><td>1.4</td><td>debug</td></tr><tr class="b"><td>doxia-module-xhtml-1.0.jar</td><td>21.29 kB</td><td>27</td><td>7</td><td>2</td><td>1.4</td><td>debug</td></tr><tr class="a"><td>doxia-sink-api-1.0.jar</td><td>9.84 kB</td><td>22</td><td>4</td><td>2</td><td>1.4</td><td>debug</td></tr><tr class="b"><td>doxia-site-renderer-1.0.jar</td><td>45.43 kB</td><td>50</td><td>9</td><td>2</td><td>1.4</td><td>debug</td></tr><tr class="a"><td>maven-reporting-api-2.0.7.jar</td><td>9.71 kB</td><td>18</td><td>4</td><td>1</td><td>1.1</td><td>debug</td></tr><tr class="b"><td>maven-dependency-tree-2.1.jar</td><td>58.55 kB</td><td>63</td><td>39</td><td>7</td><td>1.5</td><td>debug</td></tr><tr class="a"><td>maven-plugin-testing-harness-1.1.jar</td><td>31.73 kB</td><td>28</td><td>11</td><td>2</td><td>1.1</td><td>debug</td></tr><tr class="b"><td>wagon-file-1.0-beta-2.jar</td><td>9.71 kB</td><td>18</td><td>1</td><td>1</td><td>1.1</td><td>debug</td></tr><tr class="a"><td>wagon-http-lightweight-1.0-beta-2.jar</td><td>12.03 kB</td><td>19</td><td>2</td><td>1</td><td>1.1</td><td>debug</td></tr><tr class="b"><td>wagon-http-shared-1.0-beta-2.jar</td><td>9.34 kB</td><td>17</td><td>2</td><td>1</td><td>1.1</td><td>debug</td></tr><tr class="a"><td>wagon-provider-api-1.0-beta-2.jar</td><td>45.24 kB</td><td>57</td><td>37</td><td>8</td><td>1.1</td><td>debug</td></tr><tr class="b"><td>wagon-ssh-1.0-beta-2.jar</td><td>23.05 kB</td><td>26</td><td>7</td><td>2</td><td>1.1</td><td>debug</td></tr><tr class="a"><td>wagon-ssh-common-1.0-beta-2.jar</td><td>24.61 kB</td><td>37</td><td>18</td><td>3</td><td>1.1</td><td>debug</td></tr><tr class="b"><td>wagon-ssh-external-1.0-beta-2.jar</td><td>12.27 kB</td><td>19</td><td>1</td><td>1</td><td>1.1</td><td>debug</td></tr><tr class="a"><td>velocity-1.5.jar</td><td>382.93 kB</td><td>282</td><td>246</td><td>25</td><td>1.2</td><td>debug</td></tr><tr class="b"><td>plexus-archiver-2.1.jar</td><td>180.12 kB</td><td>137</td><td>112</td><td>12</td><td>1.5</td><td>debug</td></tr><tr class="a"><td>plexus-component-annotations-1.5.5.jar</td><td>4.11 kB</td><td>15</td><td>3</td><td>1</td><td>1.5</td><td>release</td></tr><tr class="b"><td>plexus-container-default-1.0-alpha-9-stable-1.jar</td><td>189.63 kB</td><td>215</td><td>175</td><td>28</td><td>1.1</td><td>debug</td></tr><tr class="a"><td>plexus-i18n-1.0-beta-7.jar</td><td>10.26 kB</td><td>19</td><td>6</td><td>1</td><td>1.4</td><td>debug</td></tr><tr class="b"><td>plexus-interactivity-api-1.0-alpha-4.jar</td><td>13.09 kB</td><td>25</td><td>11</td><td>1</td><td>1.1</td><td>debug</td></tr><tr class="a"><td>plexus-interpolation-1.15.jar</td><td>59.06 kB</td><td>60</td><td>44</td><td>6</td><td>1.5</td><td>debug</td></tr><tr class="b"><td>plexus-io-2.0.2.jar</td><td>56.90 kB</td><td>62</td><td>43</td><td>5</td><td>1.5</td><td>debug</td></tr><tr class="a"><td>plexus-utils-3.0.10.jar</td><td>225.47 kB</td><td>127</td><td>102</td><td>9</td><td>1.5</td><td>debug</td></tr><tr class="b"><td>plexus-velocity-1.1.7.jar</td><td>7.49 kB</td><td>18</td><td>5</td><td>1</td><td>1.4</td><td>debug</td></tr><tr class="a"><td>easymock-2.4.jar</td><td>79.23 kB</td><td>83</td><td>71</td><td>3</td><td>1.5</td><td>debug</td></tr><tr class="b"><td>aether-util-0.9.0.M2.jar</td><td>130.46 kB</td><td>118</td><td>93</td><td>13</td><td>1.5</td><td>debug</td></tr><tr class="a"><td>mockito-all-1.7.jar</td><td>943.04 kB</td><td>846</td><td>469</td><td>48</td><td>1.5</td><td>debug</td></tr><tr class="b"><td>org.osgi.compendium-4.2.0.jar</td><td>599.76 kB</td><td>584</td><td>189</td><td>33</td><td>1.2</td><td>debug</td></tr><tr class="a"><td>org.osgi.core-4.3.1.jar</td><td>341.78 kB</td><td>254</td><td>106</td><td>13</td><td>1.5</td><td>debug</td></tr><tr class="b"><td>oro-2.0.8.jar</td><td>63.73 kB</td><td>74</td><td>62</td><td>6</td><td>1.2</td><td>release</td></tr><tr class="a"><td>xml-apis-1.0.b2.jar</td><td>106.76 kB</td><td>217</td><td>184</td><td>17</td><td>1.2</td><td>release</td></tr><tr class="b"><th>Total</th><th>Size</th><th>Entries</th><th>Classes</th><th>Packages</th><th>JDK Rev</th><th>Debug</th></tr><tr class="a"><td>60</td><td>7.61 MB</td><td>6,995</td><td>4,192</td><td>496</td><td>1.5</td><td>55</td></tr><tr class="b"><td>compile: 47</td><td>compile: 6.04 MB</td><td>compile: 5,340</td><td>compile: 3,121</td><td>compile: 400</td><td>-</td><td>compile: 45</td></tr><tr class="a"><td>test: 4</td><td>test: 1.13 MB</td><td>test: 1,076</td><td>test: 643</td><td>test: 64</td><td>-</td><td>test: 4</td></tr><tr class="b"><td>runtime: 9</td><td>runtime: 451.54 kB</td><td>runtime: 579</td><td>runtime: 428</td><td>runtime: 32</td><td>-</td><td>runtime: 6</td></tr></table></div><a name="Dependency_Repository_Locations"></a><div class="section"><h2>Dependency Repository Locations<a name="Dependency_Repository_Locations"></a></h2><table border="0" class="bodyTable"><tr class="a"><th>Repo ID</th><th>URL</th><th>Release</th><th>Snapshot</th><th>Blacklisted</th></tr><tr class="b"><td>codehaus.snapshots</td><td><a class="externalLink" href="http://snapshots.repository.codehaus.org">http://snapshots.repository.codehaus.org</a></td><td>-</td><td>Yes</td><td>-</td></tr><tr class="a"><td>apache.snapshots</td><td><a class="externalLink" href="http://repository.apache.org/snapshots">http://repository.apache.org/snapshots</a></td><td>-</td><td>Yes</td><td>Yes</td></tr><tr class="b"><td>snapshots</td><td><a class="externalLink" href="http://snapshots.maven.codehaus.org/maven2">http://snapshots.maven.codehaus.org/maven2</a></td><td>-</td><td>Yes</td><td>Yes</td></tr><tr class="a"><td>central</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2">http://repo.maven.apache.org/maven2</a></td><td>Yes</td><td>-</td><td>-</td></tr></table><p>Repository locations for each of the Dependencies.</p><table border="0" class="bodyTable"><tr class="a"><th>Artifact</th><th>codehaus.snapshots</th><th>central</th></tr><tr class="b"><td>biz.aQute.bnd:bndlib:jar:2.3.0</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/biz/aQute/bnd/bndlib/2.3.0/bndlib-2.3.0.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="a"><td>classworlds:classworlds:jar:1.1</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/classworlds/classworlds/1.1/classworlds-1.1.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="b"><td>com.jcraft:jsch:jar:0.1.27</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/com/jcraft/jsch/0.1.27/jsch-0.1.27.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="a"><td>commons-cli:commons-cli:jar:1.0</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/commons-cli/commons-cli/1.0/commons-cli-1.0.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="b"><td>commons-collections:commons-collections:jar:3.2</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/commons-collections/commons-collections/3.2/commons-collections-3.2.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="a"><td>commons-lang:commons-lang:jar:2.1</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/commons-lang/commons-lang/2.1/commons-lang-2.1.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="b"><td>jtidy:jtidy:jar:4aug2000r7-dev</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/jtidy/jtidy/4aug2000r7-dev/jtidy-4aug2000r7-dev.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="a"><td>junit:junit:jar:4.0</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/junit/junit/4.0/junit-4.0.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="b"><td>org.apache.felix:org.apache.felix.bundlerepository:jar:1.6.6</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/apache/felix/org.apache.felix.bundlerepository/1.6.6/org.apache.felix.bundlerepository-1.6.6.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="a"><td>org.apache.felix:org.apache.felix.utils:jar:1.6.0</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/apache/felix/org.apache.felix.utils/1.6.0/org.apache.felix.utils-1.6.0.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="b"><td>org.apache.maven:maven-archiver:jar:2.5</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/apache/maven/maven-archiver/2.5/maven-archiver-2.5.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="a"><td>org.apache.maven:maven-artifact:jar:2.0.7</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/apache/maven/maven-artifact/2.0.7/maven-artifact-2.0.7.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="b"><td>org.apache.maven:maven-artifact-manager:jar:2.0.7</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/apache/maven/maven-artifact-manager/2.0.7/maven-artifact-manager-2.0.7.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="a"><td>org.apache.maven:maven-core:jar:2.0.7</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/apache/maven/maven-core/2.0.7/maven-core-2.0.7.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="b"><td>org.apache.maven:maven-error-diagnostics:jar:2.0.7</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/apache/maven/maven-error-diagnostics/2.0.7/maven-error-diagnostics-2.0.7.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="a"><td>org.apache.maven:maven-model:jar:2.0.7</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/apache/maven/maven-model/2.0.7/maven-model-2.0.7.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="b"><td>org.apache.maven:maven-monitor:jar:2.0.7</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/apache/maven/maven-monitor/2.0.7/maven-monitor-2.0.7.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="a"><td>org.apache.maven:maven-plugin-api:jar:2.0.7</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/apache/maven/maven-plugin-api/2.0.7/maven-plugin-api-2.0.7.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="b"><td>org.apache.maven:maven-plugin-descriptor:jar:2.0.7</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/apache/maven/maven-plugin-descriptor/2.0.7/maven-plugin-descriptor-2.0.7.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="a"><td>org.apache.maven:maven-plugin-parameter-documenter:jar:2.0.7</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/apache/maven/maven-plugin-parameter-documenter/2.0.7/maven-plugin-parameter-documenter-2.0.7.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="b"><td>org.apache.maven:maven-plugin-registry:jar:2.0.7</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/apache/maven/maven-plugin-registry/2.0.7/maven-plugin-registry-2.0.7.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="a"><td>org.apache.maven:maven-profile:jar:2.0.7</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/apache/maven/maven-profile/2.0.7/maven-profile-2.0.7.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="b"><td>org.apache.maven:maven-project:jar:2.0.7</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/apache/maven/maven-project/2.0.7/maven-project-2.0.7.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="a"><td>org.apache.maven:maven-repository-metadata:jar:2.0.7</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/apache/maven/maven-repository-metadata/2.0.7/maven-repository-metadata-2.0.7.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="b"><td>org.apache.maven:maven-settings:jar:2.0.7</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/apache/maven/maven-settings/2.0.7/maven-settings-2.0.7.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="a"><td>org.apache.maven.doxia:doxia-core:jar:1.0</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/apache/maven/doxia/doxia-core/1.0/doxia-core-1.0.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="b"><td>org.apache.maven.doxia:doxia-decoration-model:jar:1.0</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/apache/maven/doxia/doxia-decoration-model/1.0/doxia-decoration-model-1.0.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="a"><td>org.apache.maven.doxia:doxia-module-apt:jar:1.0</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/apache/maven/doxia/doxia-module-apt/1.0/doxia-module-apt-1.0.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="b"><td>org.apache.maven.doxia:doxia-module-fml:jar:1.0</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/apache/maven/doxia/doxia-module-fml/1.0/doxia-module-fml-1.0.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="a"><td>org.apache.maven.doxia:doxia-module-xdoc:jar:1.0</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/apache/maven/doxia/doxia-module-xdoc/1.0/doxia-module-xdoc-1.0.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="b"><td>org.apache.maven.doxia:doxia-module-xhtml:jar:1.0</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/apache/maven/doxia/doxia-module-xhtml/1.0/doxia-module-xhtml-1.0.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="a"><td>org.apache.maven.doxia:doxia-sink-api:jar:1.0</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/apache/maven/doxia/doxia-sink-api/1.0/doxia-sink-api-1.0.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="b"><td>org.apache.maven.doxia:doxia-site-renderer:jar:1.0</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/apache/maven/doxia/doxia-site-renderer/1.0/doxia-site-renderer-1.0.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="a"><td>org.apache.maven.reporting:maven-reporting-api:jar:2.0.7</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/apache/maven/reporting/maven-reporting-api/2.0.7/maven-reporting-api-2.0.7.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="b"><td>org.apache.maven.shared:maven-dependency-tree:jar:2.1</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/apache/maven/shared/maven-dependency-tree/2.1/maven-dependency-tree-2.1.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="a"><td>org.apache.maven.shared:maven-plugin-testing-harness:jar:1.1</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/apache/maven/shared/maven-plugin-testing-harness/1.1/maven-plugin-testing-harness-1.1.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="b"><td>org.apache.maven.wagon:wagon-file:jar:1.0-beta-2</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/apache/maven/wagon/wagon-file/1.0-beta-2/wagon-file-1.0-beta-2.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="a"><td>org.apache.maven.wagon:wagon-http-lightweight:jar:1.0-beta-2</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/apache/maven/wagon/wagon-http-lightweight/1.0-beta-2/wagon-http-lightweight-1.0-beta-2.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="b"><td>org.apache.maven.wagon:wagon-http-shared:jar:1.0-beta-2</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/apache/maven/wagon/wagon-http-shared/1.0-beta-2/wagon-http-shared-1.0-beta-2.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="a"><td>org.apache.maven.wagon:wagon-provider-api:jar:1.0-beta-2</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/apache/maven/wagon/wagon-provider-api/1.0-beta-2/wagon-provider-api-1.0-beta-2.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="b"><td>org.apache.maven.wagon:wagon-ssh:jar:1.0-beta-2</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/apache/maven/wagon/wagon-ssh/1.0-beta-2/wagon-ssh-1.0-beta-2.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="a"><td>org.apache.maven.wagon:wagon-ssh-common:jar:1.0-beta-2</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/apache/maven/wagon/wagon-ssh-common/1.0-beta-2/wagon-ssh-common-1.0-beta-2.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="b"><td>org.apache.maven.wagon:wagon-ssh-external:jar:1.0-beta-2</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/apache/maven/wagon/wagon-ssh-external/1.0-beta-2/wagon-ssh-external-1.0-beta-2.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="a"><td>org.apache.velocity:velocity:jar:1.5</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/apache/velocity/velocity/1.5/velocity-1.5.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="b"><td>org.codehaus.plexus:plexus-archiver:jar:2.1</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-archiver/2.1/plexus-archiver-2.1.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="a"><td>org.codehaus.plexus:plexus-component-annotations:jar:1.5.5</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-component-annotations/1.5.5/plexus-component-annotations-1.5.5.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="b"><td>org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9-stable-1</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-container-default/1.0-alpha-9-stable-1/plexus-container-default-1.0-alpha-9-stable-1.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="a"><td>org.codehaus.plexus:plexus-i18n:jar:1.0-beta-7</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-i18n/1.0-beta-7/plexus-i18n-1.0-beta-7.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="b"><td>org.codehaus.plexus:plexus-interactivity-api:jar:1.0-alpha-4</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-interactivity-api/1.0-alpha-4/plexus-interactivity-api-1.0-alpha-4.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="a"><td>org.codehaus.plexus:plexus-interpolation:jar:1.15</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-interpolation/1.15/plexus-interpolation-1.15.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="b"><td>org.codehaus.plexus:plexus-io:jar:2.0.2</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-io/2.0.2/plexus-io-2.0.2.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="a"><td>org.codehaus.plexus:plexus-utils:jar:3.0.10</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-utils/3.0.10/plexus-utils-3.0.10.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="b"><td>org.codehaus.plexus:plexus-velocity:jar:1.1.7</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-velocity/1.1.7/plexus-velocity-1.1.7.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="a"><td>org.easymock:easymock:jar:2.4</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/easymock/easymock/2.4/easymock-2.4.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="b"><td>org.eclipse.aether:aether-util:jar:0.9.0.M2</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/eclipse/aether/aether-util/0.9.0.M2/aether-util-0.9.0.M2.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="a"><td>org.mockito:mockito-all:jar:1.7</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/mockito/mockito-all/1.7/mockito-all-1.7.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="b"><td>org.osgi:org.osgi.compendium:jar:4.2.0</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/osgi/org.osgi.compendium/4.2.0/org.osgi.compendium-4.2.0.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="a"><td>org.osgi:org.osgi.core:jar:4.3.1</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/org/osgi/org.osgi.core/4.3.1/org.osgi.core-4.3.1.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="b"><td>oro:oro:jar:2.0.8</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/oro/oro/2.0.8/oro-2.0.8.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="a"><td>xml-apis:xml-apis:jar:1.0.b2</td><td>-</td><td><a class="externalLink" href="http://repo.maven.apache.org/maven2/xml-apis/xml-apis/1.0.b2/xml-apis-1.0.b2.jar"><img alt="Found at http://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td></tr><tr class="b"><th>Total</th><th>codehaus.snapshots</th><th>central</th></tr><tr class="a"><td>60 (compile: 47, test: 4, runtime: 9)</td><td>0</td><td>60</td></tr></table></div>
       </div>
     </div>
     <div class="clear">
       <hr/>
     </div>
     <div id="footer">
-      <div class="xright">Copyright &#169;                    2006-2013
+      <div class="xright">Copyright &#169;                    2006-2014
                         <a href="http://www.apache.org/">The Apache Software Foundation</a>.
             All Rights Reserved.      
         
diff --git a/bundleplugin/doc/site/deploy-file-mojo.html b/bundleplugin/doc/site/deploy-file-mojo.html
index 73226b3..28a4023 100644
--- a/bundleplugin/doc/site/deploy-file-mojo.html
+++ b/bundleplugin/doc/site/deploy-file-mojo.html
@@ -1,5 +1,5 @@
 <!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 Jun 8, 2013 -->
+<!-- Generated by Apache Maven Doxia at Jun 20, 2014 -->
 <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" />
@@ -11,7 +11,7 @@
       @import url("./css/site.css");
     </style>
     <link rel="stylesheet" href="./css/print.css" type="text/css" media="print" />
-    <meta name="Date-Revision-yyyymmdd" content="20130608" />
+    <meta name="Date-Revision-yyyymmdd" content="20140620" />
     <meta http-equiv="Content-Language" content="en" />
         
   </head>
@@ -28,8 +28,8 @@
             
         
                 <div class="xleft">
-        <span id="publishDate">Last Published: 2013-06-08</span>
-                  &nbsp;| <span id="projectVersion">Version: 2.4.0-SNAPSHOT</span>
+        <span id="publishDate">Last Published: 2014-06-20</span>
+                  &nbsp;| <span id="projectVersion">Version: 2.5.0</span>
                       </div>
             <div class="xright">        
         
@@ -82,7 +82,7 @@
   
     <div class="section"><h2>bundle:deploy-file<a name="bundle:deploy-file"></a></h2>
       <p><b>Full name</b>:</p>
-      <p>org.apache.felix:maven-bundle-plugin:2.4.0-SNAPSHOT:deploy-file</p>
+      <p>org.apache.felix:maven-bundle-plugin:2.5.0:deploy-file</p>
       <p><b>Description</b>:</p>
       <div>Deploys bundle details to a remote OBR repository (command-line
 goal)</div>
@@ -308,7 +308,7 @@
       <hr/>
     </div>
     <div id="footer">
-      <div class="xright">Copyright &#169;                    2006-2013
+      <div class="xright">Copyright &#169;                    2006-2014
                         <a href="http://www.apache.org/">The Apache Software Foundation</a>.
             All Rights Reserved.      
         
diff --git a/bundleplugin/doc/site/deploy-mojo.html b/bundleplugin/doc/site/deploy-mojo.html
index a467658..aaad96c 100644
--- a/bundleplugin/doc/site/deploy-mojo.html
+++ b/bundleplugin/doc/site/deploy-mojo.html
@@ -1,5 +1,5 @@
 <!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 Jun 8, 2013 -->
+<!-- Generated by Apache Maven Doxia at Jun 20, 2014 -->
 <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" />
@@ -11,7 +11,7 @@
       @import url("./css/site.css");
     </style>
     <link rel="stylesheet" href="./css/print.css" type="text/css" media="print" />
-    <meta name="Date-Revision-yyyymmdd" content="20130608" />
+    <meta name="Date-Revision-yyyymmdd" content="20140620" />
     <meta http-equiv="Content-Language" content="en" />
         
   </head>
@@ -28,8 +28,8 @@
             
         
                 <div class="xleft">
-        <span id="publishDate">Last Published: 2013-06-08</span>
-                  &nbsp;| <span id="projectVersion">Version: 2.4.0-SNAPSHOT</span>
+        <span id="publishDate">Last Published: 2014-06-20</span>
+                  &nbsp;| <span id="projectVersion">Version: 2.5.0</span>
                       </div>
             <div class="xright">        
         
@@ -82,7 +82,7 @@
   
     <div class="section"><h2>bundle:deploy<a name="bundle:deploy"></a></h2>
       <p><b>Full name</b>:</p>
-      <p>org.apache.felix:maven-bundle-plugin:2.4.0-SNAPSHOT:deploy</p>
+      <p>org.apache.felix:maven-bundle-plugin:2.5.0:deploy</p>
       <p><b>Description</b>:</p>
       <div>Deploys bundle details to a remote OBR repository (life-cycle goal)</div>
       <p><b>Attributes</b>:</p>
@@ -209,7 +209,7 @@
       <hr/>
     </div>
     <div id="footer">
-      <div class="xright">Copyright &#169;                    2006-2013
+      <div class="xright">Copyright &#169;                    2006-2014
                         <a href="http://www.apache.org/">The Apache Software Foundation</a>.
             All Rights Reserved.      
         
diff --git a/bundleplugin/doc/site/index-mojo.html b/bundleplugin/doc/site/index-mojo.html
index 6aa6050..0d715d8 100644
--- a/bundleplugin/doc/site/index-mojo.html
+++ b/bundleplugin/doc/site/index-mojo.html
@@ -1,5 +1,5 @@
 <!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 Jun 8, 2013 -->
+<!-- Generated by Apache Maven Doxia at Jun 20, 2014 -->
 <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" />
@@ -11,7 +11,7 @@
       @import url("./css/site.css");
     </style>
     <link rel="stylesheet" href="./css/print.css" type="text/css" media="print" />
-    <meta name="Date-Revision-yyyymmdd" content="20130608" />
+    <meta name="Date-Revision-yyyymmdd" content="20140620" />
     <meta http-equiv="Content-Language" content="en" />
         
   </head>
@@ -28,8 +28,8 @@
             
         
                 <div class="xleft">
-        <span id="publishDate">Last Published: 2013-06-08</span>
-                  &nbsp;| <span id="projectVersion">Version: 2.4.0-SNAPSHOT</span>
+        <span id="publishDate">Last Published: 2014-06-20</span>
+                  &nbsp;| <span id="projectVersion">Version: 2.5.0</span>
                       </div>
             <div class="xright">        
         
@@ -82,7 +82,7 @@
   
     <div class="section"><h2>bundle:index<a name="bundle:index"></a></h2>
       <p><b>Full name</b>:</p>
-      <p>org.apache.felix:maven-bundle-plugin:2.4.0-SNAPSHOT:index</p>
+      <p>org.apache.felix:maven-bundle-plugin:2.5.0:index</p>
       <p><b>Description</b>:</p>
       <div>Index the content of a maven repository using OBR</div>
       <p><b>Attributes</b>:</p>
@@ -144,7 +144,7 @@
       <hr/>
     </div>
     <div id="footer">
-      <div class="xright">Copyright &#169;                    2006-2013
+      <div class="xright">Copyright &#169;                    2006-2014
                         <a href="http://www.apache.org/">The Apache Software Foundation</a>.
             All Rights Reserved.      
         
diff --git a/bundleplugin/doc/site/index.html b/bundleplugin/doc/site/index.html
index 8cd4772..26a48ad 100644
--- a/bundleplugin/doc/site/index.html
+++ b/bundleplugin/doc/site/index.html
@@ -1,5 +1,5 @@
 <!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 Jun 8, 2013 -->
+<!-- Generated by Apache Maven Doxia at Jun 20, 2014 -->
 <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" />
@@ -12,7 +12,7 @@
     <link rel="stylesheet" href="./css/print.css" type="text/css" media="print" />
       <meta name="author" content="Stuart McCulloch" />
     <meta name="Date-Creation-yyyymmdd" content="20110628" />
-    <meta name="Date-Revision-yyyymmdd" content="20130608" />
+    <meta name="Date-Revision-yyyymmdd" content="20140620" />
     <meta http-equiv="Content-Language" content="en" />
         
   </head>
@@ -29,8 +29,8 @@
             
         
                 <div class="xleft">
-        <span id="publishDate">Last Published: 2013-06-08</span>
-                  &nbsp;| <span id="projectVersion">Version: 2.4.0-SNAPSHOT</span>
+        <span id="publishDate">Last Published: 2014-06-20</span>
+                  &nbsp;| <span id="projectVersion">Version: 2.5.0</span>
                       </div>
             <div class="xright">        
         
@@ -109,7 +109,7 @@
       <hr/>
     </div>
     <div id="footer">
-      <div class="xright">Copyright &#169;                    2006-2013
+      <div class="xright">Copyright &#169;                    2006-2014
                         <a href="http://www.apache.org/">The Apache Software Foundation</a>.
             All Rights Reserved.      
         
diff --git a/bundleplugin/doc/site/install-file-mojo.html b/bundleplugin/doc/site/install-file-mojo.html
index 1a94866..b63d865 100644
--- a/bundleplugin/doc/site/install-file-mojo.html
+++ b/bundleplugin/doc/site/install-file-mojo.html
@@ -1,5 +1,5 @@
 <!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 Jun 8, 2013 -->
+<!-- Generated by Apache Maven Doxia at Jun 20, 2014 -->
 <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" />
@@ -11,7 +11,7 @@
       @import url("./css/site.css");
     </style>
     <link rel="stylesheet" href="./css/print.css" type="text/css" media="print" />
-    <meta name="Date-Revision-yyyymmdd" content="20130608" />
+    <meta name="Date-Revision-yyyymmdd" content="20140620" />
     <meta http-equiv="Content-Language" content="en" />
         
   </head>
@@ -28,8 +28,8 @@
             
         
                 <div class="xleft">
-        <span id="publishDate">Last Published: 2013-06-08</span>
-                  &nbsp;| <span id="projectVersion">Version: 2.4.0-SNAPSHOT</span>
+        <span id="publishDate">Last Published: 2014-06-20</span>
+                  &nbsp;| <span id="projectVersion">Version: 2.5.0</span>
                       </div>
             <div class="xright">        
         
@@ -82,7 +82,7 @@
   
     <div class="section"><h2>bundle:install-file<a name="bundle:install-file"></a></h2>
       <p><b>Full name</b>:</p>
-      <p>org.apache.felix:maven-bundle-plugin:2.4.0-SNAPSHOT:install-file</p>
+      <p>org.apache.felix:maven-bundle-plugin:2.5.0:install-file</p>
       <p><b>Description</b>:</p>
       <div>Installs bundle details in the local OBR repository (command-line
 goal)</div>
@@ -235,7 +235,7 @@
       <hr/>
     </div>
     <div id="footer">
-      <div class="xright">Copyright &#169;                    2006-2013
+      <div class="xright">Copyright &#169;                    2006-2014
                         <a href="http://www.apache.org/">The Apache Software Foundation</a>.
             All Rights Reserved.      
         
diff --git a/bundleplugin/doc/site/install-mojo.html b/bundleplugin/doc/site/install-mojo.html
index 4a0bd57..3eb1e24 100644
--- a/bundleplugin/doc/site/install-mojo.html
+++ b/bundleplugin/doc/site/install-mojo.html
@@ -1,5 +1,5 @@
 <!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 Jun 8, 2013 -->
+<!-- Generated by Apache Maven Doxia at Jun 20, 2014 -->
 <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" />
@@ -11,7 +11,7 @@
       @import url("./css/site.css");
     </style>
     <link rel="stylesheet" href="./css/print.css" type="text/css" media="print" />
-    <meta name="Date-Revision-yyyymmdd" content="20130608" />
+    <meta name="Date-Revision-yyyymmdd" content="20140620" />
     <meta http-equiv="Content-Language" content="en" />
         
   </head>
@@ -28,8 +28,8 @@
             
         
                 <div class="xleft">
-        <span id="publishDate">Last Published: 2013-06-08</span>
-                  &nbsp;| <span id="projectVersion">Version: 2.4.0-SNAPSHOT</span>
+        <span id="publishDate">Last Published: 2014-06-20</span>
+                  &nbsp;| <span id="projectVersion">Version: 2.5.0</span>
                       </div>
             <div class="xright">        
         
@@ -82,7 +82,7 @@
   
     <div class="section"><h2>bundle:install<a name="bundle:install"></a></h2>
       <p><b>Full name</b>:</p>
-      <p>org.apache.felix:maven-bundle-plugin:2.4.0-SNAPSHOT:install</p>
+      <p>org.apache.felix:maven-bundle-plugin:2.5.0:install</p>
       <p><b>Description</b>:</p>
       <div>Installs bundle details in the local OBR repository (life-cycle
 goal)</div>
@@ -137,7 +137,7 @@
       <hr/>
     </div>
     <div id="footer">
-      <div class="xright">Copyright &#169;                    2006-2013
+      <div class="xright">Copyright &#169;                    2006-2014
                         <a href="http://www.apache.org/">The Apache Software Foundation</a>.
             All Rights Reserved.      
         
diff --git a/bundleplugin/doc/site/instructions-mojo.html b/bundleplugin/doc/site/instructions-mojo.html
index 5b51e8d..de26882 100644
--- a/bundleplugin/doc/site/instructions-mojo.html
+++ b/bundleplugin/doc/site/instructions-mojo.html
@@ -1,5 +1,5 @@
 <!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 Jun 8, 2013 -->
+<!-- Generated by Apache Maven Doxia at Jun 20, 2014 -->
 <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" />
@@ -11,7 +11,7 @@
       @import url("./css/site.css");
     </style>
     <link rel="stylesheet" href="./css/print.css" type="text/css" media="print" />
-    <meta name="Date-Revision-yyyymmdd" content="20130608" />
+    <meta name="Date-Revision-yyyymmdd" content="20140620" />
     <meta http-equiv="Content-Language" content="en" />
         
   </head>
@@ -28,8 +28,8 @@
             
         
                 <div class="xleft">
-        <span id="publishDate">Last Published: 2013-06-08</span>
-                  &nbsp;| <span id="projectVersion">Version: 2.4.0-SNAPSHOT</span>
+        <span id="publishDate">Last Published: 2014-06-20</span>
+                  &nbsp;| <span id="projectVersion">Version: 2.5.0</span>
                       </div>
             <div class="xright">        
         
@@ -82,7 +82,7 @@
   
     <div class="section"><h2>bundle:instructions<a name="bundle:instructions"></a></h2>
       <p><b>Full name</b>:</p>
-      <p>org.apache.felix:maven-bundle-plugin:2.4.0-SNAPSHOT:instructions</p>
+      <p>org.apache.felix:maven-bundle-plugin:2.5.0:instructions</p>
       <p><b>Description</b>:</p>
       <div>Generate BND instructions for this project</div>
       <p><b>Attributes</b>:</p>
@@ -174,19 +174,25 @@
             <td>Directory where the manifest will be written<br /><b>Default value is</b>: <tt>${project.build.outputDirectory}/META-INF</tt>.<br /><b>User property is</b>: <tt>manifestLocation</tt>.</td>
           </tr>
           <tr class="b">
+            <td><b><a href="#niceManifest">niceManifest</a></b></td>
+            <td><tt>boolean</tt></td>
+            <td><tt>-</tt></td>
+            <td>(no description)<br /></td>
+          </tr>
+          <tr class="a">
             <td><b><a href="#packaging">packaging</a></b></td>
             <td><tt>String</tt></td>
             <td><tt>-</tt></td>
             <td>Packaging type of the bundle to be installed. For example, &quot;jar&quot;.
 Defaults to none which means use the same packaging as the project.<br /></td>
           </tr>
-          <tr class="a">
+          <tr class="b">
             <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">
+          <tr class="a">
             <td><b><a href="#unpackBundle">unpackBundle</a></b></td>
             <td><tt>boolean</tt></td>
             <td><tt>-</tt></td>
@@ -250,6 +256,11 @@
           <li><b>Required</b>: <tt>No</tt></li>
           <li><b>User Property</b>: <tt>manifestLocation</tt></li>
           <li><b>Default</b>: <tt>${project.build.outputDirectory}/META-INF</tt></li>
+        </ul><hr /><p><b><a name="niceManifest">niceManifest</a>:</b></p>
+        <div>(no description)</div>
+        <ul>
+          <li><b>Type</b>: <tt>boolean</tt></li>
+          <li><b>Required</b>: <tt>No</tt></li>
         </ul><hr /><p><b><a name="outputDirectory">outputDirectory</a>:</b></p>
         <div>The directory for the generated bundles.</div>
         <ul>
@@ -284,7 +295,7 @@
       <hr/>
     </div>
     <div id="footer">
-      <div class="xright">Copyright &#169;                    2006-2013
+      <div class="xright">Copyright &#169;                    2006-2014
                         <a href="http://www.apache.org/">The Apache Software Foundation</a>.
             All Rights Reserved.      
         
diff --git a/bundleplugin/doc/site/issue-tracking.html b/bundleplugin/doc/site/issue-tracking.html
index c4ee2be..1910707 100644
--- a/bundleplugin/doc/site/issue-tracking.html
+++ b/bundleplugin/doc/site/issue-tracking.html
@@ -1,5 +1,5 @@
 <!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 Jun 8, 2013 -->
+<!-- Generated by Apache Maven Doxia at Jun 20, 2014 -->
 <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" />
@@ -10,7 +10,7 @@
       @import url("./css/site.css");
     </style>
     <link rel="stylesheet" href="./css/print.css" type="text/css" media="print" />
-    <meta name="Date-Revision-yyyymmdd" content="20130608" />
+    <meta name="Date-Revision-yyyymmdd" content="20140620" />
     <meta http-equiv="Content-Language" content="en" />
         
   </head>
@@ -27,8 +27,8 @@
             
         
                 <div class="xleft">
-        <span id="publishDate">Last Published: 2013-06-08</span>
-                  &nbsp;| <span id="projectVersion">Version: 2.4.0-SNAPSHOT</span>
+        <span id="publishDate">Last Published: 2014-06-20</span>
+                  &nbsp;| <span id="projectVersion">Version: 2.5.0</span>
                       </div>
             <div class="xright">        
         
@@ -100,14 +100,14 @@
     </div>
     <div id="bodyColumn">
       <div id="contentBox">
-        <div class="section"><h2>Overview<a name="Overview"></a></h2><a name="Overview"></a><p>This project uses <a class="externalLink" href="http://www.atlassian.com/software/jira">JIRA</a> a J2EE-based, issue tracking and project management application.</p></div><div class="section"><h2>Issue Tracking<a name="Issue_Tracking"></a></h2><a name="Issue_Tracking"></a><p>Issues, bugs, and feature requests should be submitted to the following issue tracking system for this project.</p><div class="source"><pre><a class="externalLink" href="http://issues.apache.org/jira/browse/FELIX">http://issues.apache.org/jira/browse/FELIX</a></pre></div></div>
+        <div class="section"><h2>Overview<a name="Overview"></a></h2><a name="Overview"></a><p>This project uses <a class="externalLink" href="http://www.atlassian.com/software/jira">JIRA</a> a J2EE-based, issue tracking and project management application.</p></div><div class="section"><h2>Issue Tracking<a name="Issue_Tracking"></a></h2><a name="Issue_Tracking"></a><p>Issues, bugs, and feature requests should be submitted to the following issue tracking system for this project.</p><div class="source"><pre><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX">https://issues.apache.org/jira/browse/FELIX</a></pre></div></div>
       </div>
     </div>
     <div class="clear">
       <hr/>
     </div>
     <div id="footer">
-      <div class="xright">Copyright &#169;                    2006-2013
+      <div class="xright">Copyright &#169;                    2006-2014
                         <a href="http://www.apache.org/">The Apache Software Foundation</a>.
             All Rights Reserved.      
         
diff --git a/bundleplugin/doc/site/jira-report.html b/bundleplugin/doc/site/jira-report.html
index 84c3358..20c7d14 100644
--- a/bundleplugin/doc/site/jira-report.html
+++ b/bundleplugin/doc/site/jira-report.html
@@ -1,5 +1,5 @@
 <!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 Jun 8, 2013 -->
+<!-- Generated by Apache Maven Doxia at Jun 20, 2014 -->
 <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" />
@@ -10,7 +10,7 @@
       @import url("./css/site.css");
     </style>
     <link rel="stylesheet" href="./css/print.css" type="text/css" media="print" />
-    <meta name="Date-Revision-yyyymmdd" content="20130608" />
+    <meta name="Date-Revision-yyyymmdd" content="20140620" />
     <meta http-equiv="Content-Language" content="en" />
         
   </head>
@@ -27,8 +27,8 @@
             
         
                 <div class="xleft">
-        <span id="publishDate">Last Published: 2013-06-08</span>
-                  &nbsp;| <span id="projectVersion">Version: 2.4.0-SNAPSHOT</span>
+        <span id="publishDate">Last Published: 2014-06-20</span>
+                  &nbsp;| <span id="projectVersion">Version: 2.5.0</span>
                       </div>
             <div class="xright">        
         
@@ -94,14 +94,14 @@
     </div>
     <div id="bodyColumn">
       <div id="contentBox">
-        <div class="section"><h2>JIRA Report<a name="JIRA_Report"></a></h2><a name="JIRA_Report"></a><table border="0" class="bodyTable"><tr class="a"><th>Key</th><th>Summary</th><th>Status</th><th>Resolution</th><th>By</th></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-4005">FELIX-4005</a></td><td>Maven Bundle Plugin fails with ArrayIndexOutOfBoundsException, &quot;Invalid Class File&quot; errors with Java 8 features</td><td>Resolved</td><td>Fixed</td><td>Unassigned</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3347">FELIX-3347</a></td><td>Upper-case environment variables end up in final manifest</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2765">FELIX-2765</a></td><td>bundle plugin throw IllegalArgumentException while do the install</td><td>Closed</td><td>Fixed</td><td>Unassigned</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-661">FELIX-661</a></td><td>maven bundle plugin does not close the accessed fie /jar streams</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-4067">FELIX-4067</a></td><td>Old BND used causes problems during annotations processing</td><td>Resolved</td><td>Fixed</td><td>Unassigned</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3585">FELIX-3585</a></td><td>Dependencies with classes or resources in the default package cannot be embedded</td><td>Resolved</td><td>Fixed</td><td>Unassigned</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2934">FELIX-2934</a></td><td>Bundle-ClassPath contains &quot;.&quot; despite using _wab instruction</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-4017">FELIX-4017</a></td><td>@ProviderType does not work (bnd &quot;provide:=true&quot; annotation?)</td><td>Resolved</td><td>Fixed</td><td>Unassigned</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3973">FELIX-3973</a></td><td>Exclusion from {local-packages} doesn't work anymore</td><td>Resolved</td><td>Fixed</td><td>Unassigned</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3638">FELIX-3638</a></td><td>Missing package import for annotation default value</td><td>Resolved</td><td>Fixed</td><td>Unassigned</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3630">FELIX-3630</a></td><td>Packages exported by bundle are (re)-imported with incorrect version</td><td>Resolved</td><td>Fixed</td><td>Unassigned</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3602">FELIX-3602</a></td><td>The bundle plugin should generate the blueprint header with the file locations</td><td>Resolved</td><td>Fixed</td><td>Guillaume Nodet</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3601">FELIX-3601</a></td><td>Incorrect namespace in component XML for DS Annotations</td><td>Resolved</td><td>Fixed</td><td>Unassigned</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3497">FELIX-3497</a></td><td>Wrong artifact type attached as a secondary artifact when project packaging is set to &quot;pom&quot;</td><td>Resolved</td><td>Fixed</td><td>Unassigned</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3407">FELIX-3407</a></td><td>Imports are missed for generics</td><td>Resolved</td><td>Fixed</td><td>Unassigned</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3352">FELIX-3352</a></td><td>Maven Bundle Plugin ignores resource properties configured inside &lt;filters&gt; section</td><td>Resolved</td><td>Fixed</td><td>Unassigned</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3349">FELIX-3349</a></td><td>wrong bundle manifest contents in some cases</td><td>Resolved</td><td>Fixed</td><td>Unassigned</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3310">FELIX-3310</a></td><td>[patch] maven-bundle-plugin build fails with maven3 (manageArtifactSystemPath is missing)</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3293">FELIX-3293</a></td><td>Exception while creating empty fragment bundles with version 2.3.6</td><td>Resolved</td><td>Fixed</td><td>Unassigned</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3254">FELIX-3254</a></td><td>manifest goal generates wrong Export-Package when Embed-Dependency</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3222">FELIX-3222</a></td><td>[PATCH] build fails with &quot;unreported exception&quot;</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3210">FELIX-3210</a></td><td>Maven bundle plugin remote-clean goal without user confirmation</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3209">FELIX-3209</a></td><td>Make sure the properties passed to BND only include string values</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3208">FELIX-3208</a></td><td>Provide default value for sourcepath when using BND -sources=true</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3206">FELIX-3206</a></td><td>Restore the BND analyzer approach which creates a MANIFEST.MF based on the contents of the jar</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3188">FELIX-3188</a></td><td>[PATCH] exception org.apache.maven.project.artifact.InvalidDependencyVersionException has already been caught</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3185">FELIX-3185</a></td><td>Negative Embed-Dependency clauses aren't handled correctly</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3165">FELIX-3165</a></td><td>Add an option to the manifest goal that will copy any BND generated resources to the target folder</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3092">FELIX-3092</a></td><td>Support relative paths in &quot;urlTemplate&quot; parameter of &quot;bundle:index&quot; goal in maven bundle plugin</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3061">FELIX-3061</a></td><td>improvements to Embed-Dependency logic to allow better m2e integration</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3058">FELIX-3058</a></td><td>maven-bundle-plugin 2.3.5 incompatible with maven-source-plugin (regression)</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3037">FELIX-3037</a></td><td>Plugin does not work with Java 5</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3031">FELIX-3031</a></td><td>maven3 deployment fails where maven2 works</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3011">FELIX-3011</a></td><td>Add a new goal to save the bnd instructions that would be passed onto bnd, to allow people to use other toolchains such as bndtools</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2884">FELIX-2884</a></td><td>The multiplicity isn't taken into account by the maven bundle plugin and bundlerepository when generating the repository xml</td><td>Closed</td><td>Fixed</td><td>Guillaume Nodet</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2872">FELIX-2872</a></td><td>Provide a way to have an easier to read manifest</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2820">FELIX-2820</a></td><td>Provide a default value when using &lt;_wab/&gt;</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2819">FELIX-2819</a></td><td>packageinfo files in src/main/java are ignored</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2812">FELIX-2812</a></td><td>The &lt;Embed-Dependency&gt; filter can fail if your matching against multiple &quot;*&quot; artifact ids.</td><td>Closed</td><td>Fixed</td><td>Hiram Chirino</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2811">FELIX-2811</a></td><td>If &lt;Private-Package&gt;!*&lt;/Private-Package&gt; is defined the all packages should be exported by {local-packages}</td><td>Closed</td><td>Fixed</td><td>Hiram Chirino</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2808">FELIX-2808</a></td><td>maven-bundle-plugin should scan for local packages by looking for *.class files instead of *.java so that all the JVM languages can be supported.</td><td>Closed</td><td>Fixed</td><td>Hiram Chirino</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2701">FELIX-2701</a></td><td>Add a {local-packages} macro for automatically expanding local packages in the &lt;Export-Package&gt; instruction</td><td>Closed</td><td>Fixed</td><td>Guillaume Nodet</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2692">FELIX-2692</a></td><td>Support maven type 'wab' for web bundles</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2449">FELIX-2449</a></td><td>Resource filtering does not use Maven properties specified on the mvn command line via -D command line switches</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2435">FELIX-2435</a></td><td>&lt;supportedProjectType&gt; on a WAR file will switch the project to generate jar artifacts</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2427">FELIX-2427</a></td><td>maven site crashes</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2346">FELIX-2346</a></td><td>mvn bundle:clean removes all, even the existing resources</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2215">FELIX-2215</a></td><td>Refactor bundlerepository and maven bundle plugin obr data model</td><td>Closed</td><td>Fixed</td><td>Guillaume Nodet</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2210">FELIX-2210</a></td><td>Bogus import entries</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2194">FELIX-2194</a></td><td>The manifest and bundle goals seem to generate different manifest informations</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2176">FELIX-2176</a></td><td>Upgrade maven-bundle-plugin to up to date bnd</td><td>Closed</td><td>Fixed</td><td>Richard S. Hall</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2175">FELIX-2175</a></td><td>Improve the Blueprint component to parse / introspect blueprint configuration files and generate OBR service requirements / capabilities accordingly</td><td>Closed</td><td>Fixed</td><td>Guillaume Nodet</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2173">FELIX-2173</a></td><td>Fix inconsistent maven-&gt;osgi version conversion between maven-bundle-plugin and DefaultMaven2OsgiConverter</td><td>Closed</td><td>Fixed</td><td>Guillaume Nodet</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2155">FELIX-2155</a></td><td>The maven bundle plugin generates wrong capabilities for packages with directives</td><td>Closed</td><td>Fixed</td><td>Guillaume Nodet</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2112">FELIX-2112</a></td><td>Carriage returns are removed from instructions, but the lines should be trimmed alltogether</td><td>Closed</td><td>Fixed</td><td>Guillaume Nodet</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2048">FELIX-2048</a></td><td>Service-Component property doesn't allow to use wildcards for filenames</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-1951">FELIX-1951</a></td><td>The SchemaObr.xsd in bundleplugin is incomplete</td><td>Closed</td><td>Fixed</td><td>Guillaume Nodet</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-1936">FELIX-1936</a></td><td>Create Output Directory for Resource-Only WARs</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-1820">FELIX-1820</a></td><td>Fragment-Host version not converted</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-1734">FELIX-1734</a></td><td>The _donotcopy is ignored</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-1634">FELIX-1634</a></td><td>Maven Bundle Plugin disables transitive dependencies</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-1571">FELIX-1571</a></td><td>Bundle-ClassPath without &quot;.&quot; while using maven-bundle-plugin in a war project confuses the plugin</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-1568">FELIX-1568</a></td><td>Goal to transform a maven version into an OSGi version</td><td>Closed</td><td>Fixed</td><td>Guillaume Nodet</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-1552">FELIX-1552</a></td><td>Add support for blueprint and spring-dm declarations to import the discovered packages</td><td>Closed</td><td>Fixed</td><td>Guillaume Nodet</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-1539">FELIX-1539</a></td><td>generated-classes not included in bundle</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-1501">FELIX-1501</a></td><td>Using a macro in Bundle-Version with the manifest goal causes garbage in the Export-Package and Private-Package headers.</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-1461">FELIX-1461</a></td><td>Corrupted repository.xml when maven is run in parallel</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-1439">FELIX-1439</a></td><td>maven-bundle-plugin resource filtering does not substitute project.organization.*</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-1262">FELIX-1262</a></td><td>[regression] shared archive resources cannot be found</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-1148">FELIX-1148</a></td><td>NPE during bundleall goal</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-1054">FELIX-1054</a></td><td>The deploy and deploy-file plugin should write the computed bundle uri</td><td>Closed</td><td>Fixed</td><td>Clement Escoffier</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-1039">FELIX-1039</a></td><td>Inconsistency packaging vs. type</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-1023">FELIX-1023</a></td><td>Category Information not exported to obr file</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-1021">FELIX-1021</a></td><td>Classifier always used even if not explicitly set in the configuration</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-1017">FELIX-1017</a></td><td>Generic types ignored when generating MANIFEST.MF</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-954">FELIX-954</a></td><td>Import-Package should include packages from optional Maven dependencies with resolution=optional</td><td>Closed</td><td>Fixed</td><td>Unassigned</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-941">FELIX-941</a></td><td>Support singleton &amp; fragment-attachment directive generation</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-907">FELIX-907</a></td><td>Regression in latest BND code: negated exports are applied to private packages</td><td>Closed</td><td>Fixed</td><td>Peter Kriens</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-899">FELIX-899</a></td><td>Version attribute missing from Import-Package on provided dependencies</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-843">FELIX-843</a></td><td>Regression: BND 0.0.295 does not augment Ignore-Package with excluded import packages</td><td>Closed</td><td>Fixed</td><td>Peter Kriens</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-831">FELIX-831</a></td><td>bndlib unnecessary modifies valid OSGi Bundle-Version numbers (update to bndlib 0.0.293)</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-806">FELIX-806</a></td><td>changing the internal configuration of the archive plugin doesn't seem to be possible</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-782">FELIX-782</a></td><td>Manifest goal ignores version attribute specified in _exportcontents</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-759">FELIX-759</a></td><td>Version range in import declaration creates a filter using invalid operators (&lt;,&gt;)</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-699">FELIX-699</a></td><td>manifest goal does not interprete _include instruction correctly</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-677">FELIX-677</a></td><td>Parser throws error when DynamicImport-Package contains attributes</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-660">FELIX-660</a></td><td>&quot;Class in different directory than declared&quot; error when bundle classes in a directory other than bundle root</td><td>Closed</td><td>Fixed</td><td>Peter Kriens</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-636">FELIX-636</a></td><td>Bundle-SymbolicName is generated incorrectly</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-620">FELIX-620</a></td><td>manifest goal of maven-bundle-plugin ignores _include instruction</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-580">FELIX-580</a></td><td>Allows maven-bunde-plugin to generate a repository file outide a maven repository with absolute url</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-556">FELIX-556</a></td><td>Filtering mechanims to &lt;Embed-Dependency/&gt;</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-547">FELIX-547</a></td><td>OBR portion of the plugin balks on singular version range of [1.0.0,1.0.0].</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-541">FELIX-541</a></td><td>allow repository.xml to reference to xsl file</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-526">FELIX-526</a></td><td>Allow a mechanism to give preference to local resources over the ones from embedded jars</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-517">FELIX-517</a></td><td>Replacement of {maven-dependencies} in Include-Resource and Bundle-ClassPath can strip Windows path separators</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-505">FELIX-505</a></td><td>maven-bundle-plugin:bundleall modifies dependencies that are already bundles</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-493">FELIX-493</a></td><td>maven-bundle-plugin bundle:install goal install too many artifact</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-477">FELIX-477</a></td><td>BND: Versions with fourth section all numbers are truncated</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-472">FELIX-472</a></td><td>Embed-Dependency, Include-Resource and inline</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3772">FELIX-3772</a></td><td>maven-bundle-plugin does not scan blueprint in workspace outside default location</td><td>Resolved</td><td>Fixed</td><td>Unassigned</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3619">FELIX-3619</a></td><td>&quot;IOException: Failed to delete repository.xml while trying to rename&quot; in maven-bundle-plugin</td><td>Resolved</td><td>Fixed</td><td>Unassigned</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3582">FELIX-3582</a></td><td>finalName not properly populated in maven-bundle-plugin with buildnumber-maven-plugin</td><td>Resolved</td><td>Fixed</td><td>Unassigned</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3300">FELIX-3300</a></td><td>Avoid warning about superfluous export-package instructions for empty directories</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3299">FELIX-3299</a></td><td>Fix instable tests in BundlePluginTest</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3238">FELIX-3238</a></td><td>Unable to filter out classes from identical package in a dependency</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3173">FELIX-3173</a></td><td>Local OBR install failes when there is a space in the full path</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2722">FELIX-2722</a></td><td>With an empty  organization like this &lt;organization/&gt;, maven bundle plugin raises a NPE.</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2657">FELIX-2657</a></td><td>Maven-bundle-plugin uses old version of BndLib</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2656">FELIX-2656</a></td><td>Maven-bundle-plugin identified as not thread-safe in Maven 3.0</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-1985">FELIX-1985</a></td><td>Error when Include-Resource instruction contains duplicate paths.</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-1836">FELIX-1836</a></td><td>Maven resource filtering support for obr.xml</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-1290">FELIX-1290</a></td><td>Missing dependencies silently ignored</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-984">FELIX-984</a></td><td>site's &lt;Bundle-Version&gt; documentation is wrong</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-981">FELIX-981</a></td><td>Warning about split packages even with -split-package directive [maven-bundle-plugin-2.0.0]</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-912">FELIX-912</a></td><td>Improve default Export-Package / Private-Package settings by scanning the project source</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-850">FELIX-850</a></td><td>Wrong symbolic name computed when groupId is a single segment string.</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-807">FELIX-807</a></td><td>conversion of JAR into bundle fails if there are classes is the default name space</td><td>Closed</td><td>Fixed</td><td>Peter Kriens</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-684">FELIX-684</a></td><td>Enable excludeDependencies to check groupId, version, etc. rather than only artifactId</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-561">FELIX-561</a></td><td>Use same level of Bnd in script generated by bundle:ant as in the bundleplugin itself</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-560">FELIX-560</a></td><td>bundle:install and bundle:deploy goals check artifact type is &quot;bundle&quot; instead of using the supportedProjectTypes list</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-554">FELIX-554</a></td><td>allow removing a bundle from a remote OBR</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-553">FELIX-553</a></td><td>allow cleaning a remote OBR</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-549">FELIX-549</a></td><td>Import-Package should not include &quot;snapshot&quot; from snapshot dependencies</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-548">FELIX-548</a></td><td>Import-Package version qualifiers vary depending on dependency scope.</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-546">FELIX-546</a></td><td>Import-Package version inconsistencies.</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-545">FELIX-545</a></td><td>Export-Package version inconsistencies.</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-543">FELIX-543</a></td><td>add switch to prevent classifier being appended to Bundle-Version</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-531">FELIX-531</a></td><td>Allow the import package scope to be set for the bundleall goal in the maven-bundle-plugin</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-523">FELIX-523</a></td><td>Update bundleplugin to use BND 0.0.249</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-519">FELIX-519</a></td><td>maven-bundle-plugin should issue a WARNING for unsupported packaging types</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-499">FELIX-499</a></td><td>Enhance &quot;excludeDependencies&quot; configuration parameter to also support comma-separated list of artifactIds</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-492">FELIX-492</a></td><td>Add support to classifier: enable bunlde:bundle goal to generate classified artifact</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-491">FELIX-491</a></td><td>Merge the maven-obr-plugin and the bundleplugin into a single plugin</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-476">FELIX-476</a></td><td>Improve default Export-Package (used when no Export-Package and Private-Package is set)</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-461">FELIX-461</a></td><td>Ensure manifest goal creates same manifest as bundle goal when project packaging is &quot;bundle&quot;</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-459">FELIX-459</a></td><td>BND: allow customization of the &quot;uses&quot; clause in the generated Export-Package</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-458">FELIX-458</a></td><td>BND: -split-package:=merge-first behaves like merge-last</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-344">FELIX-344</a></td><td>Generate standard maven documentation for the maven-bundle-plugin</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-247">FELIX-247</a></td><td>Add ant goal to maven-bundle-plugin which creates a build.xml and MANIFEST.MF with bundle headers</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-498">FELIX-498</a></td><td>Enable javadoc deployment on OBR repository</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-462">FELIX-462</a></td><td>Support removal of manifest headers added by the bundleplugin</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-460">FELIX-460</a></td><td>Remove &quot;.&quot; from the Bundle-ClassPath when embedding dependencies in a bundle with no local classes</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr></table></div>
+        <div class="section"><h2>JIRA Report<a name="JIRA_Report"></a></h2><a name="JIRA_Report"></a><table border="0" class="bodyTable"><tr class="a"><th>Key</th><th>Summary</th><th>Status</th><th>Resolution</th><th>By</th></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-4005">FELIX-4005</a></td><td>Maven Bundle Plugin fails with ArrayIndexOutOfBoundsException, &quot;Invalid Class File&quot; errors with Java 8 features</td><td>Closed</td><td>Fixed</td><td>&#160;</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3347">FELIX-3347</a></td><td>Upper-case environment variables end up in final manifest</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2765">FELIX-2765</a></td><td>bundle plugin throw IllegalArgumentException while do the install</td><td>Closed</td><td>Fixed</td><td>&#160;</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-661">FELIX-661</a></td><td>maven bundle plugin does not close the accessed fie /jar streams</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-4067">FELIX-4067</a></td><td>Old BND used causes problems during annotations processing</td><td>Closed</td><td>Fixed</td><td>&#160;</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3585">FELIX-3585</a></td><td>Dependencies with classes or resources in the default package cannot be embedded</td><td>Closed</td><td>Fixed</td><td>&#160;</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2934">FELIX-2934</a></td><td>Bundle-ClassPath contains &quot;.&quot; despite using _wab instruction</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-4539">FELIX-4539</a></td><td>Update to Bndlib 2.3.0</td><td>Resolved</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-4518">FELIX-4518</a></td><td>Provide a way to disable some plugins</td><td>Resolved</td><td>Fixed</td><td>Guillaume Nodet</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-4517">FELIX-4517</a></td><td>Generate generic capabilities and requirements for services from blueprint and scr descriptors</td><td>Resolved</td><td>Fixed</td><td>Guillaume Nodet</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-4512">FELIX-4512</a></td><td>Add a new Mojo to invoke the BND Baseline tool</td><td>Closed</td><td>Fixed</td><td>Carsten Ziegeler</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-4017">FELIX-4017</a></td><td>@ProviderType does not work (bnd &quot;provide:=true&quot; annotation?)</td><td>Closed</td><td>Fixed</td><td>&#160;</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3973">FELIX-3973</a></td><td>Exclusion from {local-packages} doesn't work anymore</td><td>Closed</td><td>Fixed</td><td>&#160;</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3638">FELIX-3638</a></td><td>Missing package import for annotation default value</td><td>Closed</td><td>Fixed</td><td>&#160;</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3630">FELIX-3630</a></td><td>Packages exported by bundle are (re)-imported with incorrect version</td><td>Closed</td><td>Fixed</td><td>&#160;</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3602">FELIX-3602</a></td><td>The bundle plugin should generate the blueprint header with the file locations</td><td>Closed</td><td>Fixed</td><td>Guillaume Nodet</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3601">FELIX-3601</a></td><td>Incorrect namespace in component XML for DS Annotations</td><td>Closed</td><td>Fixed</td><td>&#160;</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3497">FELIX-3497</a></td><td>Wrong artifact type attached as a secondary artifact when project packaging is set to &quot;pom&quot;</td><td>Closed</td><td>Fixed</td><td>&#160;</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3462">FELIX-3462</a></td><td>Nicer Manifest formatting</td><td>Resolved</td><td>Fixed</td><td>Guillaume Nodet</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3407">FELIX-3407</a></td><td>Imports are missed for generics</td><td>Closed</td><td>Fixed</td><td>&#160;</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3352">FELIX-3352</a></td><td>Maven Bundle Plugin ignores resource properties configured inside &lt;filters&gt; section</td><td>Closed</td><td>Fixed</td><td>&#160;</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3349">FELIX-3349</a></td><td>wrong bundle manifest contents in some cases</td><td>Closed</td><td>Fixed</td><td>&#160;</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3310">FELIX-3310</a></td><td>[patch] maven-bundle-plugin build fails with maven3 (manageArtifactSystemPath is missing)</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3293">FELIX-3293</a></td><td>Exception while creating empty fragment bundles with version 2.3.6</td><td>Closed</td><td>Fixed</td><td>&#160;</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3254">FELIX-3254</a></td><td>manifest goal generates wrong Export-Package when Embed-Dependency</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3222">FELIX-3222</a></td><td>[PATCH] build fails with &quot;unreported exception&quot;</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3210">FELIX-3210</a></td><td>Maven bundle plugin remote-clean goal without user confirmation</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3209">FELIX-3209</a></td><td>Make sure the properties passed to BND only include string values</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3208">FELIX-3208</a></td><td>Provide default value for sourcepath when using BND -sources=true</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3206">FELIX-3206</a></td><td>Restore the BND analyzer approach which creates a MANIFEST.MF based on the contents of the jar</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3188">FELIX-3188</a></td><td>[PATCH] exception org.apache.maven.project.artifact.InvalidDependencyVersionException has already been caught</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3185">FELIX-3185</a></td><td>Negative Embed-Dependency clauses aren't handled correctly</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3165">FELIX-3165</a></td><td>Add an option to the manifest goal that will copy any BND generated resources to the target folder</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3092">FELIX-3092</a></td><td>Support relative paths in &quot;urlTemplate&quot; parameter of &quot;bundle:index&quot; goal in maven bundle plugin</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3061">FELIX-3061</a></td><td>improvements to Embed-Dependency logic to allow better m2e integration</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3058">FELIX-3058</a></td><td>maven-bundle-plugin 2.3.5 incompatible with maven-source-plugin (regression)</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3037">FELIX-3037</a></td><td>Plugin does not work with Java 5</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3031">FELIX-3031</a></td><td>maven3 deployment fails where maven2 works</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-3011">FELIX-3011</a></td><td>Add a new goal to save the bnd instructions that would be passed onto bnd, to allow people to use other toolchains such as bndtools</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2884">FELIX-2884</a></td><td>The multiplicity isn't taken into account by the maven bundle plugin and bundlerepository when generating the repository xml</td><td>Closed</td><td>Fixed</td><td>Guillaume Nodet</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2872">FELIX-2872</a></td><td>Provide a way to have an easier to read manifest</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2820">FELIX-2820</a></td><td>Provide a default value when using &lt;_wab/&gt;</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2819">FELIX-2819</a></td><td>packageinfo files in src/main/java are ignored</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2812">FELIX-2812</a></td><td>The &lt;Embed-Dependency&gt; filter can fail if your matching against multiple &quot;*&quot; artifact ids.</td><td>Closed</td><td>Fixed</td><td>Hiram Chirino</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2811">FELIX-2811</a></td><td>If &lt;Private-Package&gt;!*&lt;/Private-Package&gt; is defined the all packages should be exported by {local-packages}</td><td>Closed</td><td>Fixed</td><td>Hiram Chirino</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2808">FELIX-2808</a></td><td>maven-bundle-plugin should scan for local packages by looking for *.class files instead of *.java so that all the JVM languages can be supported.</td><td>Closed</td><td>Fixed</td><td>Hiram Chirino</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2701">FELIX-2701</a></td><td>Add a {local-packages} macro for automatically expanding local packages in the &lt;Export-Package&gt; instruction</td><td>Closed</td><td>Fixed</td><td>Guillaume Nodet</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2692">FELIX-2692</a></td><td>Support maven type 'wab' for web bundles</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2449">FELIX-2449</a></td><td>Resource filtering does not use Maven properties specified on the mvn command line via -D command line switches</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2435">FELIX-2435</a></td><td>&lt;supportedProjectType&gt; on a WAR file will switch the project to generate jar artifacts</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2427">FELIX-2427</a></td><td>maven site crashes</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2346">FELIX-2346</a></td><td>mvn bundle:clean removes all, even the existing resources</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2215">FELIX-2215</a></td><td>Refactor bundlerepository and maven bundle plugin obr data model</td><td>Closed</td><td>Fixed</td><td>Guillaume Nodet</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2210">FELIX-2210</a></td><td>Bogus import entries</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2194">FELIX-2194</a></td><td>The manifest and bundle goals seem to generate different manifest informations</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2176">FELIX-2176</a></td><td>Upgrade maven-bundle-plugin to up to date bnd</td><td>Closed</td><td>Fixed</td><td>Richard S. Hall</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2175">FELIX-2175</a></td><td>Improve the Blueprint component to parse / introspect blueprint configuration files and generate OBR service requirements / capabilities accordingly</td><td>Closed</td><td>Fixed</td><td>Guillaume Nodet</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2173">FELIX-2173</a></td><td>Fix inconsistent maven-&gt;osgi version conversion between maven-bundle-plugin and DefaultMaven2OsgiConverter</td><td>Closed</td><td>Fixed</td><td>Guillaume Nodet</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2155">FELIX-2155</a></td><td>The maven bundle plugin generates wrong capabilities for packages with directives</td><td>Closed</td><td>Fixed</td><td>Guillaume Nodet</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2112">FELIX-2112</a></td><td>Carriage returns are removed from instructions, but the lines should be trimmed alltogether</td><td>Closed</td><td>Fixed</td><td>Guillaume Nodet</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-2048">FELIX-2048</a></td><td>Service-Component property doesn't allow to use wildcards for filenames</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-1951">FELIX-1951</a></td><td>The SchemaObr.xsd in bundleplugin is incomplete</td><td>Closed</td><td>Fixed</td><td>Guillaume Nodet</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-1936">FELIX-1936</a></td><td>Create Output Directory for Resource-Only WARs</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-1820">FELIX-1820</a></td><td>Fragment-Host version not converted</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-1734">FELIX-1734</a></td><td>The _donotcopy is ignored</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-1634">FELIX-1634</a></td><td>Maven Bundle Plugin disables transitive dependencies</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-1571">FELIX-1571</a></td><td>Bundle-ClassPath without &quot;.&quot; while using maven-bundle-plugin in a war project confuses the plugin</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-1568">FELIX-1568</a></td><td>Goal to transform a maven version into an OSGi version</td><td>Closed</td><td>Fixed</td><td>Guillaume Nodet</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-1552">FELIX-1552</a></td><td>Add support for blueprint and spring-dm declarations to import the discovered packages</td><td>Closed</td><td>Fixed</td><td>Guillaume Nodet</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-1539">FELIX-1539</a></td><td>generated-classes not included in bundle</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-1501">FELIX-1501</a></td><td>Using a macro in Bundle-Version with the manifest goal causes garbage in the Export-Package and Private-Package headers.</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-1461">FELIX-1461</a></td><td>Corrupted repository.xml when maven is run in parallel</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-1439">FELIX-1439</a></td><td>maven-bundle-plugin resource filtering does not substitute project.organization.*</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-1262">FELIX-1262</a></td><td>[regression] shared archive resources cannot be found</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-1148">FELIX-1148</a></td><td>NPE during bundleall goal</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-1054">FELIX-1054</a></td><td>The deploy and deploy-file plugin should write the computed bundle uri</td><td>Closed</td><td>Fixed</td><td>Clement Escoffier</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-1039">FELIX-1039</a></td><td>Inconsistency packaging vs. type</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-1023">FELIX-1023</a></td><td>Category Information not exported to obr file</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-1021">FELIX-1021</a></td><td>Classifier always used even if not explicitly set in the configuration</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-1017">FELIX-1017</a></td><td>Generic types ignored when generating MANIFEST.MF</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-954">FELIX-954</a></td><td>Import-Package should include packages from optional Maven dependencies with resolution=optional</td><td>Closed</td><td>Fixed</td><td>&#160;</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-941">FELIX-941</a></td><td>Support singleton &amp; fragment-attachment directive generation</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-907">FELIX-907</a></td><td>Regression in latest BND code: negated exports are applied to private packages</td><td>Closed</td><td>Fixed</td><td>Peter Kriens</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-899">FELIX-899</a></td><td>Version attribute missing from Import-Package on provided dependencies</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-843">FELIX-843</a></td><td>Regression: BND 0.0.295 does not augment Ignore-Package with excluded import packages</td><td>Closed</td><td>Fixed</td><td>Peter Kriens</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-831">FELIX-831</a></td><td>bndlib unnecessary modifies valid OSGi Bundle-Version numbers (update to bndlib 0.0.293)</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-806">FELIX-806</a></td><td>changing the internal configuration of the archive plugin doesn't seem to be possible</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-782">FELIX-782</a></td><td>Manifest goal ignores version attribute specified in _exportcontents</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-759">FELIX-759</a></td><td>Version range in import declaration creates a filter using invalid operators (&lt;,&gt;)</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-699">FELIX-699</a></td><td>manifest goal does not interprete _include instruction correctly</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-677">FELIX-677</a></td><td>Parser throws error when DynamicImport-Package contains attributes</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-660">FELIX-660</a></td><td>&quot;Class in different directory than declared&quot; error when bundle classes in a directory other than bundle root</td><td>Closed</td><td>Fixed</td><td>Peter Kriens</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-636">FELIX-636</a></td><td>Bundle-SymbolicName is generated incorrectly</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="a"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-620">FELIX-620</a></td><td>manifest goal of maven-bundle-plugin ignores _include instruction</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr><tr class="b"><td><a class="externalLink" href="https://issues.apache.org/jira/browse/FELIX-580">FELIX-580</a></td><td>Allows maven-bunde-plugin to generate a repository file outide a maven repository with absolute url</td><td>Closed</td><td>Fixed</td><td>Stuart McCulloch</td></tr></table></div>
       </div>
     </div>
     <div class="clear">
       <hr/>
     </div>
     <div id="footer">
-      <div class="xright">Copyright &#169;                    2006-2013
+      <div class="xright">Copyright &#169;                    2006-2014
                         <a href="http://www.apache.org/">The Apache Software Foundation</a>.
             All Rights Reserved.      
         
diff --git a/bundleplugin/doc/site/license.html b/bundleplugin/doc/site/license.html
index 823c92b..e652446 100644
--- a/bundleplugin/doc/site/license.html
+++ b/bundleplugin/doc/site/license.html
@@ -1,5 +1,5 @@
 <!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 Jun 8, 2013 -->
+<!-- Generated by Apache Maven Doxia at Jun 20, 2014 -->
 <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" />
@@ -10,7 +10,7 @@
       @import url("./css/site.css");
     </style>
     <link rel="stylesheet" href="./css/print.css" type="text/css" media="print" />
-    <meta name="Date-Revision-yyyymmdd" content="20130608" />
+    <meta name="Date-Revision-yyyymmdd" content="20140620" />
     <meta http-equiv="Content-Language" content="en" />
         
   </head>
@@ -27,8 +27,8 @@
             
         
                 <div class="xleft">
-        <span id="publishDate">Last Published: 2013-06-08</span>
-                  &nbsp;| <span id="projectVersion">Version: 2.4.0-SNAPSHOT</span>
+        <span id="publishDate">Last Published: 2014-06-20</span>
+                  &nbsp;| <span id="projectVersion">Version: 2.5.0</span>
                       </div>
             <div class="xright">        
         
@@ -309,7 +309,7 @@
       <hr/>
     </div>
     <div id="footer">
-      <div class="xright">Copyright &#169;                    2006-2013
+      <div class="xright">Copyright &#169;                    2006-2014
                         <a href="http://www.apache.org/">The Apache Software Foundation</a>.
             All Rights Reserved.      
         
diff --git a/bundleplugin/doc/site/mail-lists.html b/bundleplugin/doc/site/mail-lists.html
index a084486..f0c8f65 100644
--- a/bundleplugin/doc/site/mail-lists.html
+++ b/bundleplugin/doc/site/mail-lists.html
@@ -1,5 +1,5 @@
 <!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 Jun 8, 2013 -->
+<!-- Generated by Apache Maven Doxia at Jun 20, 2014 -->
 <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" />
@@ -10,7 +10,7 @@
       @import url("./css/site.css");
     </style>
     <link rel="stylesheet" href="./css/print.css" type="text/css" media="print" />
-    <meta name="Date-Revision-yyyymmdd" content="20130608" />
+    <meta name="Date-Revision-yyyymmdd" content="20140620" />
     <meta http-equiv="Content-Language" content="en" />
         
   </head>
@@ -27,8 +27,8 @@
             
         
                 <div class="xleft">
-        <span id="publishDate">Last Published: 2013-06-08</span>
-                  &nbsp;| <span id="projectVersion">Version: 2.4.0-SNAPSHOT</span>
+        <span id="publishDate">Last Published: 2014-06-20</span>
+                  &nbsp;| <span id="projectVersion">Version: 2.5.0</span>
                       </div>
             <div class="xright">        
         
@@ -107,7 +107,7 @@
       <hr/>
     </div>
     <div id="footer">
-      <div class="xright">Copyright &#169;                    2006-2013
+      <div class="xright">Copyright &#169;                    2006-2014
                         <a href="http://www.apache.org/">The Apache Software Foundation</a>.
             All Rights Reserved.      
         
diff --git a/bundleplugin/doc/site/manifest-mojo.html b/bundleplugin/doc/site/manifest-mojo.html
index 36c4fd0..edcfd8d 100644
--- a/bundleplugin/doc/site/manifest-mojo.html
+++ b/bundleplugin/doc/site/manifest-mojo.html
@@ -1,5 +1,5 @@
 <!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 Jun 8, 2013 -->
+<!-- Generated by Apache Maven Doxia at Jun 20, 2014 -->
 <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" />
@@ -11,7 +11,7 @@
       @import url("./css/site.css");
     </style>
     <link rel="stylesheet" href="./css/print.css" type="text/css" media="print" />
-    <meta name="Date-Revision-yyyymmdd" content="20130608" />
+    <meta name="Date-Revision-yyyymmdd" content="20140620" />
     <meta http-equiv="Content-Language" content="en" />
         
   </head>
@@ -28,8 +28,8 @@
             
         
                 <div class="xleft">
-        <span id="publishDate">Last Published: 2013-06-08</span>
-                  &nbsp;| <span id="projectVersion">Version: 2.4.0-SNAPSHOT</span>
+        <span id="publishDate">Last Published: 2014-06-20</span>
+                  &nbsp;| <span id="projectVersion">Version: 2.5.0</span>
                       </div>
             <div class="xright">        
         
@@ -82,7 +82,7 @@
   
     <div class="section"><h2>bundle:manifest<a name="bundle:manifest"></a></h2>
       <p><b>Full name</b>:</p>
-      <p>org.apache.felix:maven-bundle-plugin:2.4.0-SNAPSHOT:manifest</p>
+      <p>org.apache.felix:maven-bundle-plugin:2.5.0:manifest</p>
       <p><b>Description</b>:</p>
       <div>Generate an OSGi manifest for this project</div>
       <p><b>Attributes</b>:</p>
@@ -174,26 +174,32 @@
             <td>Directory where the manifest will be written<br /><b>Default value is</b>: <tt>${project.build.outputDirectory}/META-INF</tt>.<br /><b>User property is</b>: <tt>manifestLocation</tt>.</td>
           </tr>
           <tr class="b">
+            <td><b><a href="#niceManifest">niceManifest</a></b></td>
+            <td><tt>boolean</tt></td>
+            <td><tt>-</tt></td>
+            <td>(no description)<br /></td>
+          </tr>
+          <tr class="a">
             <td><b><a href="#packaging">packaging</a></b></td>
             <td><tt>String</tt></td>
             <td><tt>-</tt></td>
             <td>Packaging type of the bundle to be installed. For example, &quot;jar&quot;.
 Defaults to none which means use the same packaging as the project.<br /></td>
           </tr>
-          <tr class="a">
+          <tr class="b">
             <td><b><a href="#rebuildBundle">rebuildBundle</a></b></td>
             <td><tt>boolean</tt></td>
             <td><tt>-</tt></td>
             <td>When true, generate the manifest by rebuilding the full bundle in
 memory<br /><b>User property is</b>: <tt>rebuildBundle</tt>.</td>
           </tr>
-          <tr class="b">
+          <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="a">
+          <tr class="b">
             <td><b><a href="#unpackBundle">unpackBundle</a></b></td>
             <td><tt>boolean</tt></td>
             <td><tt>-</tt></td>
@@ -257,6 +263,11 @@
           <li><b>Required</b>: <tt>No</tt></li>
           <li><b>User Property</b>: <tt>manifestLocation</tt></li>
           <li><b>Default</b>: <tt>${project.build.outputDirectory}/META-INF</tt></li>
+        </ul><hr /><p><b><a name="niceManifest">niceManifest</a>:</b></p>
+        <div>(no description)</div>
+        <ul>
+          <li><b>Type</b>: <tt>boolean</tt></li>
+          <li><b>Required</b>: <tt>No</tt></li>
         </ul><hr /><p><b><a name="outputDirectory">outputDirectory</a>:</b></p>
         <div>The directory for the generated bundles.</div>
         <ul>
@@ -298,7 +309,7 @@
       <hr/>
     </div>
     <div id="footer">
-      <div class="xright">Copyright &#169;                    2006-2013
+      <div class="xright">Copyright &#169;                    2006-2014
                         <a href="http://www.apache.org/">The Apache Software Foundation</a>.
             All Rights Reserved.      
         
diff --git a/bundleplugin/doc/site/plugin-info.html b/bundleplugin/doc/site/plugin-info.html
index c103ad8..4097601 100644
--- a/bundleplugin/doc/site/plugin-info.html
+++ b/bundleplugin/doc/site/plugin-info.html
@@ -1,5 +1,5 @@
 <!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 Jun 8, 2013 -->
+<!-- Generated by Apache Maven Doxia at Jun 20, 2014 -->
 <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" />
@@ -10,7 +10,7 @@
       @import url("./css/site.css");
     </style>
     <link rel="stylesheet" href="./css/print.css" type="text/css" media="print" />
-    <meta name="Date-Revision-yyyymmdd" content="20130608" />
+    <meta name="Date-Revision-yyyymmdd" content="20140620" />
     <meta http-equiv="Content-Language" content="en" />
         
   </head>
@@ -27,8 +27,8 @@
             
         
                 <div class="xleft">
-        <span id="publishDate">Last Published: 2013-06-08</span>
-                  &nbsp;| <span id="projectVersion">Version: 2.4.0-SNAPSHOT</span>
+        <span id="publishDate">Last Published: 2014-06-20</span>
+                  &nbsp;| <span id="projectVersion">Version: 2.5.0</span>
                       </div>
             <div class="xright">        
         
@@ -94,13 +94,13 @@
     </div>
     <div id="bodyColumn">
       <div id="contentBox">
-        <div class="section"><h2>Plugin Documentation<a name="Plugin_Documentation"></a></h2><a name="Plugin_Documentation"></a><p>Goals available for this plugin:</p><table border="0" class="bodyTable"><tr class="a"><th>Goal</th><th>Description</th></tr><tr class="b"><td><a href="ant-mojo.html">bundle:ant</a></td><td>Generate Ant script to create the bundle (you should run ant:ant
-first).</td></tr><tr class="a"><td><a href="bundle-mojo.html">bundle:bundle</a></td><td>Create an OSGi bundle from Maven project</td></tr><tr class="b"><td><a href="bundleall-mojo.html">bundle:bundleall</a></td><td><strong>Deprecated.</strong> The bundleall goal is no longer supported and may be removed in a
-future release</td></tr><tr class="a"><td><a href="clean-mojo.html">bundle:clean</a></td><td>Clean an OBR repository by finding and removing missing resources.</td></tr><tr class="b"><td><a href="cleanVersions-mojo.html">bundle:cleanVersions</a></td><td>No description.</td></tr><tr class="a"><td><a href="deploy-mojo.html">bundle:deploy</a></td><td>Deploys bundle details to a remote OBR repository (life-cycle goal)</td></tr><tr class="b"><td><a href="deploy-file-mojo.html">bundle:deploy-file</a></td><td>Deploys bundle details to a remote OBR repository (command-line
-goal)</td></tr><tr class="a"><td><a href="index-mojo.html">bundle:index</a></td><td>Index the content of a maven repository using OBR</td></tr><tr class="b"><td><a href="install-mojo.html">bundle:install</a></td><td>Installs bundle details in the local OBR repository (life-cycle
-goal)</td></tr><tr class="a"><td><a href="install-file-mojo.html">bundle:install-file</a></td><td>Installs bundle details in the local OBR repository (command-line
-goal)</td></tr><tr class="b"><td><a href="instructions-mojo.html">bundle:instructions</a></td><td>Generate BND instructions for this project</td></tr><tr class="a"><td><a href="manifest-mojo.html">bundle:manifest</a></td><td>Generate an OSGi manifest for this project</td></tr><tr class="b"><td><a href="remote-clean-mojo.html">bundle:remote-clean</a></td><td>Clean a remote repository file. It just looks for every resources
-and check that pointed file exists.</td></tr><tr class="a"><td><a href="wrap-mojo.html">bundle:wrap</a></td><td><strong>Deprecated.</strong> The wrap goal is no longer supported and may be removed in a future
+        <div class="section"><h2>Plugin Documentation<a name="Plugin_Documentation"></a></h2><a name="Plugin_Documentation"></a><p>Goals available for this plugin:</p><table border="0" class="bodyTable"><tr class="a"><th>Goal</th><th>Report?</th><th>Description</th></tr><tr class="b"><td><a href="ant-mojo.html">bundle:ant</a></td><td>No</td><td>Generate Ant script to create the bundle (you should run ant:ant
+first).</td></tr><tr class="a"><td><a href="baseline-mojo.html">bundle:baseline</a></td><td>No</td><td>BND Baseline check between two bundles.</td></tr><tr class="b"><td><a href="baseline-report-mojo.html">bundle:baseline-report</a></td><td>Yes</td><td>BND Baseline report.</td></tr><tr class="a"><td><a href="bundle-mojo.html">bundle:bundle</a></td><td>No</td><td>Create an OSGi bundle from Maven project</td></tr><tr class="b"><td><a href="bundleall-mojo.html">bundle:bundleall</a></td><td>No</td><td><strong>Deprecated.</strong> The bundleall goal is no longer supported and may be removed in a
+future release</td></tr><tr class="a"><td><a href="clean-mojo.html">bundle:clean</a></td><td>No</td><td>Clean an OBR repository by finding and removing missing resources.</td></tr><tr class="b"><td><a href="cleanVersions-mojo.html">bundle:cleanVersions</a></td><td>No</td><td>No description.</td></tr><tr class="a"><td><a href="deploy-mojo.html">bundle:deploy</a></td><td>No</td><td>Deploys bundle details to a remote OBR repository (life-cycle goal)</td></tr><tr class="b"><td><a href="deploy-file-mojo.html">bundle:deploy-file</a></td><td>No</td><td>Deploys bundle details to a remote OBR repository (command-line
+goal)</td></tr><tr class="a"><td><a href="index-mojo.html">bundle:index</a></td><td>No</td><td>Index the content of a maven repository using OBR</td></tr><tr class="b"><td><a href="install-mojo.html">bundle:install</a></td><td>No</td><td>Installs bundle details in the local OBR repository (life-cycle
+goal)</td></tr><tr class="a"><td><a href="install-file-mojo.html">bundle:install-file</a></td><td>No</td><td>Installs bundle details in the local OBR repository (command-line
+goal)</td></tr><tr class="b"><td><a href="instructions-mojo.html">bundle:instructions</a></td><td>No</td><td>Generate BND instructions for this project</td></tr><tr class="a"><td><a href="manifest-mojo.html">bundle:manifest</a></td><td>No</td><td>Generate an OSGi manifest for this project</td></tr><tr class="b"><td><a href="remote-clean-mojo.html">bundle:remote-clean</a></td><td>No</td><td>Clean a remote repository file. It just looks for every resources
+and check that pointed file exists.</td></tr><tr class="a"><td><a href="wrap-mojo.html">bundle:wrap</a></td><td>No</td><td><strong>Deprecated.</strong> The wrap goal is no longer supported and may be removed in a future
 release</td></tr></table><div class="section"><h3>System Requirements<a name="System_Requirements"></a></h3><a name="System_Requirements"></a><p>The following specifies the minimum requirements to run this Maven plugin:</p><table border="0" class="bodyTable"><tr class="a"><td>Maven</td><td>2.0</td></tr><tr class="b"><td>JDK</td><td>1.5</td></tr><tr class="a"><td>Memory</td><td>No minimum requirement.</td></tr><tr class="b"><td>Disk Space</td><td>No minimum requirement.</td></tr></table></div><div class="section"><h3>Usage<a name="Usage"></a></h3><a name="Usage"></a><p>You should specify the version in your project's plugin configuration:</p><div class="source"><pre>&lt;project&gt;
   ...
   &lt;build&gt;
@@ -110,7 +110,7 @@
         &lt;plugin&gt;
           &lt;groupId&gt;org.apache.felix&lt;/groupId&gt;
           &lt;artifactId&gt;maven-bundle-plugin&lt;/artifactId&gt;
-          &lt;version&gt;2.4.0-SNAPSHOT&lt;/version&gt;
+          &lt;version&gt;2.5.0&lt;/version&gt;
         &lt;/plugin&gt;
         ...
       &lt;/plugins&gt;
@@ -120,12 +120,24 @@
       &lt;plugin&gt;
         &lt;groupId&gt;org.apache.felix&lt;/groupId&gt;
         &lt;artifactId&gt;maven-bundle-plugin&lt;/artifactId&gt;
-        &lt;version&gt;2.4.0-SNAPSHOT&lt;/version&gt;
+        &lt;version&gt;2.5.0&lt;/version&gt;
       &lt;/plugin&gt;
       ...
     &lt;/plugins&gt;
   &lt;/build&gt;
   ...
+  &lt;!-- To use the report goals in your POM or parent POM --&gt;
+  &lt;reporting&gt;
+    &lt;plugins&gt;
+      &lt;plugin&gt;
+        &lt;groupId&gt;org.apache.felix&lt;/groupId&gt;
+        &lt;artifactId&gt;maven-bundle-plugin&lt;/artifactId&gt;
+        &lt;version&gt;2.5.0&lt;/version&gt;
+      &lt;/plugin&gt;
+      ...
+    &lt;/plugins&gt;
+  &lt;/reporting&gt;
+  ...
 &lt;/project&gt;
 </pre></div><p>For more information, see <a class="externalLink" href="http://maven.apache.org/guides/mini/guide-configuring-plugins.html">&quot;Guide to Configuring Plug-ins&quot;</a></p></div></div>
       </div>
@@ -134,7 +146,7 @@
       <hr/>
     </div>
     <div id="footer">
-      <div class="xright">Copyright &#169;                    2006-2013
+      <div class="xright">Copyright &#169;                    2006-2014
                         <a href="http://www.apache.org/">The Apache Software Foundation</a>.
             All Rights Reserved.      
         
diff --git a/bundleplugin/doc/site/project-info.html b/bundleplugin/doc/site/project-info.html
index 35226ad..7ab8b45 100644
--- a/bundleplugin/doc/site/project-info.html
+++ b/bundleplugin/doc/site/project-info.html
@@ -1,5 +1,5 @@
 <!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 Jun 8, 2013 -->
+<!-- Generated by Apache Maven Doxia at Jun 20, 2014 -->
 <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" />
@@ -10,7 +10,7 @@
       @import url("./css/site.css");
     </style>
     <link rel="stylesheet" href="./css/print.css" type="text/css" media="print" />
-    <meta name="Date-Revision-yyyymmdd" content="20130608" />
+    <meta name="Date-Revision-yyyymmdd" content="20140620" />
     <meta http-equiv="Content-Language" content="en" />
         
   </head>
@@ -27,8 +27,8 @@
             
         
                 <div class="xleft">
-        <span id="publishDate">Last Published: 2013-06-08</span>
-                  &nbsp;| <span id="projectVersion">Version: 2.4.0-SNAPSHOT</span>
+        <span id="publishDate">Last Published: 2014-06-20</span>
+                  &nbsp;| <span id="projectVersion">Version: 2.5.0</span>
                       </div>
             <div class="xright">        
         
@@ -110,7 +110,7 @@
       <hr/>
     </div>
     <div id="footer">
-      <div class="xright">Copyright &#169;                    2006-2013
+      <div class="xright">Copyright &#169;                    2006-2014
                         <a href="http://www.apache.org/">The Apache Software Foundation</a>.
             All Rights Reserved.      
         
diff --git a/bundleplugin/doc/site/project-reports.html b/bundleplugin/doc/site/project-reports.html
index d5aee44..7983d32 100644
--- a/bundleplugin/doc/site/project-reports.html
+++ b/bundleplugin/doc/site/project-reports.html
@@ -1,5 +1,5 @@
 <!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 Jun 8, 2013 -->
+<!-- Generated by Apache Maven Doxia at Jun 20, 2014 -->
 <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" />
@@ -10,7 +10,7 @@
       @import url("./css/site.css");
     </style>
     <link rel="stylesheet" href="./css/print.css" type="text/css" media="print" />
-    <meta name="Date-Revision-yyyymmdd" content="20130608" />
+    <meta name="Date-Revision-yyyymmdd" content="20140620" />
     <meta http-equiv="Content-Language" content="en" />
         
   </head>
@@ -27,8 +27,8 @@
             
         
                 <div class="xleft">
-        <span id="publishDate">Last Published: 2013-06-08</span>
-                  &nbsp;| <span id="projectVersion">Version: 2.4.0-SNAPSHOT</span>
+        <span id="publishDate">Last Published: 2014-06-20</span>
+                  &nbsp;| <span id="projectVersion">Version: 2.5.0</span>
                       </div>
             <div class="xright">        
         
@@ -101,7 +101,7 @@
       <hr/>
     </div>
     <div id="footer">
-      <div class="xright">Copyright &#169;                    2006-2013
+      <div class="xright">Copyright &#169;                    2006-2014
                         <a href="http://www.apache.org/">The Apache Software Foundation</a>.
             All Rights Reserved.      
         
diff --git a/bundleplugin/doc/site/remote-clean-mojo.html b/bundleplugin/doc/site/remote-clean-mojo.html
index 3d45d6e..f7f63d6 100644
--- a/bundleplugin/doc/site/remote-clean-mojo.html
+++ b/bundleplugin/doc/site/remote-clean-mojo.html
@@ -1,5 +1,5 @@
 <!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 Jun 8, 2013 -->
+<!-- Generated by Apache Maven Doxia at Jun 20, 2014 -->
 <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" />
@@ -11,7 +11,7 @@
       @import url("./css/site.css");
     </style>
     <link rel="stylesheet" href="./css/print.css" type="text/css" media="print" />
-    <meta name="Date-Revision-yyyymmdd" content="20130608" />
+    <meta name="Date-Revision-yyyymmdd" content="20140620" />
     <meta http-equiv="Content-Language" content="en" />
         
   </head>
@@ -28,8 +28,8 @@
             
         
                 <div class="xleft">
-        <span id="publishDate">Last Published: 2013-06-08</span>
-                  &nbsp;| <span id="projectVersion">Version: 2.4.0-SNAPSHOT</span>
+        <span id="publishDate">Last Published: 2014-06-20</span>
+                  &nbsp;| <span id="projectVersion">Version: 2.5.0</span>
                       </div>
             <div class="xright">        
         
@@ -82,7 +82,7 @@
   
     <div class="section"><h2>bundle:remote-clean<a name="bundle:remote-clean"></a></h2>
       <p><b>Full name</b>:</p>
-      <p>org.apache.felix:maven-bundle-plugin:2.4.0-SNAPSHOT:remote-clean</p>
+      <p>org.apache.felix:maven-bundle-plugin:2.5.0:remote-clean</p>
       <p><b>Description</b>:</p>
       <div>Clean a remote repository file. It just looks for every resources
 and check that pointed file exists.</div>
@@ -196,7 +196,7 @@
       <hr/>
     </div>
     <div id="footer">
-      <div class="xright">Copyright &#169;                    2006-2013
+      <div class="xright">Copyright &#169;                    2006-2014
                         <a href="http://www.apache.org/">The Apache Software Foundation</a>.
             All Rights Reserved.      
         
diff --git a/bundleplugin/doc/site/source-repository.html b/bundleplugin/doc/site/source-repository.html
index 955f2cf..1240947 100644
--- a/bundleplugin/doc/site/source-repository.html
+++ b/bundleplugin/doc/site/source-repository.html
@@ -1,5 +1,5 @@
 <!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 Jun 8, 2013 -->
+<!-- Generated by Apache Maven Doxia at Jun 20, 2014 -->
 <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" />
@@ -10,7 +10,7 @@
       @import url("./css/site.css");
     </style>
     <link rel="stylesheet" href="./css/print.css" type="text/css" media="print" />
-    <meta name="Date-Revision-yyyymmdd" content="20130608" />
+    <meta name="Date-Revision-yyyymmdd" content="20140620" />
     <meta http-equiv="Content-Language" content="en" />
         
   </head>
@@ -27,8 +27,8 @@
             
         
                 <div class="xleft">
-        <span id="publishDate">Last Published: 2013-06-08</span>
-                  &nbsp;| <span id="projectVersion">Version: 2.4.0-SNAPSHOT</span>
+        <span id="publishDate">Last Published: 2014-06-20</span>
+                  &nbsp;| <span id="projectVersion">Version: 2.5.0</span>
                       </div>
             <div class="xright">        
         
@@ -110,7 +110,7 @@
       <hr/>
     </div>
     <div id="footer">
-      <div class="xright">Copyright &#169;                    2006-2013
+      <div class="xright">Copyright &#169;                    2006-2014
                         <a href="http://www.apache.org/">The Apache Software Foundation</a>.
             All Rights Reserved.      
         
diff --git a/bundleplugin/doc/site/surefire-report.html b/bundleplugin/doc/site/surefire-report.html
index 7c8c791..073a852 100644
--- a/bundleplugin/doc/site/surefire-report.html
+++ b/bundleplugin/doc/site/surefire-report.html
@@ -1,5 +1,5 @@
 <!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 Jun 8, 2013 -->
+<!-- Generated by Apache Maven Doxia at Jun 20, 2014 -->
 <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" />
@@ -10,7 +10,7 @@
       @import url("./css/site.css");
     </style>
     <link rel="stylesheet" href="./css/print.css" type="text/css" media="print" />
-    <meta name="Date-Revision-yyyymmdd" content="20130608" />
+    <meta name="Date-Revision-yyyymmdd" content="20140620" />
     <meta http-equiv="Content-Language" content="en" />
         
   </head>
@@ -27,8 +27,8 @@
             
         
                 <div class="xleft">
-        <span id="publishDate">Last Published: 2013-06-08</span>
-                  &nbsp;| <span id="projectVersion">Version: 2.4.0-SNAPSHOT</span>
+        <span id="publishDate">Last Published: 2014-06-20</span>
+                  &nbsp;| <span id="projectVersion">Version: 2.5.0</span>
                       </div>
             <div class="xright">        
         
@@ -94,14 +94,14 @@
     </div>
     <div id="bodyColumn">
       <div id="contentBox">
-        <div class="section"><h2>Surefire Report<a name="Surefire_Report"></a></h2></div><div class="section"><h2><a name="Summary"></a>Summary<a name="Summary"></a></h2><div class="section">[<a href="#Summary">Summary</a>] [<a href="#Package_List">Package List</a>] [<a href="#Test_Cases">Test Cases</a>]</div><br /><table border="0" class="bodyTable"><tr class="a"><th>Tests</th><th>Errors </th><th>Failures</th><th>Skipped</th><th>Success Rate</th><th>Time</th></tr><tr class="b"><td>19</td><td>0</td><td>0</td><td>0</td><td>100%</td><td>4.102</td></tr></table><br />Note: failures are anticipated and checked for with assertions while errors are unanticipated.<br /></div><div class="section"><h2><a name="Package_List"></a>Package List<a name="Package_List"></a></h2><div class="section">[<a href="#Summary">Summary</a>] [<a href="#Package_List">Package List</a>] [<a href="#Test_Cases">Test Cases</a>]</div><br /><table border="0" class="bodyTable"><tr class="a"><th>Package</th><th>Tests</th><th>Errors </th><th>Failures</th><th>Skipped</th><th>Success Rate</th><th>Time</th></tr><tr class="b"><td><a href="#org.apache.maven.shared.osgi">org.apache.maven.shared.osgi</a></td><td>4</td><td>0</td><td>0</td><td>0</td><td>100%</td><td>0.229</td></tr><tr class="a"><td><a href="#org.apache.felix.bundleplugin">org.apache.felix.bundleplugin</a></td><td>15</td><td>0</td><td>0</td><td>0</td><td>100%</td><td>3.873</td></tr></table><br />Note: package statistics are not computed recursively, they only sum up all of its testsuites numbers.<div class="section"><h3><a name="org.apache.maven.shared.osgi"></a>org.apache.maven.shared.osgi<a name="org.apache.maven.shared.osgi"></a></h3><table border="0" class="bodyTable"><tr class="b"><th></th><th>Class</th><th>Tests</th><th>Errors </th><th>Failures</th><th>Skipped</th><th>Success Rate</th><th>Time</th></tr><tr class="a"><td><a href="#org.apache.maven.shared.osgiMaven2OsgiConverterTest"><img src="images/icon_success_sml.gif" alt="" /></a></td><td><a href="#org.apache.maven.shared.osgiMaven2OsgiConverterTest">Maven2OsgiConverterTest</a></td><td>4</td><td>0</td><td>0</td><td>0</td><td>100%</td><td>0.229</td></tr></table></div><div class="section"><h3><a name="org.apache.felix.bundleplugin"></a>org.apache.felix.bundleplugin<a name="org.apache.felix.bundleplugin"></a></h3><table border="0" class="bodyTable"><tr class="b"><th></th><th>Class</th><th>Tests</th><th>Errors </th><th>Failures</th><th>Skipped</th><th>Success Rate</th><th>Time</th></tr><tr class="a"><td><a href="#org.apache.felix.bundlepluginBlueprintComponentTest"><img src="images/icon_success_sml.gif" alt="" /></a></td><td><a href="#org.apache.felix.bundlepluginBlueprintComponentTest">BlueprintComponentTest</a></td><td>1</td><td>0</td><td>0</td><td>0</td><td>100%</td><td>0.84</td></tr><tr class="b"><td><a href="#org.apache.felix.bundlepluginBundleAllPluginTest"><img src="images/icon_success_sml.gif" alt="" /></a></td><td><a href="#org.apache.felix.bundlepluginBundleAllPluginTest">BundleAllPluginTest</a></td><td>2</td><td>0</td><td>0</td><td>0</td><td>100%</td><td>1.311</td></tr><tr class="a"><td><a href="#org.apache.felix.bundlepluginBundlePluginTest"><img src="images/icon_success_sml.gif" alt="" /></a></td><td><a href="#org.apache.felix.bundlepluginBundlePluginTest">BundlePluginTest</a></td><td>12</td><td>0</td><td>0</td><td>0</td><td>100%</td><td>1.722</td></tr></table></div><br /></div><div class="section"><h2><a name="Test_Cases"></a>Test Cases<a name="Test_Cases"></a></h2><div class="section">[<a href="#Summary">Summary</a>] [<a href="#Package_List">Package List</a>] [<a href="#Test_Cases">Test Cases</a>]</div><div class="section"><h3><a name="org.apache.felix.bundlepluginBlueprintComponentTest"></a>BlueprintComponentTest<a name="BlueprintComponentTest"></a></h3><table border="0" class="bodyTable"><tr class="b"><td><img src="images/icon_success_sml.gif" alt="" /></td><td>testBlueprint</td><td>0.791</td></tr></table></div><div class="section"><h3><a name="org.apache.felix.bundlepluginBundleAllPluginTest"></a>BundleAllPluginTest<a name="BundleAllPluginTest"></a></h3><table border="0" class="bodyTable"><tr class="a"><td><img src="images/icon_success_sml.gif" alt="" /></td><td>testSnapshotMatch</td><td>0.518</td></tr><tr class="b"><td><img src="images/icon_success_sml.gif" alt="" /></td><td>testNoReBundling</td><td>0.787</td></tr></table></div><div class="section"><h3><a name="org.apache.felix.bundlepluginBundlePluginTest"></a>BundlePluginTest<a name="BundlePluginTest"></a></h3><table border="0" class="bodyTable"><tr class="a"><td><img src="images/icon_success_sml.gif" alt="" /></td><td>testConvertVersionToOsgi</td><td>0.195</td></tr><tr class="b"><td><img src="images/icon_success_sml.gif" alt="" /></td><td>testReadExportedModules</td><td>0.284</td></tr><tr class="a"><td><img src="images/icon_success_sml.gif" alt="" /></td><td>testTransformDirectives</td><td>0.099</td></tr><tr class="b"><td><img src="images/icon_success_sml.gif" alt="" /></td><td>testDefaultPropertiesIncludeOrganization</td><td>0.097</td></tr><tr class="a"><td><img src="images/icon_success_sml.gif" alt="" /></td><td>testVersion</td><td>0.078</td></tr><tr class="b"><td><img src="images/icon_success_sml.gif" alt="" /></td><td>testPackageInfoDetection</td><td>0.085</td></tr><tr class="a"><td><img src="images/icon_success_sml.gif" alt="" /></td><td>testEmbedDependencyPositiveClauses</td><td>0.166</td></tr><tr class="b"><td><img src="images/icon_success_sml.gif" alt="" /></td><td>testEmbedDependencyNegativeClauses</td><td>0.131</td></tr><tr class="a"><td><img src="images/icon_success_sml.gif" alt="" /></td><td>testEmbedDependencyDuplicateKeys</td><td>0.136</td></tr><tr class="b"><td><img src="images/icon_success_sml.gif" alt="" /></td><td>testEmbedDependencyMissingPositiveKey</td><td>0.136</td></tr><tr class="a"><td><img src="images/icon_success_sml.gif" alt="" /></td><td>testEmbedDependencyMissingNegativeKey</td><td>0.254</td></tr><tr class="b"><td><img src="images/icon_success_sml.gif" alt="" /></td><td>testPropertySanitizing</td><td>0.048</td></tr></table></div><div class="section"><h3><a name="org.apache.maven.shared.osgiMaven2OsgiConverterTest"></a>Maven2OsgiConverterTest<a name="Maven2OsgiConverterTest"></a></h3><table border="0" class="bodyTable"><tr class="a"><td><img src="images/icon_success_sml.gif" alt="" /></td><td>testConvertVersionToOsgi</td><td>0.067</td></tr><tr class="b"><td><img src="images/icon_success_sml.gif" alt="" /></td><td>testGetBundleSymbolicName</td><td>0.072</td></tr><tr class="a"><td><img src="images/icon_success_sml.gif" alt="" /></td><td>testGetBundleFileName</td><td>0.038</td></tr><tr class="b"><td><img src="images/icon_success_sml.gif" alt="" /></td><td>testGetVersion</td><td>0.049</td></tr></table></div><br /></div><br />
+        <div class="section"><h2>Surefire Report<a name="Surefire_Report"></a></h2></div><div class="section"><h2><a name="Summary"></a>Summary<a name="Summary"></a></h2><div class="section">[<a href="#Summary">Summary</a>] [<a href="#Package_List">Package List</a>] [<a href="#Test_Cases">Test Cases</a>]</div><br /><table border="0" class="bodyTable"><tr class="a"><th>Tests</th><th>Errors </th><th>Failures</th><th>Skipped</th><th>Success Rate</th><th>Time</th></tr><tr class="b"><td>22</td><td>0</td><td>0</td><td>0</td><td>100%</td><td>3.57</td></tr></table><br />Note: failures are anticipated and checked for with assertions while errors are unanticipated.<br /></div><div class="section"><h2><a name="Package_List"></a>Package List<a name="Package_List"></a></h2><div class="section">[<a href="#Summary">Summary</a>] [<a href="#Package_List">Package List</a>] [<a href="#Test_Cases">Test Cases</a>]</div><br /><table border="0" class="bodyTable"><tr class="a"><th>Package</th><th>Tests</th><th>Errors </th><th>Failures</th><th>Skipped</th><th>Success Rate</th><th>Time</th></tr><tr class="b"><td><a href="#org.apache.maven.shared.osgi">org.apache.maven.shared.osgi</a></td><td>4</td><td>0</td><td>0</td><td>0</td><td>100%</td><td>0.182</td></tr><tr class="a"><td><a href="#org.apache.felix.bundleplugin">org.apache.felix.bundleplugin</a></td><td>18</td><td>0</td><td>0</td><td>0</td><td>100%</td><td>3.388</td></tr></table><br />Note: package statistics are not computed recursively, they only sum up all of its testsuites numbers.<div class="section"><h3><a name="org.apache.maven.shared.osgi"></a>org.apache.maven.shared.osgi<a name="org.apache.maven.shared.osgi"></a></h3><table border="0" class="bodyTable"><tr class="b"><th></th><th>Class</th><th>Tests</th><th>Errors </th><th>Failures</th><th>Skipped</th><th>Success Rate</th><th>Time</th></tr><tr class="a"><td><a href="#org.apache.maven.shared.osgiMaven2OsgiConverterTest"><img src="images/icon_success_sml.gif" alt="" /></a></td><td><a href="#org.apache.maven.shared.osgiMaven2OsgiConverterTest">Maven2OsgiConverterTest</a></td><td>4</td><td>0</td><td>0</td><td>0</td><td>100%</td><td>0.182</td></tr></table></div><div class="section"><h3><a name="org.apache.felix.bundleplugin"></a>org.apache.felix.bundleplugin<a name="org.apache.felix.bundleplugin"></a></h3><table border="0" class="bodyTable"><tr class="b"><th></th><th>Class</th><th>Tests</th><th>Errors </th><th>Failures</th><th>Skipped</th><th>Success Rate</th><th>Time</th></tr><tr class="a"><td><a href="#org.apache.felix.bundlepluginBlueprintComponentTest"><img src="images/icon_success_sml.gif" alt="" /></a></td><td><a href="#org.apache.felix.bundlepluginBlueprintComponentTest">BlueprintComponentTest</a></td><td>3</td><td>0</td><td>0</td><td>0</td><td>100%</td><td>0.945</td></tr><tr class="b"><td><a href="#org.apache.felix.bundlepluginBundleAllPluginTest"><img src="images/icon_success_sml.gif" alt="" /></a></td><td><a href="#org.apache.felix.bundlepluginBundleAllPluginTest">BundleAllPluginTest</a></td><td>2</td><td>0</td><td>0</td><td>0</td><td>100%</td><td>0.8</td></tr><tr class="a"><td><a href="#org.apache.felix.bundlepluginBundlePluginTest"><img src="images/icon_success_sml.gif" alt="" /></a></td><td><a href="#org.apache.felix.bundlepluginBundlePluginTest">BundlePluginTest</a></td><td>12</td><td>0</td><td>0</td><td>0</td><td>100%</td><td>1.636</td></tr><tr class="b"><td><a href="#org.apache.felix.bundlepluginManifestWriterTest"><img src="images/icon_success_sml.gif" alt="" /></a></td><td><a href="#org.apache.felix.bundlepluginManifestWriterTest">ManifestWriterTest</a></td><td>1</td><td>0</td><td>0</td><td>0</td><td>100%</td><td>0.007</td></tr></table></div><br /></div><div class="section"><h2><a name="Test_Cases"></a>Test Cases<a name="Test_Cases"></a></h2><div class="section">[<a href="#Summary">Summary</a>] [<a href="#Package_List">Package List</a>] [<a href="#Test_Cases">Test Cases</a>]</div><div class="section"><h3><a name="org.apache.felix.bundlepluginBlueprintComponentTest"></a>BlueprintComponentTest<a name="BlueprintComponentTest"></a></h3><table border="0" class="bodyTable"><tr class="a"><td><img src="images/icon_success_sml.gif" alt="" /></td><td>testBlueprintServices</td><td>0.63</td></tr><tr class="b"><td><img src="images/icon_success_sml.gif" alt="" /></td><td>testBlueprintGeneric</td><td>0.227</td></tr><tr class="a"><td><img src="images/icon_success_sml.gif" alt="" /></td><td>testAnalyzer</td><td>0.037</td></tr></table></div><div class="section"><h3><a name="org.apache.felix.bundlepluginBundleAllPluginTest"></a>BundleAllPluginTest<a name="BundleAllPluginTest"></a></h3><table border="0" class="bodyTable"><tr class="b"><td><img src="images/icon_success_sml.gif" alt="" /></td><td>testSnapshotMatch</td><td>0.377</td></tr><tr class="a"><td><img src="images/icon_success_sml.gif" alt="" /></td><td>testNoReBundling</td><td>0.417</td></tr></table></div><div class="section"><h3><a name="org.apache.felix.bundlepluginBundlePluginTest"></a>BundlePluginTest<a name="BundlePluginTest"></a></h3><table border="0" class="bodyTable"><tr class="b"><td><img src="images/icon_success_sml.gif" alt="" /></td><td>testConvertVersionToOsgi</td><td>0.338</td></tr><tr class="a"><td><img src="images/icon_success_sml.gif" alt="" /></td><td>testReadExportedModules</td><td>0.227</td></tr><tr class="b"><td><img src="images/icon_success_sml.gif" alt="" /></td><td>testTransformDirectives</td><td>0.039</td></tr><tr class="a"><td><img src="images/icon_success_sml.gif" alt="" /></td><td>testDefaultPropertiesIncludeOrganization</td><td>0.051</td></tr><tr class="b"><td><img src="images/icon_success_sml.gif" alt="" /></td><td>testVersion</td><td>0.048</td></tr><tr class="a"><td><img src="images/icon_success_sml.gif" alt="" /></td><td>testPackageInfoDetection</td><td>0.037</td></tr><tr class="b"><td><img src="images/icon_success_sml.gif" alt="" /></td><td>testEmbedDependencyPositiveClauses</td><td>0.16</td></tr><tr class="a"><td><img src="images/icon_success_sml.gif" alt="" /></td><td>testEmbedDependencyNegativeClauses</td><td>0.18</td></tr><tr class="b"><td><img src="images/icon_success_sml.gif" alt="" /></td><td>testEmbedDependencyDuplicateKeys</td><td>0.175</td></tr><tr class="a"><td><img src="images/icon_success_sml.gif" alt="" /></td><td>testEmbedDependencyMissingPositiveKey</td><td>0.133</td></tr><tr class="b"><td><img src="images/icon_success_sml.gif" alt="" /></td><td>testEmbedDependencyMissingNegativeKey</td><td>0.188</td></tr><tr class="a"><td><img src="images/icon_success_sml.gif" alt="" /></td><td>testPropertySanitizing</td><td>0.043</td></tr></table></div><div class="section"><h3><a name="org.apache.felix.bundlepluginManifestWriterTest"></a>ManifestWriterTest<a name="ManifestWriterTest"></a></h3><table border="0" class="bodyTable"><tr class="b"><td><img src="images/icon_success_sml.gif" alt="" /></td><td>testNiceManifest</td><td>0.006</td></tr></table></div><div class="section"><h3><a name="org.apache.maven.shared.osgiMaven2OsgiConverterTest"></a>Maven2OsgiConverterTest<a name="Maven2OsgiConverterTest"></a></h3><table border="0" class="bodyTable"><tr class="a"><td><img src="images/icon_success_sml.gif" alt="" /></td><td>testConvertVersionToOsgi</td><td>0.041</td></tr><tr class="b"><td><img src="images/icon_success_sml.gif" alt="" /></td><td>testGetBundleSymbolicName</td><td>0.058</td></tr><tr class="a"><td><img src="images/icon_success_sml.gif" alt="" /></td><td>testGetBundleFileName</td><td>0.042</td></tr><tr class="b"><td><img src="images/icon_success_sml.gif" alt="" /></td><td>testGetVersion</td><td>0.039</td></tr></table></div><br /></div><br />
       </div>
     </div>
     <div class="clear">
       <hr/>
     </div>
     <div id="footer">
-      <div class="xright">Copyright &#169;                    2006-2013
+      <div class="xright">Copyright &#169;                    2006-2014
                         <a href="http://www.apache.org/">The Apache Software Foundation</a>.
             All Rights Reserved.      
         
diff --git a/bundleplugin/doc/site/team-list.html b/bundleplugin/doc/site/team-list.html
index b38ef36..7163131 100644
--- a/bundleplugin/doc/site/team-list.html
+++ b/bundleplugin/doc/site/team-list.html
@@ -1,5 +1,5 @@
 <!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 Jun 8, 2013 -->
+<!-- Generated by Apache Maven Doxia at Jun 20, 2014 -->
 <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" />
@@ -10,7 +10,7 @@
       @import url("./css/site.css");
     </style>
     <link rel="stylesheet" href="./css/print.css" type="text/css" media="print" />
-    <meta name="Date-Revision-yyyymmdd" content="20130608" />
+    <meta name="Date-Revision-yyyymmdd" content="20140620" />
     <meta http-equiv="Content-Language" content="en" />
         
   </head>
@@ -27,8 +27,8 @@
             
         
                 <div class="xleft">
-        <span id="publishDate">Last Published: 2013-06-08</span>
-                  &nbsp;| <span id="projectVersion">Version: 2.4.0-SNAPSHOT</span>
+        <span id="publishDate">Last Published: 2014-06-20</span>
+                  &nbsp;| <span id="projectVersion">Version: 2.5.0</span>
                       </div>
             <div class="xright">        
         
@@ -122,7 +122,7 @@
       <hr/>
     </div>
     <div id="footer">
-      <div class="xright">Copyright &#169;                    2006-2013
+      <div class="xright">Copyright &#169;                    2006-2014
                         <a href="http://www.apache.org/">The Apache Software Foundation</a>.
             All Rights Reserved.      
         
diff --git a/bundleplugin/doc/site/wrap-mojo.html b/bundleplugin/doc/site/wrap-mojo.html
index ee5a3ee..f3cc3a1 100644
--- a/bundleplugin/doc/site/wrap-mojo.html
+++ b/bundleplugin/doc/site/wrap-mojo.html
@@ -1,5 +1,5 @@
 <!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 Jun 8, 2013 -->
+<!-- Generated by Apache Maven Doxia at Jun 20, 2014 -->
 <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" />
@@ -11,7 +11,7 @@
       @import url("./css/site.css");
     </style>
     <link rel="stylesheet" href="./css/print.css" type="text/css" media="print" />
-    <meta name="Date-Revision-yyyymmdd" content="20130608" />
+    <meta name="Date-Revision-yyyymmdd" content="20140620" />
     <meta http-equiv="Content-Language" content="en" />
         
   </head>
@@ -28,8 +28,8 @@
             
         
                 <div class="xleft">
-        <span id="publishDate">Last Published: 2013-06-08</span>
-                  &nbsp;| <span id="projectVersion">Version: 2.4.0-SNAPSHOT</span>
+        <span id="publishDate">Last Published: 2014-06-20</span>
+                  &nbsp;| <span id="projectVersion">Version: 2.5.0</span>
                       </div>
             <div class="xright">        
         
@@ -82,7 +82,7 @@
   
     <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.4.0-SNAPSHOT:wrap</p>
+      <p>org.apache.felix:maven-bundle-plugin:2.5.0: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>
@@ -190,32 +190,38 @@
             <td>Directory where the manifest will be written<br /><b>Default value is</b>: <tt>${project.build.outputDirectory}/META-INF</tt>.<br /><b>User property is</b>: <tt>manifestLocation</tt>.</td>
           </tr>
           <tr class="b">
+            <td><b><a href="#niceManifest">niceManifest</a></b></td>
+            <td><tt>boolean</tt></td>
+            <td><tt>-</tt></td>
+            <td>(no description)<br /></td>
+          </tr>
+          <tr class="a">
             <td><b><a href="#packaging">packaging</a></b></td>
             <td><tt>String</tt></td>
             <td><tt>-</tt></td>
             <td>Packaging type of the bundle to be installed. For example, &quot;jar&quot;.
 Defaults to none which means use the same packaging as the project.<br /></td>
           </tr>
-          <tr class="a">
+          <tr class="b">
             <td><b><a href="#rebuildBundle">rebuildBundle</a></b></td>
             <td><tt>boolean</tt></td>
             <td><tt>-</tt></td>
             <td>When true, generate the manifest by rebuilding the full bundle in
 memory<br /><b>User property is</b>: <tt>rebuildBundle</tt>.</td>
           </tr>
-          <tr class="b">
+          <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="a">
+          <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 /><b>User property is</b>: <tt>unpackBundle</tt>.</td>
           </tr>
-          <tr class="b">
+          <tr class="a">
             <td><b><a href="#wrapImportPackage">wrapImportPackage</a></b></td>
             <td><tt>String</tt></td>
             <td><tt>-</tt></td>
@@ -290,6 +296,11 @@
           <li><b>Required</b>: <tt>No</tt></li>
           <li><b>User Property</b>: <tt>manifestLocation</tt></li>
           <li><b>Default</b>: <tt>${project.build.outputDirectory}/META-INF</tt></li>
+        </ul><hr /><p><b><a name="niceManifest">niceManifest</a>:</b></p>
+        <div>(no description)</div>
+        <ul>
+          <li><b>Type</b>: <tt>boolean</tt></li>
+          <li><b>Required</b>: <tt>No</tt></li>
         </ul><hr /><p><b><a name="outputDirectory">outputDirectory</a>:</b></p>
         <div>The directory for the generated bundles.</div>
         <ul>
@@ -338,7 +349,7 @@
       <hr/>
     </div>
     <div id="footer">
-      <div class="xright">Copyright &#169;                    2006-2013
+      <div class="xright">Copyright &#169;                    2006-2014
                         <a href="http://www.apache.org/">The Apache Software Foundation</a>.
             All Rights Reserved.      
         
diff --git a/bundleplugin/doc/site/xref-test/allclasses-frame.html b/bundleplugin/doc/site/xref-test/allclasses-frame.html
index cd43697..dddc3a8 100644
--- a/bundleplugin/doc/site/xref-test/allclasses-frame.html
+++ b/bundleplugin/doc/site/xref-test/allclasses-frame.html
@@ -27,6 +27,9 @@
 				<a href="org/apache/felix/bundleplugin/BundlePluginTest.html" target="classFrame">BundlePluginTest</a>
 			</li>
 						<li>
+				<a href="org/apache/felix/bundleplugin/ManifestWriterTest.html" target="classFrame">ManifestWriterTest</a>
+			</li>
+						<li>
 				<a href="org/apache/maven/shared/osgi/Maven2OsgiConverterTest.html" target="classFrame">Maven2OsgiConverterTest</a>
 			</li>
 			      </ul>
diff --git a/bundleplugin/doc/site/xref-test/index.html b/bundleplugin/doc/site/xref-test/index.html
index a3c1140..0260334 100644
--- a/bundleplugin/doc/site/xref-test/index.html
+++ b/bundleplugin/doc/site/xref-test/index.html
@@ -3,7 +3,7 @@
 <html xml:lang="en" lang="en">
 	<head>
 		<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
-		<title>Maven Bundle Plugin 2.4.0-SNAPSHOT Reference</title>
+		<title>Maven Bundle Plugin 2.5.0 Reference</title>
 	</head>
     <frameset cols="20%,80%">
 		<frameset rows="30%,70%">
diff --git a/bundleplugin/doc/site/xref-test/org/apache/felix/bundleplugin/BlueprintComponentTest.html b/bundleplugin/doc/site/xref-test/org/apache/felix/bundleplugin/BlueprintComponentTest.html
index d8d9a06..b53bad3 100644
--- a/bundleplugin/doc/site/xref-test/org/apache/felix/bundleplugin/BlueprintComponentTest.html
+++ b/bundleplugin/doc/site/xref-test/org/apache/felix/bundleplugin/BlueprintComponentTest.html
@@ -38,85 +38,120 @@
 <a name="28" href="#28">28</a>  <strong class="jxr_keyword">import</strong> java.util.Properties;
 <a name="29" href="#29">29</a>  <strong class="jxr_keyword">import</strong> java.util.jar.Manifest;
 <a name="30" href="#30">30</a>  
-<a name="31" href="#31">31</a>  <strong class="jxr_keyword">import</strong> junit.framework.TestCase;
-<a name="32" href="#32">32</a>  
-<a name="33" href="#33">33</a>  <strong class="jxr_keyword">import</strong> org.apache.maven.model.Resource;
-<a name="34" href="#34">34</a>  <strong class="jxr_keyword">import</strong> org.apache.maven.plugin.testing.stubs.MavenProjectStub;
-<a name="35" href="#35">35</a>  <strong class="jxr_keyword">import</strong> org.osgi.framework.Constants;
+<a name="31" href="#31">31</a>  <strong class="jxr_keyword">import</strong> aQute.bnd.osgi.Analyzer;
+<a name="32" href="#32">32</a>  <strong class="jxr_keyword">import</strong> aQute.bnd.osgi.Jar;
+<a name="33" href="#33">33</a>  <strong class="jxr_keyword">import</strong> aQute.bnd.osgi.Verifier;
+<a name="34" href="#34">34</a>  <strong class="jxr_keyword">import</strong> aQute.libg.generics.Create;
+<a name="35" href="#35">35</a>  <strong class="jxr_keyword">import</strong> junit.framework.TestCase;
 <a name="36" href="#36">36</a>  
-<a name="37" href="#37">37</a>  <strong class="jxr_keyword">import</strong> aQute.bnd.osgi.Builder;
-<a name="38" href="#38">38</a>  
-<a name="39" href="#39">39</a>  
-<a name="40" href="#40">40</a>  <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">class</strong> <a href="../../../../org/apache/felix/bundleplugin/BlueprintComponentTest.html">BlueprintComponentTest</a> <strong class="jxr_keyword">extends</strong> TestCase
-<a name="41" href="#41">41</a>  {
+<a name="37" href="#37">37</a>  <strong class="jxr_keyword">import</strong> org.apache.felix.utils.manifest.Clause;
+<a name="38" href="#38">38</a>  <strong class="jxr_keyword">import</strong> org.apache.felix.utils.manifest.Parser;
+<a name="39" href="#39">39</a>  <strong class="jxr_keyword">import</strong> org.apache.maven.model.Resource;
+<a name="40" href="#40">40</a>  <strong class="jxr_keyword">import</strong> org.apache.maven.plugin.testing.stubs.MavenProjectStub;
+<a name="41" href="#41">41</a>  <strong class="jxr_keyword">import</strong> org.osgi.framework.Constants;
 <a name="42" href="#42">42</a>  
-<a name="43" href="#43">43</a>      <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> testBlueprint() <strong class="jxr_keyword">throws</strong> Exception
-<a name="44" href="#44">44</a>      {
-<a name="45" href="#45">45</a>          MavenProjectStub project = <strong class="jxr_keyword">new</strong> MavenProjectStub()
-<a name="46" href="#46">46</a>          {
-<a name="47" href="#47">47</a>              <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong> List resources = <strong class="jxr_keyword">new</strong> ArrayList();
+<a name="43" href="#43">43</a>  <strong class="jxr_keyword">import</strong> aQute.bnd.osgi.Builder;
+<a name="44" href="#44">44</a>  
+<a name="45" href="#45">45</a>  
+<a name="46" href="#46">46</a>  <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">class</strong> <a href="../../../../org/apache/felix/bundleplugin/BlueprintComponentTest.html">BlueprintComponentTest</a> <strong class="jxr_keyword">extends</strong> TestCase
+<a name="47" href="#47">47</a>  {
 <a name="48" href="#48">48</a>  
-<a name="49" href="#49">49</a>  
-<a name="50" href="#50">50</a>              @Override
-<a name="51" href="#51">51</a>              <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> addResource( Resource resource )
-<a name="52" href="#52">52</a>              {
-<a name="53" href="#53">53</a>                  resources.add( resource );
-<a name="54" href="#54">54</a>              }
-<a name="55" href="#55">55</a>  
-<a name="56" href="#56">56</a>  
-<a name="57" href="#57">57</a>              @Override
-<a name="58" href="#58">58</a>              <strong class="jxr_keyword">public</strong> List getResources()
-<a name="59" href="#59">59</a>              {
-<a name="60" href="#60">60</a>                  <strong class="jxr_keyword">return</strong> resources;
-<a name="61" href="#61">61</a>              }
-<a name="62" href="#62">62</a>  
-<a name="63" href="#63">63</a>  
-<a name="64" href="#64">64</a>              @Override
-<a name="65" href="#65">65</a>              <strong class="jxr_keyword">public</strong> File getBasedir()
-<a name="66" href="#66">66</a>              {
-<a name="67" href="#67">67</a>                  <strong class="jxr_keyword">return</strong> <strong class="jxr_keyword">new</strong> File( <span class="jxr_string">"target/tmp/basedir"</span> );
-<a name="68" href="#68">68</a>              }
-<a name="69" href="#69">69</a>          };
-<a name="70" href="#70">70</a>          project.setGroupId( <span class="jxr_string">"group"</span> );
-<a name="71" href="#71">71</a>          project.setArtifactId( <span class="jxr_string">"artifact"</span> );
-<a name="72" href="#72">72</a>          project.setVersion( <span class="jxr_string">"1.1.0.0"</span> );
-<a name="73" href="#73">73</a>          Resource r = <strong class="jxr_keyword">new</strong> Resource();
-<a name="74" href="#74">74</a>          r.setDirectory( <strong class="jxr_keyword">new</strong> File( <span class="jxr_string">"src/test/resources"</span> ).getAbsoluteFile().getCanonicalPath() );
-<a name="75" href="#75">75</a>          r.setIncludes( Arrays.asList( <span class="jxr_string">"**/*.*"</span> ) );
-<a name="76" href="#76">76</a>          project.addResource( r );
-<a name="77" href="#77">77</a>          project.addCompileSourceRoot( <strong class="jxr_keyword">new</strong> File( <span class="jxr_string">"src/test/resources"</span> ).getAbsoluteFile().getCanonicalPath() );
+<a name="49" href="#49">49</a>      <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> testBlueprintServices() <strong class="jxr_keyword">throws</strong> Exception
+<a name="50" href="#50">50</a>      {
+<a name="51" href="#51">51</a>          test( <span class="jxr_string">"service"</span> );
+<a name="52" href="#52">52</a>      }
+<a name="53" href="#53">53</a>  
+<a name="54" href="#54">54</a>      <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> testBlueprintGeneric() <strong class="jxr_keyword">throws</strong> Exception
+<a name="55" href="#55">55</a>      {
+<a name="56" href="#56">56</a>          test( <span class="jxr_string">"generic"</span> );
+<a name="57" href="#57">57</a>      }
+<a name="58" href="#58">58</a>  
+<a name="59" href="#59">59</a>      <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">void</strong> test(String mode) <strong class="jxr_keyword">throws</strong> Exception
+<a name="60" href="#60">60</a>      {
+<a name="61" href="#61">61</a>          MavenProjectStub project = <strong class="jxr_keyword">new</strong> MavenProjectStub()
+<a name="62" href="#62">62</a>          {
+<a name="63" href="#63">63</a>              <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong> List resources = <strong class="jxr_keyword">new</strong> ArrayList();
+<a name="64" href="#64">64</a>  
+<a name="65" href="#65">65</a>  
+<a name="66" href="#66">66</a>              @Override
+<a name="67" href="#67">67</a>              <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> addResource( Resource resource )
+<a name="68" href="#68">68</a>              {
+<a name="69" href="#69">69</a>                  resources.add( resource );
+<a name="70" href="#70">70</a>              }
+<a name="71" href="#71">71</a>  
+<a name="72" href="#72">72</a>  
+<a name="73" href="#73">73</a>              @Override
+<a name="74" href="#74">74</a>              <strong class="jxr_keyword">public</strong> List getResources()
+<a name="75" href="#75">75</a>              {
+<a name="76" href="#76">76</a>                  <strong class="jxr_keyword">return</strong> resources;
+<a name="77" href="#77">77</a>              }
 <a name="78" href="#78">78</a>  
-<a name="79" href="#79">79</a>          ManifestPlugin plugin = <strong class="jxr_keyword">new</strong> ManifestPlugin();
-<a name="80" href="#80">80</a>          plugin.setBuildDirectory( <span class="jxr_string">"target/tmp/basedir/target"</span> );
-<a name="81" href="#81">81</a>          plugin.setOutputDirectory( <strong class="jxr_keyword">new</strong> File( <span class="jxr_string">"target/tmp/basedir/target/classes"</span> ) );
-<a name="82" href="#82">82</a>  
-<a name="83" href="#83">83</a>          Map instructions = <strong class="jxr_keyword">new</strong> HashMap();
-<a name="84" href="#84">84</a>          instructions.put( <span class="jxr_string">"Test"</span>, <span class="jxr_string">"Foo"</span> );
-<a name="85" href="#85">85</a>  
-<a name="86" href="#86">86</a>          instructions.put( <span class="jxr_string">"nsh_interface"</span>, <span class="jxr_string">"foo.bar.Namespace"</span> );
-<a name="87" href="#87">87</a>          instructions.put( <span class="jxr_string">"nsh_namespace"</span>, <span class="jxr_string">"ns"</span> );
-<a name="88" href="#88">88</a>  
-<a name="89" href="#89">89</a>          instructions.put( <span class="jxr_string">"Export-Service"</span>, <span class="jxr_string">"p7.Foo;mk=mv"</span> );
-<a name="90" href="#90">90</a>          instructions.put( <span class="jxr_string">"Import-Service"</span>, <span class="jxr_string">"org.osgi.service.cm.ConfigurationAdmin;availability:=optional"</span> );
-<a name="91" href="#91">91</a>  
-<a name="92" href="#92">92</a>          Properties props = <strong class="jxr_keyword">new</strong> Properties();
-<a name="93" href="#93">93</a>          Builder builder = plugin.buildOSGiBundle( project, instructions, props, plugin.getClasspath( project ) );
+<a name="79" href="#79">79</a>  
+<a name="80" href="#80">80</a>              @Override
+<a name="81" href="#81">81</a>              <strong class="jxr_keyword">public</strong> File getBasedir()
+<a name="82" href="#82">82</a>              {
+<a name="83" href="#83">83</a>                  <strong class="jxr_keyword">return</strong> <strong class="jxr_keyword">new</strong> File( <span class="jxr_string">"target/tmp/basedir"</span> );
+<a name="84" href="#84">84</a>              }
+<a name="85" href="#85">85</a>          };
+<a name="86" href="#86">86</a>          project.setGroupId( <span class="jxr_string">"group"</span> );
+<a name="87" href="#87">87</a>          project.setArtifactId( <span class="jxr_string">"artifact"</span> );
+<a name="88" href="#88">88</a>          project.setVersion( <span class="jxr_string">"1.1.0.0"</span> );
+<a name="89" href="#89">89</a>          Resource r = <strong class="jxr_keyword">new</strong> Resource();
+<a name="90" href="#90">90</a>          r.setDirectory( <strong class="jxr_keyword">new</strong> File( <span class="jxr_string">"src/test/resources"</span> ).getAbsoluteFile().getCanonicalPath() );
+<a name="91" href="#91">91</a>          r.setIncludes( Arrays.asList( <span class="jxr_string">"**/*.*"</span> ) );
+<a name="92" href="#92">92</a>          project.addResource( r );
+<a name="93" href="#93">93</a>          project.addCompileSourceRoot( <strong class="jxr_keyword">new</strong> File( <span class="jxr_string">"src/test/resources"</span> ).getAbsoluteFile().getCanonicalPath() );
 <a name="94" href="#94">94</a>  
-<a name="95" href="#95">95</a>          Manifest manifest = builder.getJar().getManifest();
-<a name="96" href="#96">96</a>          String expSvc = manifest.getMainAttributes().getValue( Constants.EXPORT_SERVICE );
-<a name="97" href="#97">97</a>          String impSvc = manifest.getMainAttributes().getValue( Constants.IMPORT_SERVICE );
-<a name="98" href="#98">98</a>          assertNotNull( expSvc );
-<a name="99" href="#99">99</a>          assertNotNull( impSvc );
-<a name="100" href="#100">100</a> 
-<a name="101" href="#101">101</a>         String impPkg = manifest.getMainAttributes().getValue( Constants.IMPORT_PACKAGE );
-<a name="102" href="#102">102</a>         List&lt;String&gt; pkgs = Arrays.asList( impPkg.split( <span class="jxr_string">","</span> ) );
-<a name="103" href="#103">103</a>         <strong class="jxr_keyword">for</strong> ( <strong class="jxr_keyword">int</strong> i = 1; i &lt;= 13; i++ )
-<a name="104" href="#104">104</a>         {
-<a name="105" href="#105">105</a>             assertTrue( pkgs.contains( <span class="jxr_string">"p"</span> + i ) );
-<a name="106" href="#106">106</a>         }
-<a name="107" href="#107">107</a>     }
+<a name="95" href="#95">95</a>          ManifestPlugin plugin = <strong class="jxr_keyword">new</strong> ManifestPlugin();
+<a name="96" href="#96">96</a>          plugin.setBuildDirectory( <span class="jxr_string">"target/tmp/basedir/target"</span> );
+<a name="97" href="#97">97</a>          plugin.setOutputDirectory( <strong class="jxr_keyword">new</strong> File( <span class="jxr_string">"target/tmp/basedir/target/classes"</span> ) );
+<a name="98" href="#98">98</a>  
+<a name="99" href="#99">99</a>          Map instructions = <strong class="jxr_keyword">new</strong> HashMap();
+<a name="100" href="#100">100</a>         instructions.put( <span class="jxr_string">"service_mode"</span>, mode );
+<a name="101" href="#101">101</a>         instructions.put( <span class="jxr_string">"Test"</span>, <span class="jxr_string">"Foo"</span> );
+<a name="102" href="#102">102</a> 
+<a name="103" href="#103">103</a>         instructions.put( <span class="jxr_string">"nsh_interface"</span>, <span class="jxr_string">"foo.bar.Namespace"</span> );
+<a name="104" href="#104">104</a>         instructions.put( <span class="jxr_string">"nsh_namespace"</span>, <span class="jxr_string">"ns"</span> );
+<a name="105" href="#105">105</a> 
+<a name="106" href="#106">106</a>         instructions.put( <span class="jxr_string">"Export-Service"</span>, <span class="jxr_string">"p7.Foo;mk=mv"</span> );
+<a name="107" href="#107">107</a>         instructions.put( <span class="jxr_string">"Import-Service"</span>, <span class="jxr_string">"org.osgi.service.cm.ConfigurationAdmin;availability:=optional"</span> );
 <a name="108" href="#108">108</a> 
-<a name="109" href="#109">109</a> }
+<a name="109" href="#109">109</a>         Properties props = <strong class="jxr_keyword">new</strong> Properties();
+<a name="110" href="#110">110</a>         Builder builder = plugin.buildOSGiBundle( project, instructions, props, plugin.getClasspath( project ) );
+<a name="111" href="#111">111</a> 
+<a name="112" href="#112">112</a>         Manifest manifest = builder.getJar().getManifest();
+<a name="113" href="#113">113</a>         String expSvc = manifest.getMainAttributes().getValue( Constants.EXPORT_SERVICE );
+<a name="114" href="#114">114</a>         String impSvc = manifest.getMainAttributes().getValue( Constants.IMPORT_SERVICE );
+<a name="115" href="#115">115</a>         assertNotNull( expSvc );
+<a name="116" href="#116">116</a>         assertNotNull( impSvc );
+<a name="117" href="#117">117</a> 
+<a name="118" href="#118">118</a>         String impPkg = manifest.getMainAttributes().getValue( Constants.IMPORT_PACKAGE );
+<a name="119" href="#119">119</a>         List&lt;String&gt; pkgs = Create.list();
+<a name="120" href="#120">120</a>         <strong class="jxr_keyword">for</strong> (Clause clause : Parser.parseHeader(impPkg))
+<a name="121" href="#121">121</a>         {
+<a name="122" href="#122">122</a>             pkgs.add(clause.getName());
+<a name="123" href="#123">123</a>         }
+<a name="124" href="#124">124</a>         <strong class="jxr_keyword">for</strong> ( <strong class="jxr_keyword">int</strong> i = 1; i &lt;= 14; i++ )
+<a name="125" href="#125">125</a>         {
+<a name="126" href="#126">126</a>             assertTrue( pkgs.contains( <span class="jxr_string">"p"</span> + i ) );
+<a name="127" href="#127">127</a>         }
+<a name="128" href="#128">128</a> 
+<a name="129" href="#129">129</a>         <strong class="jxr_keyword">new</strong> Verifier(builder).verify();
+<a name="130" href="#130">130</a>     }
+<a name="131" href="#131">131</a> 
+<a name="132" href="#132">132</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> testAnalyzer() <strong class="jxr_keyword">throws</strong> Exception
+<a name="133" href="#133">133</a>     {
+<a name="134" href="#134">134</a>         Analyzer analyzer = <strong class="jxr_keyword">new</strong> Analyzer();
+<a name="135" href="#135">135</a>         Manifest manifest = <strong class="jxr_keyword">new</strong> Manifest();
+<a name="136" href="#136">136</a>         manifest.read(getClass().getResourceAsStream(<span class="jxr_string">"/test.mf"</span>));
+<a name="137" href="#137">137</a>         Jar jar = <strong class="jxr_keyword">new</strong> Jar(<span class="jxr_string">"name"</span>);
+<a name="138" href="#138">138</a>         jar.setManifest(manifest);
+<a name="139" href="#139">139</a>         analyzer.setJar(jar);
+<a name="140" href="#140">140</a>         analyzer.analyze();
+<a name="141" href="#141">141</a>         <strong class="jxr_keyword">new</strong> Verifier(analyzer).verify();
+<a name="142" href="#142">142</a>     }
+<a name="143" href="#143">143</a> 
+<a name="144" href="#144">144</a> }
 </pre>
 <hr/><div id="footer">This page was automatically generated by <a href="http://maven.apache.org/">Maven</a></div></body>
 </html>
diff --git a/bundleplugin/doc/site/xref-test/org/apache/felix/bundleplugin/BundlePluginTest.html b/bundleplugin/doc/site/xref-test/org/apache/felix/bundleplugin/BundlePluginTest.html
index ca1eae8..d6d9b59 100644
--- a/bundleplugin/doc/site/xref-test/org/apache/felix/bundleplugin/BundlePluginTest.html
+++ b/bundleplugin/doc/site/xref-test/org/apache/felix/bundleplugin/BundlePluginTest.html
@@ -219,7 +219,7 @@
 <a name="209" href="#209">209</a>         MavenProject project = getMavenProjectStub();
 <a name="210" href="#210">210</a>         project.addCompileSourceRoot( getBasedir() + <span class="jxr_string">"/src/test/java"</span> );
 <a name="211" href="#211">211</a> 
-<a name="212" href="#212">212</a>         String resourcePaths = plugin.getMavenResourcePaths( project );
+<a name="212" href="#212">212</a>         String resourcePaths = plugin.getMavenResourcePaths( project, false );
 <a name="213" href="#213">213</a> 
 <a name="214" href="#214">214</a>         assertEquals( <span class="jxr_string">"org/apache/felix/bundleplugin/packageinfo="</span>
 <a name="215" href="#215">215</a>             + <span class="jxr_string">"src/test/java/org/apache/felix/bundleplugin/packageinfo"</span>, resourcePaths );
diff --git a/bundleplugin/doc/site/xref-test/org/apache/felix/bundleplugin/package-frame.html b/bundleplugin/doc/site/xref-test/org/apache/felix/bundleplugin/package-frame.html
index 8475f76..20bd549 100644
--- a/bundleplugin/doc/site/xref-test/org/apache/felix/bundleplugin/package-frame.html
+++ b/bundleplugin/doc/site/xref-test/org/apache/felix/bundleplugin/package-frame.html
@@ -3,7 +3,7 @@
 <html xml:lang="en" lang="en">
 	<head>
 		<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
-		<title>Maven Bundle Plugin 2.4.0-SNAPSHOT Reference Package org.apache.felix.bundleplugin</title>
+		<title>Maven Bundle Plugin 2.5.0 Reference Package org.apache.felix.bundleplugin</title>
 		<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="style" />
 	</head>
 	<body>
@@ -30,6 +30,9 @@
           	          	<li>
             	<a href="BundlePluginTest.html" target="classFrame">BundlePluginTest</a>
           	</li>
+          	          	<li>
+            	<a href="ManifestWriterTest.html" target="classFrame">ManifestWriterTest</a>
+          	</li>
           	      	</ul>
 
 	</body>
diff --git a/bundleplugin/doc/site/xref-test/org/apache/felix/bundleplugin/package-summary.html b/bundleplugin/doc/site/xref-test/org/apache/felix/bundleplugin/package-summary.html
index 936f8c5..f162ce5 100644
--- a/bundleplugin/doc/site/xref-test/org/apache/felix/bundleplugin/package-summary.html
+++ b/bundleplugin/doc/site/xref-test/org/apache/felix/bundleplugin/package-summary.html
@@ -3,7 +3,7 @@
 <html xml:lang="en" lang="en">
 	<head>
 		<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
-		<title>Maven Bundle Plugin 2.4.0-SNAPSHOT Reference Package org.apache.felix.bundleplugin</title>
+		<title>Maven Bundle Plugin 2.5.0 Reference Package org.apache.felix.bundleplugin</title>
 		<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="style" />
 	</head>
 	<body>
@@ -60,6 +60,11 @@
                 		<a href="BundlePluginTest.html" target="classFrame">BundlePluginTest</a>
               		</td>
             	</tr>
+				            	<tr>
+              		<td>
+                		<a href="ManifestWriterTest.html" target="classFrame">ManifestWriterTest</a>
+              		</td>
+            	</tr>
 				        	</tbody>
       	</table>
 		
@@ -82,6 +87,6 @@
         	</ul>
       	</div>
 				<hr />
-		Copyright &copy; 2006-2013 The Apache Software Foundation. All Rights Reserved.
+		Copyright &copy; 2006-2014 The Apache Software Foundation. All Rights Reserved.
 	</body>
 </html>
\ No newline at end of file
diff --git a/bundleplugin/doc/site/xref-test/org/apache/maven/shared/osgi/package-frame.html b/bundleplugin/doc/site/xref-test/org/apache/maven/shared/osgi/package-frame.html
index f8f48af..e3e689a 100644
--- a/bundleplugin/doc/site/xref-test/org/apache/maven/shared/osgi/package-frame.html
+++ b/bundleplugin/doc/site/xref-test/org/apache/maven/shared/osgi/package-frame.html
@@ -3,7 +3,7 @@
 <html xml:lang="en" lang="en">
 	<head>
 		<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
-		<title>Maven Bundle Plugin 2.4.0-SNAPSHOT Reference Package org.apache.maven.shared.osgi</title>
+		<title>Maven Bundle Plugin 2.5.0 Reference Package org.apache.maven.shared.osgi</title>
 		<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="style" />
 	</head>
 	<body>
diff --git a/bundleplugin/doc/site/xref-test/org/apache/maven/shared/osgi/package-summary.html b/bundleplugin/doc/site/xref-test/org/apache/maven/shared/osgi/package-summary.html
index 6bd63ca..2d6b403 100644
--- a/bundleplugin/doc/site/xref-test/org/apache/maven/shared/osgi/package-summary.html
+++ b/bundleplugin/doc/site/xref-test/org/apache/maven/shared/osgi/package-summary.html
@@ -3,7 +3,7 @@
 <html xml:lang="en" lang="en">
 	<head>
 		<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
-		<title>Maven Bundle Plugin 2.4.0-SNAPSHOT Reference Package org.apache.maven.shared.osgi</title>
+		<title>Maven Bundle Plugin 2.5.0 Reference Package org.apache.maven.shared.osgi</title>
 		<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="style" />
 	</head>
 	<body>
@@ -62,6 +62,6 @@
         	</ul>
       	</div>
 				<hr />
-		Copyright &copy; 2006-2013 The Apache Software Foundation. All Rights Reserved.
+		Copyright &copy; 2006-2014 The Apache Software Foundation. All Rights Reserved.
 	</body>
 </html>
\ No newline at end of file
diff --git a/bundleplugin/doc/site/xref-test/overview-frame.html b/bundleplugin/doc/site/xref-test/overview-frame.html
index aed0619..79b866a 100644
--- a/bundleplugin/doc/site/xref-test/overview-frame.html
+++ b/bundleplugin/doc/site/xref-test/overview-frame.html
@@ -3,7 +3,7 @@
 <html xml:lang="en" lang="en">
 	<head>
 		<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
-		<title>Maven Bundle Plugin 2.4.0-SNAPSHOT Reference</title>
+		<title>Maven Bundle Plugin 2.5.0 Reference</title>
 		<link rel="stylesheet" type="text/css" href="stylesheet.css" title="style" />
 	</head>
 	<body>
diff --git a/bundleplugin/doc/site/xref-test/overview-summary.html b/bundleplugin/doc/site/xref-test/overview-summary.html
index 79c5369..e995325 100644
--- a/bundleplugin/doc/site/xref-test/overview-summary.html
+++ b/bundleplugin/doc/site/xref-test/overview-summary.html
@@ -3,7 +3,7 @@
 <html xml:lang="en" lang="en">
 	<head>
 		<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
-		<title>Maven Bundle Plugin 2.4.0-SNAPSHOT Reference</title>
+		<title>Maven Bundle Plugin 2.5.0 Reference</title>
 		<link rel="stylesheet" type="text/css" href="stylesheet.css" title="style" />
 	</head>
 	<body>
@@ -24,7 +24,7 @@
 	        </ul>
       	</div>
 		
-		      	<h2>Maven Bundle Plugin 2.4.0-SNAPSHOT Reference</h2>
+		      	<h2>Maven Bundle Plugin 2.5.0 Reference</h2>
 
 		<table class="summary">
         	<thead>
@@ -64,6 +64,6 @@
       	</div>
 		
 		<hr />
-		Copyright &copy; 2006-2013 The Apache Software Foundation. All Rights Reserved.
+		Copyright &copy; 2006-2014 The Apache Software Foundation. All Rights Reserved.
 	</body>
 </html>
\ No newline at end of file
diff --git a/bundleplugin/doc/site/xref/allclasses-frame.html b/bundleplugin/doc/site/xref/allclasses-frame.html
index c87d361..d36d888 100644
--- a/bundleplugin/doc/site/xref/allclasses-frame.html
+++ b/bundleplugin/doc/site/xref/allclasses-frame.html
@@ -12,6 +12,9 @@
 
 		<ul>
 						<li>
+				<a href="org/apache/felix/bundleplugin/baseline/AbstractBaselinePlugin.html" target="classFrame">AbstractBaselinePlugin</a>
+			</li>
+						<li>
 				<a href="org/apache/felix/bundleplugin/AbstractDependencyFilter.html" target="classFrame">AbstractDependencyFilter</a>
 			</li>
 						<li>
@@ -21,7 +24,10 @@
 				<a href="org/apache/felix/bundleplugin/AntPlugin.html" target="classFrame">AntPlugin</a>
 			</li>
 						<li>
-				<a href="org/apache/felix/bundleplugin/BlueprintPlugin.html" target="classFrame">Attribute</a>
+				<a href="org/apache/felix/bundleplugin/baseline/BaselinePlugin.html" target="classFrame">BaselinePlugin</a>
+			</li>
+						<li>
+				<a href="org/apache/felix/bundleplugin/baseline/BaselineReport.html" target="classFrame">BaselineReport</a>
 			</li>
 						<li>
 				<a href="org/apache/felix/bundleplugin/BlueprintPlugin.html" target="classFrame">BlueprintPlugin</a>
@@ -54,6 +60,15 @@
 				<a href="org/apache/maven/shared/dependency/tree/DependencyTreeResolutionListener.html" target="classFrame">DependencyTreeResolutionListener</a>
 			</li>
 						<li>
+				<a href="org/apache/felix/bundleplugin/baseline/DiffMessage.html" target="classFrame">DiffMessage</a>
+			</li>
+						<li>
+				<a href="aQute/bnd/osgi/Verifier.html" target="classFrame">EE</a>
+			</li>
+						<li>
+				<a href="org/apache/felix/bundleplugin/baseline/InfoComparator.html" target="classFrame">InfoComparator</a>
+			</li>
+						<li>
 				<a href="org/apache/felix/bundleplugin/InstructionsPlugin.html" target="classFrame">InstructionsPlugin</a>
 			</li>
 						<li>
@@ -66,6 +81,9 @@
 				<a href="org/apache/maven/shared/osgi/ManifestReadingException.html" target="classFrame">ManifestReadingException</a>
 			</li>
 						<li>
+				<a href="org/apache/felix/bundleplugin/ManifestWriter.html" target="classFrame">ManifestWriter</a>
+			</li>
+						<li>
 				<a href="org/apache/maven/shared/osgi/Maven2OsgiConverter.html" target="classFrame">Maven2OsgiConverter</a>
 			</li>
 						<li>
@@ -102,6 +120,15 @@
 				<a href="org/apache/felix/obrplugin/RemoteFileManager.html" target="classFrame">RemoteFileManager</a>
 			</li>
 						<li>
+				<a href="org/apache/felix/bundleplugin/ScrPlugin.html" target="classFrame">ScrPlugin</a>
+			</li>
+						<li>
+				<a href="org/apache/felix/bundleplugin/baseline/DiffMessage.html" target="classFrame">Type</a>
+			</li>
+						<li>
+				<a href="aQute/bnd/osgi/Verifier.html" target="classFrame">Verifier</a>
+			</li>
+						<li>
 				<a href="org/apache/felix/bundleplugin/VersionCleanerPlugin.html" target="classFrame">VersionCleanerPlugin</a>
 			</li>
 						<li>
diff --git a/bundleplugin/doc/site/xref/index.html b/bundleplugin/doc/site/xref/index.html
index a3c1140..0260334 100644
--- a/bundleplugin/doc/site/xref/index.html
+++ b/bundleplugin/doc/site/xref/index.html
@@ -3,7 +3,7 @@
 <html xml:lang="en" lang="en">
 	<head>
 		<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
-		<title>Maven Bundle Plugin 2.4.0-SNAPSHOT Reference</title>
+		<title>Maven Bundle Plugin 2.5.0 Reference</title>
 	</head>
     <frameset cols="20%,80%">
 		<frameset rows="30%,70%">
diff --git a/bundleplugin/doc/site/xref/org/apache/felix/bundleplugin/BlueprintPlugin.html b/bundleplugin/doc/site/xref/org/apache/felix/bundleplugin/BlueprintPlugin.html
index 92141ff..fb004bc 100644
--- a/bundleplugin/doc/site/xref/org/apache/felix/bundleplugin/BlueprintPlugin.html
+++ b/bundleplugin/doc/site/xref/org/apache/felix/bundleplugin/BlueprintPlugin.html
@@ -36,401 +36,374 @@
 <a name="26" href="#26">26</a>  <strong class="jxr_keyword">import</strong> java.io.InputStream;
 <a name="27" href="#27">27</a>  <strong class="jxr_keyword">import</strong> java.io.InputStreamReader;
 <a name="28" href="#28">28</a>  <strong class="jxr_keyword">import</strong> java.net.URL;
-<a name="29" href="#29">29</a>  <strong class="jxr_keyword">import</strong> java.util.HashSet;
-<a name="30" href="#30">30</a>  <strong class="jxr_keyword">import</strong> java.util.Iterator;
-<a name="31" href="#31">31</a>  <strong class="jxr_keyword">import</strong> java.util.List;
-<a name="32" href="#32">32</a>  <strong class="jxr_keyword">import</strong> java.util.Map;
-<a name="33" href="#33">33</a>  <strong class="jxr_keyword">import</strong> java.util.Set;
-<a name="34" href="#34">34</a>  <strong class="jxr_keyword">import</strong> java.util.TreeSet;
-<a name="35" href="#35">35</a>  <strong class="jxr_keyword">import</strong> java.util.regex.Pattern;
-<a name="36" href="#36">36</a>  
-<a name="37" href="#37">37</a>  <strong class="jxr_keyword">import</strong> javax.xml.transform.Transformer;
-<a name="38" href="#38">38</a>  <strong class="jxr_keyword">import</strong> javax.xml.transform.TransformerFactory;
-<a name="39" href="#39">39</a>  <strong class="jxr_keyword">import</strong> javax.xml.transform.stream.StreamResult;
-<a name="40" href="#40">40</a>  <strong class="jxr_keyword">import</strong> javax.xml.transform.stream.StreamSource;
-<a name="41" href="#41">41</a>  
-<a name="42" href="#42">42</a>  <strong class="jxr_keyword">import</strong> aQute.bnd.service.AnalyzerPlugin;
-<a name="43" href="#43">43</a>  <strong class="jxr_keyword">import</strong> aQute.bnd.osgi.Analyzer;
-<a name="44" href="#44">44</a>  <strong class="jxr_keyword">import</strong> aQute.bnd.osgi.Descriptors.PackageRef;
-<a name="45" href="#45">45</a>  <strong class="jxr_keyword">import</strong> aQute.bnd.osgi.Jar;
-<a name="46" href="#46">46</a>  <strong class="jxr_keyword">import</strong> aQute.bnd.osgi.Processor;
-<a name="47" href="#47">47</a>  <strong class="jxr_keyword">import</strong> aQute.bnd.osgi.Resource;
-<a name="48" href="#48">48</a>  <strong class="jxr_keyword">import</strong> aQute.libg.generics.Create;
-<a name="49" href="#49">49</a>  <strong class="jxr_keyword">import</strong> aQute.libg.qtokens.QuotedTokenizer;
-<a name="50" href="#50">50</a>  <strong class="jxr_keyword">import</strong> aQute.service.reporter.Reporter;
-<a name="51" href="#51">51</a>  
-<a name="52" href="#52">52</a>  
-<a name="53" href="#53">53</a>  <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">class</strong> <a href="../../../../org/apache/felix/bundleplugin/BlueprintPlugin.html">BlueprintPlugin</a> implements AnalyzerPlugin
-<a name="54" href="#54">54</a>  {
-<a name="55" href="#55">55</a>  
-<a name="56" href="#56">56</a>      <strong class="jxr_keyword">static</strong> Pattern QN = Pattern.compile( <span class="jxr_string">"[_A-Za-z$][_A-Za-z0-9$]*(&#92;&#92;.[_A-Za-z$][_A-Za-z0-9$]*)*"</span> );
-<a name="57" href="#57">57</a>      <strong class="jxr_keyword">static</strong> Pattern PATHS = Pattern.compile( <span class="jxr_string">".*&#92;&#92;.xml"</span> );
-<a name="58" href="#58">58</a>  
-<a name="59" href="#59">59</a>      Transformer transformer;
-<a name="60" href="#60">60</a>  
+<a name="29" href="#29">29</a>  <strong class="jxr_keyword">import</strong> java.util.ArrayList;
+<a name="30" href="#30">30</a>  <strong class="jxr_keyword">import</strong> java.util.Arrays;
+<a name="31" href="#31">31</a>  <strong class="jxr_keyword">import</strong> java.util.HashSet;
+<a name="32" href="#32">32</a>  <strong class="jxr_keyword">import</strong> java.util.Iterator;
+<a name="33" href="#33">33</a>  <strong class="jxr_keyword">import</strong> java.util.LinkedHashMap;
+<a name="34" href="#34">34</a>  <strong class="jxr_keyword">import</strong> java.util.List;
+<a name="35" href="#35">35</a>  <strong class="jxr_keyword">import</strong> java.util.Map;
+<a name="36" href="#36">36</a>  <strong class="jxr_keyword">import</strong> java.util.Set;
+<a name="37" href="#37">37</a>  <strong class="jxr_keyword">import</strong> java.util.TreeSet;
+<a name="38" href="#38">38</a>  <strong class="jxr_keyword">import</strong> java.util.regex.Pattern;
+<a name="39" href="#39">39</a>  
+<a name="40" href="#40">40</a>  <strong class="jxr_keyword">import</strong> javax.xml.transform.Transformer;
+<a name="41" href="#41">41</a>  <strong class="jxr_keyword">import</strong> javax.xml.transform.TransformerFactory;
+<a name="42" href="#42">42</a>  <strong class="jxr_keyword">import</strong> javax.xml.transform.stream.StreamResult;
+<a name="43" href="#43">43</a>  <strong class="jxr_keyword">import</strong> javax.xml.transform.stream.StreamSource;
+<a name="44" href="#44">44</a>  
+<a name="45" href="#45">45</a>  <strong class="jxr_keyword">import</strong> aQute.bnd.header.Attrs;
+<a name="46" href="#46">46</a>  <strong class="jxr_keyword">import</strong> aQute.bnd.service.AnalyzerPlugin;
+<a name="47" href="#47">47</a>  <strong class="jxr_keyword">import</strong> aQute.bnd.osgi.Analyzer;
+<a name="48" href="#48">48</a>  <strong class="jxr_keyword">import</strong> aQute.bnd.osgi.Descriptors.PackageRef;
+<a name="49" href="#49">49</a>  <strong class="jxr_keyword">import</strong> aQute.bnd.osgi.Jar;
+<a name="50" href="#50">50</a>  <strong class="jxr_keyword">import</strong> aQute.bnd.osgi.Processor;
+<a name="51" href="#51">51</a>  <strong class="jxr_keyword">import</strong> aQute.bnd.osgi.Resource;
+<a name="52" href="#52">52</a>  <strong class="jxr_keyword">import</strong> aQute.libg.generics.Create;
+<a name="53" href="#53">53</a>  <strong class="jxr_keyword">import</strong> aQute.libg.qtokens.QuotedTokenizer;
+<a name="54" href="#54">54</a>  <strong class="jxr_keyword">import</strong> aQute.service.reporter.Reporter;
+<a name="55" href="#55">55</a>  <strong class="jxr_keyword">import</strong> org.apache.felix.utils.manifest.Attribute;
+<a name="56" href="#56">56</a>  <strong class="jxr_keyword">import</strong> org.apache.felix.utils.manifest.Clause;
+<a name="57" href="#57">57</a>  <strong class="jxr_keyword">import</strong> org.apache.felix.utils.manifest.Directive;
+<a name="58" href="#58">58</a>  <strong class="jxr_keyword">import</strong> org.osgi.framework.Constants;
+<a name="59" href="#59">59</a>  
+<a name="60" href="#60">60</a>  <strong class="jxr_keyword">import</strong> <strong class="jxr_keyword">static</strong> org.apache.felix.utils.manifest.Parser.parseHeader;
 <a name="61" href="#61">61</a>  
-<a name="62" href="#62">62</a>      <strong class="jxr_keyword">public</strong> <a href="../../../../org/apache/felix/bundleplugin/BlueprintPlugin.html">BlueprintPlugin</a>() <strong class="jxr_keyword">throws</strong> Exception
-<a name="63" href="#63">63</a>      {
-<a name="64" href="#64">64</a>          transformer = getTransformer( getClass().getResource( <span class="jxr_string">"blueprint.xsl"</span> ) );
-<a name="65" href="#65">65</a>      }
-<a name="66" href="#66">66</a>  
-<a name="67" href="#67">67</a>  
-<a name="68" href="#68">68</a>      <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">boolean</strong> analyzeJar( Analyzer analyzer ) <strong class="jxr_keyword">throws</strong> Exception
-<a name="69" href="#69">69</a>      {
-<a name="70" href="#70">70</a>          transformer.setParameter( <span class="jxr_string">"nsh_interface"</span>,
-<a name="71" href="#71">71</a>              analyzer.getProperty( <span class="jxr_string">"nsh_interface"</span> ) != <strong class="jxr_keyword">null</strong> ? analyzer.getProperty( <span class="jxr_string">"nsh_interface"</span> ) : <span class="jxr_string">""</span> );
-<a name="72" href="#72">72</a>          transformer.setParameter( <span class="jxr_string">"nsh_namespace"</span>,
-<a name="73" href="#73">73</a>              analyzer.getProperty( <span class="jxr_string">"nsh_namespace"</span> ) != <strong class="jxr_keyword">null</strong> ? analyzer.getProperty( <span class="jxr_string">"nsh_namespace"</span> ) : <span class="jxr_string">""</span> );
-<a name="74" href="#74">74</a>  
-<a name="75" href="#75">75</a>          Set&lt;String&gt; headers = Create.set();
+<a name="62" href="#62">62</a>  
+<a name="63" href="#63">63</a>  <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">class</strong> <a href="../../../../org/apache/felix/bundleplugin/BlueprintPlugin.html">BlueprintPlugin</a> implements AnalyzerPlugin
+<a name="64" href="#64">64</a>  {
+<a name="65" href="#65">65</a>  
+<a name="66" href="#66">66</a>      <strong class="jxr_keyword">static</strong> Pattern QN = Pattern.compile( <span class="jxr_string">"[_A-Za-z$][_A-Za-z0-9$]*(&#92;&#92;.[_A-Za-z$][_A-Za-z0-9$]*)*"</span> );
+<a name="67" href="#67">67</a>      <strong class="jxr_keyword">static</strong> Pattern PATHS = Pattern.compile( <span class="jxr_string">".*&#92;&#92;.xml"</span> );
+<a name="68" href="#68">68</a>  
+<a name="69" href="#69">69</a>      Transformer transformer;
+<a name="70" href="#70">70</a>  
+<a name="71" href="#71">71</a>  
+<a name="72" href="#72">72</a>      <strong class="jxr_keyword">public</strong> <a href="../../../../org/apache/felix/bundleplugin/BlueprintPlugin.html">BlueprintPlugin</a>() <strong class="jxr_keyword">throws</strong> Exception
+<a name="73" href="#73">73</a>      {
+<a name="74" href="#74">74</a>          transformer = getTransformer( getClass().getResource( <span class="jxr_string">"blueprint.xsl"</span> ) );
+<a name="75" href="#75">75</a>      }
 <a name="76" href="#76">76</a>  
-<a name="77" href="#77">77</a>          String bpHeader = analyzer.getProperty( <span class="jxr_string">"Bundle-Blueprint"</span>, <span class="jxr_string">"OSGI-INF/blueprint"</span> );
-<a name="78" href="#78">78</a>          Map&lt;String, ? <strong class="jxr_keyword">extends</strong> Map&lt;String, String&gt;&gt; map = Processor.parseHeader( bpHeader, <strong class="jxr_keyword">null</strong> );
-<a name="79" href="#79">79</a>  		bpHeader = <span class="jxr_string">""</span>;
-<a name="80" href="#80">80</a>          <strong class="jxr_keyword">for</strong> ( String root : map.keySet() )
-<a name="81" href="#81">81</a>          {
-<a name="82" href="#82">82</a>              Jar jar = analyzer.getJar();
-<a name="83" href="#83">83</a>              Map&lt;String, Resource&gt; dir = jar.getDirectories().get( root );
-<a name="84" href="#84">84</a>              <strong class="jxr_keyword">if</strong> ( dir == <strong class="jxr_keyword">null</strong> || dir.isEmpty() )
-<a name="85" href="#85">85</a>              {
-<a name="86" href="#86">86</a>                  Resource resource = jar.getResource( root );
-<a name="87" href="#87">87</a>                  <strong class="jxr_keyword">if</strong> ( resource != <strong class="jxr_keyword">null</strong> ) 
-<a name="88" href="#88">88</a>  				{
-<a name="89" href="#89">89</a>                      process( analyzer, root, resource, headers );
-<a name="90" href="#90">90</a>  					<strong class="jxr_keyword">if</strong> (bpHeader.length() &gt; 0) {
-<a name="91" href="#91">91</a>  						bpHeader += <span class="jxr_string">","</span>;
-<a name="92" href="#92">92</a>  					}
-<a name="93" href="#93">93</a>  					bpHeader += root;
-<a name="94" href="#94">94</a>  				}
-<a name="95" href="#95">95</a>                  <strong class="jxr_keyword">continue</strong>;
-<a name="96" href="#96">96</a>              }
-<a name="97" href="#97">97</a>              <strong class="jxr_keyword">for</strong> ( Map.Entry&lt;String, Resource&gt; entry : dir.entrySet() )
-<a name="98" href="#98">98</a>              {
-<a name="99" href="#99">99</a>                  String path = entry.getKey();
-<a name="100" href="#100">100</a>                 Resource resource = entry.getValue();
-<a name="101" href="#101">101</a>                 <strong class="jxr_keyword">if</strong> ( PATHS.matcher( path ).matches() ) 
-<a name="102" href="#102">102</a> 				{
-<a name="103" href="#103">103</a>                     process( analyzer, path, resource, headers );
-<a name="104" href="#104">104</a> 					<strong class="jxr_keyword">if</strong> (bpHeader.length() &gt; 0) {
-<a name="105" href="#105">105</a> 						bpHeader += <span class="jxr_string">","</span>;
-<a name="106" href="#106">106</a> 					}
-<a name="107" href="#107">107</a> 					bpHeader += path;
-<a name="108" href="#108">108</a> 				}
-<a name="109" href="#109">109</a>             }
-<a name="110" href="#110">110</a>         }
-<a name="111" href="#111">111</a> 		<strong class="jxr_keyword">if</strong>( !map.isEmpty() ) 
-<a name="112" href="#112">112</a> 		{
-<a name="113" href="#113">113</a> 			analyzer.setProperty(<span class="jxr_string">"Bundle-Blueprint"</span>, bpHeader);
-<a name="114" href="#114">114</a> 		}
-<a name="115" href="#115">115</a> 
-<a name="116" href="#116">116</a>         <em class="jxr_comment">// Group and analyze</em>
-<a name="117" href="#117">117</a>         Map&lt;String, Set&lt;Attribute&gt;&gt; hdrs = Create.map();
-<a name="118" href="#118">118</a>         <strong class="jxr_keyword">for</strong> ( String str : headers )
-<a name="119" href="#119">119</a>         {
-<a name="120" href="#120">120</a>             <strong class="jxr_keyword">int</strong> idx = str.indexOf( ':' );
-<a name="121" href="#121">121</a>             <strong class="jxr_keyword">if</strong> ( idx &lt; 0 )
-<a name="122" href="#122">122</a>             {
-<a name="123" href="#123">123</a>                 analyzer.warning( ( <strong class="jxr_keyword">new</strong> StringBuilder( <span class="jxr_string">"Error analyzing services in blueprint resource: "</span> ) ).append(
-<a name="124" href="#124">124</a>                     str ).toString() );
-<a name="125" href="#125">125</a>                 <strong class="jxr_keyword">continue</strong>;
-<a name="126" href="#126">126</a>             }
-<a name="127" href="#127">127</a>             String h = str.substring( 0, idx ).trim();
-<a name="128" href="#128">128</a>             String v = str.substring( idx + 1 ).trim();
-<a name="129" href="#129">129</a>             Set&lt;Attribute&gt; att = hdrs.get( h );
-<a name="130" href="#130">130</a>             <strong class="jxr_keyword">if</strong> ( att == <strong class="jxr_keyword">null</strong> )
-<a name="131" href="#131">131</a>             {
-<a name="132" href="#132">132</a>                 att = <strong class="jxr_keyword">new</strong> TreeSet&lt;Attribute&gt;();
-<a name="133" href="#133">133</a>                 hdrs.put( h, att );
-<a name="134" href="#134">134</a>             }
-<a name="135" href="#135">135</a>             att.addAll( parseHeader( v, <strong class="jxr_keyword">null</strong> ) );
-<a name="136" href="#136">136</a>         }
-<a name="137" href="#137">137</a>         <em class="jxr_comment">// Merge</em>
-<a name="138" href="#138">138</a>         <strong class="jxr_keyword">for</strong> ( String header : hdrs.keySet() )
-<a name="139" href="#139">139</a>         {
-<a name="140" href="#140">140</a>             <strong class="jxr_keyword">if</strong> ( <span class="jxr_string">"Import-Class"</span>.equals( header ) || <span class="jxr_string">"Import-Package"</span>.equals( header ) )
-<a name="141" href="#141">141</a>             {
-<a name="142" href="#142">142</a>                 Set&lt;Attribute&gt; newAttr = hdrs.get( header );
-<a name="143" href="#143">143</a>                 <strong class="jxr_keyword">for</strong> ( Attribute a : newAttr )
-<a name="144" href="#144">144</a>                 {
-<a name="145" href="#145">145</a>                     String pkg = a.getName();
-<a name="146" href="#146">146</a>                     <strong class="jxr_keyword">if</strong> ( <span class="jxr_string">"Import-Class"</span>.equals( header ) )
-<a name="147" href="#147">147</a>                     {
-<a name="148" href="#148">148</a>                         <strong class="jxr_keyword">int</strong> n = a.getName().lastIndexOf( '.' );
-<a name="149" href="#149">149</a>                         <strong class="jxr_keyword">if</strong> ( n &gt; 0 )
-<a name="150" href="#150">150</a>                         {
-<a name="151" href="#151">151</a>                             pkg = pkg.subSequence( 0, n ).toString();
-<a name="152" href="#152">152</a>                         }
-<a name="153" href="#153">153</a>                         <strong class="jxr_keyword">else</strong>
-<a name="154" href="#154">154</a>                         {
-<a name="155" href="#155">155</a>                             <strong class="jxr_keyword">continue</strong>;
-<a name="156" href="#156">156</a>                         }
-<a name="157" href="#157">157</a>                     }
-<a name="158" href="#158">158</a>                     PackageRef pkgRef = analyzer.getPackageRef( pkg );
-<a name="159" href="#159">159</a>                     <strong class="jxr_keyword">if</strong> ( !analyzer.getReferred().containsKey( pkgRef ) )
-<a name="160" href="#160">160</a>                     {
-<a name="161" href="#161">161</a>                         analyzer.getReferred().put( pkgRef ).putAll( a.getProperties() );
-<a name="162" href="#162">162</a>                     }
-<a name="163" href="#163">163</a>                 }
-<a name="164" href="#164">164</a>             }
-<a name="165" href="#165">165</a>             <strong class="jxr_keyword">else</strong>
-<a name="166" href="#166">166</a>             {
-<a name="167" href="#167">167</a>                 Set&lt;Attribute&gt; orgAttr = parseHeader( analyzer.getProperty( header ), <strong class="jxr_keyword">null</strong> );
-<a name="168" href="#168">168</a>                 Set&lt;Attribute&gt; newAttr = hdrs.get( header );
-<a name="169" href="#169">169</a>                 <strong class="jxr_keyword">for</strong> ( Iterator&lt;Attribute&gt; it = newAttr.iterator(); it.hasNext(); )
-<a name="170" href="#170">170</a>                 {
-<a name="171" href="#171">171</a>                     <a href="../../../../org/apache/felix/bundleplugin/BlueprintPlugin.html">Attribute</a> a = it.next();
-<a name="172" href="#172">172</a>                     <strong class="jxr_keyword">for</strong> ( Attribute b : orgAttr )
-<a name="173" href="#173">173</a>                     {
-<a name="174" href="#174">174</a>                         <strong class="jxr_keyword">if</strong> ( b.getName().equals( a.getName() ) )
-<a name="175" href="#175">175</a>                         {
-<a name="176" href="#176">176</a>                             it.remove();
-<a name="177" href="#177">177</a>                             <strong class="jxr_keyword">break</strong>;
-<a name="178" href="#178">178</a>                         }
-<a name="179" href="#179">179</a>                     }
-<a name="180" href="#180">180</a>                 }
-<a name="181" href="#181">181</a>                 orgAttr.addAll( newAttr );
-<a name="182" href="#182">182</a>                 <em class="jxr_comment">// Rebuild from orgAttr</em>
-<a name="183" href="#183">183</a>                 StringBuilder sb = <strong class="jxr_keyword">new</strong> StringBuilder();
-<a name="184" href="#184">184</a>                 <strong class="jxr_keyword">for</strong> ( Attribute a : orgAttr )
-<a name="185" href="#185">185</a>                 {
-<a name="186" href="#186">186</a>                     <strong class="jxr_keyword">if</strong> ( sb.length() &gt; 0 )
-<a name="187" href="#187">187</a>                     {
-<a name="188" href="#188">188</a>                         sb.append( <span class="jxr_string">","</span> );
-<a name="189" href="#189">189</a>                     }
-<a name="190" href="#190">190</a>                     sb.append( a.getName() );
-<a name="191" href="#191">191</a>                     <strong class="jxr_keyword">for</strong> ( Map.Entry&lt;String, String&gt; prop : a.getProperties().entrySet() )
-<a name="192" href="#192">192</a>                     {
-<a name="193" href="#193">193</a>                         sb.append( ';' ).append( prop.getKey() ).append( <span class="jxr_string">"="</span> );
-<a name="194" href="#194">194</a>                         <strong class="jxr_keyword">if</strong> ( prop.getValue().matches( <span class="jxr_string">"[0-9a-zA-Z_-]+"</span> ) )
-<a name="195" href="#195">195</a>                         {
-<a name="196" href="#196">196</a>                             sb.append( prop.getValue() );
-<a name="197" href="#197">197</a>                         }
-<a name="198" href="#198">198</a>                         <strong class="jxr_keyword">else</strong>
+<a name="77" href="#77">77</a>  
+<a name="78" href="#78">78</a>      <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">boolean</strong> analyzeJar( Analyzer analyzer ) <strong class="jxr_keyword">throws</strong> Exception
+<a name="79" href="#79">79</a>      {
+<a name="80" href="#80">80</a>          String mode = analyzer.getProperty(<span class="jxr_string">"service_mode"</span>);
+<a name="81" href="#81">81</a>          <strong class="jxr_keyword">if</strong> (mode == <strong class="jxr_keyword">null</strong>) {
+<a name="82" href="#82">82</a>              mode = <span class="jxr_string">"service"</span>;
+<a name="83" href="#83">83</a>          }
+<a name="84" href="#84">84</a>  
+<a name="85" href="#85">85</a>          transformer.setParameter( <span class="jxr_string">"nsh_interface"</span>,
+<a name="86" href="#86">86</a>              analyzer.getProperty( <span class="jxr_string">"nsh_interface"</span> ) != <strong class="jxr_keyword">null</strong> ? analyzer.getProperty( <span class="jxr_string">"nsh_interface"</span> ) : <span class="jxr_string">""</span> );
+<a name="87" href="#87">87</a>          transformer.setParameter( <span class="jxr_string">"nsh_namespace"</span>,
+<a name="88" href="#88">88</a>              analyzer.getProperty( <span class="jxr_string">"nsh_namespace"</span> ) != <strong class="jxr_keyword">null</strong> ? analyzer.getProperty( <span class="jxr_string">"nsh_namespace"</span> ) : <span class="jxr_string">""</span> );
+<a name="89" href="#89">89</a>  
+<a name="90" href="#90">90</a>          Set&lt;String&gt; headers = Create.set();
+<a name="91" href="#91">91</a>  
+<a name="92" href="#92">92</a>          String bpHeader = analyzer.getProperty( <span class="jxr_string">"Bundle-Blueprint"</span>, <span class="jxr_string">"OSGI-INF/blueprint"</span> );
+<a name="93" href="#93">93</a>          Map&lt;String, ? <strong class="jxr_keyword">extends</strong> Map&lt;String, String&gt;&gt; map = Processor.parseHeader( bpHeader, <strong class="jxr_keyword">null</strong> );
+<a name="94" href="#94">94</a>  		bpHeader = <span class="jxr_string">""</span>;
+<a name="95" href="#95">95</a>          <strong class="jxr_keyword">for</strong> ( String root : map.keySet() )
+<a name="96" href="#96">96</a>          {
+<a name="97" href="#97">97</a>              Jar jar = analyzer.getJar();
+<a name="98" href="#98">98</a>              Map&lt;String, Resource&gt; dir = jar.getDirectories().get( root );
+<a name="99" href="#99">99</a>              <strong class="jxr_keyword">if</strong> ( dir == <strong class="jxr_keyword">null</strong> || dir.isEmpty() )
+<a name="100" href="#100">100</a>             {
+<a name="101" href="#101">101</a>                 Resource resource = jar.getResource( root );
+<a name="102" href="#102">102</a>                 <strong class="jxr_keyword">if</strong> ( resource != <strong class="jxr_keyword">null</strong> ) 
+<a name="103" href="#103">103</a> 				{
+<a name="104" href="#104">104</a>                     process( analyzer, root, resource, headers );
+<a name="105" href="#105">105</a> 					<strong class="jxr_keyword">if</strong> (bpHeader.length() &gt; 0) {
+<a name="106" href="#106">106</a> 						bpHeader += <span class="jxr_string">","</span>;
+<a name="107" href="#107">107</a> 					}
+<a name="108" href="#108">108</a> 					bpHeader += root;
+<a name="109" href="#109">109</a> 				}
+<a name="110" href="#110">110</a>                 <strong class="jxr_keyword">continue</strong>;
+<a name="111" href="#111">111</a>             }
+<a name="112" href="#112">112</a>             <strong class="jxr_keyword">for</strong> ( Map.Entry&lt;String, Resource&gt; entry : dir.entrySet() )
+<a name="113" href="#113">113</a>             {
+<a name="114" href="#114">114</a>                 String path = entry.getKey();
+<a name="115" href="#115">115</a>                 Resource resource = entry.getValue();
+<a name="116" href="#116">116</a>                 <strong class="jxr_keyword">if</strong> ( PATHS.matcher( path ).matches() ) 
+<a name="117" href="#117">117</a> 				{
+<a name="118" href="#118">118</a>                     process( analyzer, path, resource, headers );
+<a name="119" href="#119">119</a> 					<strong class="jxr_keyword">if</strong> (bpHeader.length() &gt; 0) {
+<a name="120" href="#120">120</a> 						bpHeader += <span class="jxr_string">","</span>;
+<a name="121" href="#121">121</a> 					}
+<a name="122" href="#122">122</a> 					bpHeader += path;
+<a name="123" href="#123">123</a> 				}
+<a name="124" href="#124">124</a>             }
+<a name="125" href="#125">125</a>         }
+<a name="126" href="#126">126</a> 		<strong class="jxr_keyword">if</strong>( !map.isEmpty() ) 
+<a name="127" href="#127">127</a> 		{
+<a name="128" href="#128">128</a> 			analyzer.setProperty(<span class="jxr_string">"Bundle-Blueprint"</span>, bpHeader);
+<a name="129" href="#129">129</a> 		}
+<a name="130" href="#130">130</a> 
+<a name="131" href="#131">131</a>         <em class="jxr_comment">// Group and analyze</em>
+<a name="132" href="#132">132</a>         Set&lt;String&gt; caps = Create.set();
+<a name="133" href="#133">133</a>         Set&lt;String&gt; reqs = Create.set();
+<a name="134" href="#134">134</a>         Map&lt;String, Set&lt;Clause&gt;&gt; hdrs = Create.map();
+<a name="135" href="#135">135</a>         <strong class="jxr_keyword">for</strong> ( String str : headers )
+<a name="136" href="#136">136</a>         {
+<a name="137" href="#137">137</a>             <strong class="jxr_keyword">int</strong> idx = str.indexOf( ':' );
+<a name="138" href="#138">138</a>             <strong class="jxr_keyword">if</strong> ( idx &lt; 0 )
+<a name="139" href="#139">139</a>             {
+<a name="140" href="#140">140</a>                 analyzer.warning( ( <strong class="jxr_keyword">new</strong> StringBuilder( <span class="jxr_string">"Error analyzing services in blueprint resource: "</span> ) ).append(
+<a name="141" href="#141">141</a>                     str ).toString() );
+<a name="142" href="#142">142</a>                 <strong class="jxr_keyword">continue</strong>;
+<a name="143" href="#143">143</a>             }
+<a name="144" href="#144">144</a>             String h = str.substring( 0, idx ).trim();
+<a name="145" href="#145">145</a>             String v = str.substring( idx + 1 ).trim();
+<a name="146" href="#146">146</a>             Clause[] hc = parseHeader(v);
+<a name="147" href="#147">147</a>             <em class="jxr_comment">// Convert generic caps/reqs</em>
+<a name="148" href="#148">148</a>             <strong class="jxr_keyword">if</strong> (<span class="jxr_string">"Import-Service"</span>.equals(h))
+<a name="149" href="#149">149</a>             {
+<a name="150" href="#150">150</a>                 <strong class="jxr_keyword">if</strong> (!<span class="jxr_string">"service"</span>.equals(mode))
+<a name="151" href="#151">151</a>                 {
+<a name="152" href="#152">152</a>                     Clause clause = hc[0];
+<a name="153" href="#153">153</a>                     String multiple = clause.getDirective(<span class="jxr_string">"multiple"</span>);
+<a name="154" href="#154">154</a>                     String avail = clause.getDirective(<span class="jxr_string">"availability"</span>);
+<a name="155" href="#155">155</a>                     String filter = clause.getAttribute(<span class="jxr_string">"filter"</span>);
+<a name="156" href="#156">156</a> 
+<a name="157" href="#157">157</a>                     StringBuilder sb = <strong class="jxr_keyword">new</strong> StringBuilder();
+<a name="158" href="#158">158</a>                     sb.append(<span class="jxr_string">"osgi.service;effective:=active;"</span>);
+<a name="159" href="#159">159</a>                     <strong class="jxr_keyword">if</strong> (<span class="jxr_string">"optional"</span>.equals(avail)) {
+<a name="160" href="#160">160</a>                         sb.append(<span class="jxr_string">"resolution:=optional;"</span>);
+<a name="161" href="#161">161</a>                     }
+<a name="162" href="#162">162</a>                     <strong class="jxr_keyword">if</strong> (<span class="jxr_string">"true"</span>.equals(multiple)) {
+<a name="163" href="#163">163</a>                         sb.append(<span class="jxr_string">"cardinality:=multiple;"</span>);
+<a name="164" href="#164">164</a>                     }
+<a name="165" href="#165">165</a>                     <strong class="jxr_keyword">if</strong> (filter == <strong class="jxr_keyword">null</strong>) {
+<a name="166" href="#166">166</a>                         filter = <span class="jxr_string">"("</span> + Constants.OBJECTCLASS + <span class="jxr_string">"="</span> + clause.getName() + <span class="jxr_string">")"</span>;
+<a name="167" href="#167">167</a>                     } <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> (!filter.startsWith(<span class="jxr_string">"("</span>) &amp;&amp; !filter.endsWith(<span class="jxr_string">")"</span>)) {
+<a name="168" href="#168">168</a>                         filter = <span class="jxr_string">"(&amp;("</span> + Constants.OBJECTCLASS + <span class="jxr_string">"="</span> + clause.getName() + <span class="jxr_string">")("</span> + filter + <span class="jxr_string">"))"</span>;
+<a name="169" href="#169">169</a>                     } <strong class="jxr_keyword">else</strong> {
+<a name="170" href="#170">170</a>                         filter = <span class="jxr_string">"(&amp;("</span> + Constants.OBJECTCLASS + <span class="jxr_string">"="</span> + clause.getName() + <span class="jxr_string">")"</span> + filter + <span class="jxr_string">")"</span>;
+<a name="171" href="#171">171</a>                     }
+<a name="172" href="#172">172</a>                     sb.append(<span class="jxr_string">"filter:=\&quot;"</span>).append(filter).append(<span class="jxr_string">"\&quot;"</span>);
+<a name="173" href="#173">173</a>                     reqs.add(sb.toString());
+<a name="174" href="#174">174</a>                 }
+<a name="175" href="#175">175</a>                 <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> (!<span class="jxr_string">"generic"</span>.equals(mode))
+<a name="176" href="#176">176</a>                 {
+<a name="177" href="#177">177</a>                     Set&lt;Clause&gt; clauses = hdrs.get(h);
+<a name="178" href="#178">178</a>                     <strong class="jxr_keyword">if</strong> (clauses == <strong class="jxr_keyword">null</strong>) {
+<a name="179" href="#179">179</a>                         clauses = <strong class="jxr_keyword">new</strong> HashSet&lt;Clause&gt;();
+<a name="180" href="#180">180</a>                         hdrs.put(h, clauses);
+<a name="181" href="#181">181</a>                     }
+<a name="182" href="#182">182</a>                     clauses.addAll(Arrays.asList(hc));
+<a name="183" href="#183">183</a>                 }
+<a name="184" href="#184">184</a>             }
+<a name="185" href="#185">185</a>             <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> (<span class="jxr_string">"Export-Service"</span>.equals(h))
+<a name="186" href="#186">186</a>             {
+<a name="187" href="#187">187</a>                 <strong class="jxr_keyword">if</strong> (!<span class="jxr_string">"service"</span>.equals(mode))
+<a name="188" href="#188">188</a>                 {
+<a name="189" href="#189">189</a>                     StringBuilder sb = <strong class="jxr_keyword">new</strong> StringBuilder();
+<a name="190" href="#190">190</a>                     sb.append(<span class="jxr_string">"osgi.service;effective:=active;objectClass"</span>);
+<a name="191" href="#191">191</a>                     <strong class="jxr_keyword">if</strong> (hc.length &gt; 1) {
+<a name="192" href="#192">192</a>                         sb.append(<span class="jxr_string">":List&lt;String&gt;=\&quot;"</span>);
+<a name="193" href="#193">193</a>                     } <strong class="jxr_keyword">else</strong> {
+<a name="194" href="#194">194</a>                         sb.append(<span class="jxr_string">"=\&quot;"</span>);
+<a name="195" href="#195">195</a>                     }
+<a name="196" href="#196">196</a>                     <strong class="jxr_keyword">for</strong> (<strong class="jxr_keyword">int</strong> i = 0; i &lt; hc.length; i++)
+<a name="197" href="#197">197</a>                     {
+<a name="198" href="#198">198</a>                         <strong class="jxr_keyword">if</strong> (i &gt; 0)
 <a name="199" href="#199">199</a>                         {
-<a name="200" href="#200">200</a>                             sb.append( <span class="jxr_string">"\&quot;"</span> );
-<a name="201" href="#201">201</a>                             sb.append( prop.getValue().replace( <span class="jxr_string">"\&quot;"</span>, <span class="jxr_string">"&#92;&#92;\&quot;"</span> ) );
-<a name="202" href="#202">202</a>                             sb.append( <span class="jxr_string">"\&quot;"</span> );
-<a name="203" href="#203">203</a>                         }
-<a name="204" href="#204">204</a>                     }
-<a name="205" href="#205">205</a>                 }
-<a name="206" href="#206">206</a>                 analyzer.setProperty( header, sb.toString() );
-<a name="207" href="#207">207</a>             }
-<a name="208" href="#208">208</a>         }
-<a name="209" href="#209">209</a>         <strong class="jxr_keyword">return</strong> false;
-<a name="210" href="#210">210</a>     }
-<a name="211" href="#211">211</a> 
-<a name="212" href="#212">212</a> 
-<a name="213" href="#213">213</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">void</strong> process( Analyzer analyzer, String path, Resource resource, Set&lt;String&gt; headers )
-<a name="214" href="#214">214</a>     {
-<a name="215" href="#215">215</a>         InputStream in = <strong class="jxr_keyword">null</strong>;
-<a name="216" href="#216">216</a>         <strong class="jxr_keyword">try</strong>
-<a name="217" href="#217">217</a>         {
-<a name="218" href="#218">218</a>             in = resource.openInputStream();
-<a name="219" href="#219">219</a> 
-<a name="220" href="#220">220</a>             <em class="jxr_comment">// Retrieve headers</em>
-<a name="221" href="#221">221</a>             Set&lt;String&gt; set = analyze( in );
-<a name="222" href="#222">222</a>             headers.addAll( set );
-<a name="223" href="#223">223</a>         }
-<a name="224" href="#224">224</a>         <strong class="jxr_keyword">catch</strong> ( Exception e )
-<a name="225" href="#225">225</a>         {
-<a name="226" href="#226">226</a>             analyzer.error( ( <strong class="jxr_keyword">new</strong> StringBuilder( <span class="jxr_string">"Unexpected exception in processing spring resources("</span> ) )
-<a name="227" href="#227">227</a>                 .append( path ).append( <span class="jxr_string">"): "</span> ).append( e ).toString() );
-<a name="228" href="#228">228</a>         }
-<a name="229" href="#229">229</a>         <strong class="jxr_keyword">finally</strong>
-<a name="230" href="#230">230</a>         {
-<a name="231" href="#231">231</a>             <strong class="jxr_keyword">try</strong>
-<a name="232" href="#232">232</a>             {
-<a name="233" href="#233">233</a>                 <strong class="jxr_keyword">if</strong> ( in != <strong class="jxr_keyword">null</strong> )
-<a name="234" href="#234">234</a>                 {
-<a name="235" href="#235">235</a>                     in.close();
-<a name="236" href="#236">236</a>                 }
-<a name="237" href="#237">237</a>             }
-<a name="238" href="#238">238</a>             <strong class="jxr_keyword">catch</strong> ( IOException e )
-<a name="239" href="#239">239</a>             {
-<a name="240" href="#240">240</a>             }
-<a name="241" href="#241">241</a>         }
-<a name="242" href="#242">242</a>     }
-<a name="243" href="#243">243</a> 
-<a name="244" href="#244">244</a> 
-<a name="245" href="#245">245</a>     <strong class="jxr_keyword">public</strong> Set&lt;String&gt; analyze( InputStream in ) <strong class="jxr_keyword">throws</strong> Exception
-<a name="246" href="#246">246</a>     {
-<a name="247" href="#247">247</a>         Set&lt;String&gt; refers = <strong class="jxr_keyword">new</strong> HashSet&lt;String&gt;();
-<a name="248" href="#248">248</a>         ByteArrayOutputStream bout = <strong class="jxr_keyword">new</strong> ByteArrayOutputStream();
-<a name="249" href="#249">249</a>         javax.xml.transform.Result r = <strong class="jxr_keyword">new</strong> StreamResult( bout );
-<a name="250" href="#250">250</a>         javax.xml.transform.Source s = <strong class="jxr_keyword">new</strong> StreamSource( in );
-<a name="251" href="#251">251</a>         transformer.transform( s, r );
-<a name="252" href="#252">252</a>         ByteArrayInputStream bin = <strong class="jxr_keyword">new</strong> ByteArrayInputStream( bout.toByteArray() );
-<a name="253" href="#253">253</a>         bout.close();
-<a name="254" href="#254">254</a>         BufferedReader br = <strong class="jxr_keyword">new</strong> BufferedReader( <strong class="jxr_keyword">new</strong> InputStreamReader( bin ) );
-<a name="255" href="#255">255</a>         <strong class="jxr_keyword">for</strong> ( String line = br.readLine(); line != <strong class="jxr_keyword">null</strong>; line = br.readLine() )
-<a name="256" href="#256">256</a>         {
-<a name="257" href="#257">257</a>             line = line.trim();
-<a name="258" href="#258">258</a>             line = line.replace( <span class="jxr_string">";availability:=mandatory"</span>, <span class="jxr_string">""</span> );
-<a name="259" href="#259">259</a>             <strong class="jxr_keyword">if</strong> ( line.length() &gt; 0 )
-<a name="260" href="#260">260</a>             {
-<a name="261" href="#261">261</a>                 refers.add( line );
-<a name="262" href="#262">262</a>             }
-<a name="263" href="#263">263</a>         }
-<a name="264" href="#264">264</a> 
-<a name="265" href="#265">265</a>         br.close();
-<a name="266" href="#266">266</a>         <strong class="jxr_keyword">return</strong> refers;
-<a name="267" href="#267">267</a>     }
-<a name="268" href="#268">268</a> 
-<a name="269" href="#269">269</a> 
-<a name="270" href="#270">270</a>     <strong class="jxr_keyword">protected</strong> Transformer getTransformer( URL url ) <strong class="jxr_keyword">throws</strong> Exception
-<a name="271" href="#271">271</a>     {
-<a name="272" href="#272">272</a>         TransformerFactory tf = TransformerFactory.newInstance();
-<a name="273" href="#273">273</a>         javax.xml.transform.Source source = <strong class="jxr_keyword">new</strong> StreamSource( url.openStream() );
-<a name="274" href="#274">274</a>         <strong class="jxr_keyword">return</strong> tf.newTransformer( source );
-<a name="275" href="#275">275</a>     }
-<a name="276" href="#276">276</a> 
-<a name="277" href="#277">277</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">class</strong> <a href="../../../../org/apache/felix/bundleplugin/BlueprintPlugin.html">Attribute</a> implements Comparable&lt;Attribute&gt;
-<a name="278" href="#278">278</a>     {
-<a name="279" href="#279">279</a>         <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong> String name;
-<a name="280" href="#280">280</a>         <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong> Map&lt;String, String&gt; properties;
-<a name="281" href="#281">281</a> 
-<a name="282" href="#282">282</a> 
-<a name="283" href="#283">283</a>         <strong class="jxr_keyword">public</strong> <a href="../../../../org/apache/felix/bundleplugin/BlueprintPlugin.html">Attribute</a>( String name, Map&lt;String, String&gt; properties )
-<a name="284" href="#284">284</a>         {
-<a name="285" href="#285">285</a>             <strong class="jxr_keyword">this</strong>.name = name;
-<a name="286" href="#286">286</a>             <strong class="jxr_keyword">this</strong>.properties = properties;
-<a name="287" href="#287">287</a>         }
-<a name="288" href="#288">288</a> 
-<a name="289" href="#289">289</a> 
-<a name="290" href="#290">290</a>         <strong class="jxr_keyword">public</strong> String getName()
-<a name="291" href="#291">291</a>         {
-<a name="292" href="#292">292</a>             <strong class="jxr_keyword">return</strong> name;
-<a name="293" href="#293">293</a>         }
-<a name="294" href="#294">294</a> 
-<a name="295" href="#295">295</a> 
-<a name="296" href="#296">296</a>         <strong class="jxr_keyword">public</strong> Map&lt;String, String&gt; getProperties()
-<a name="297" href="#297">297</a>         {
-<a name="298" href="#298">298</a>             <strong class="jxr_keyword">return</strong> properties;
-<a name="299" href="#299">299</a>         }
-<a name="300" href="#300">300</a> 
-<a name="301" href="#301">301</a> 
-<a name="302" href="#302">302</a>         <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">int</strong> compareTo( Attribute a )
-<a name="303" href="#303">303</a>         {
-<a name="304" href="#304">304</a>             <strong class="jxr_keyword">int</strong> c = name.compareTo( a.name );
-<a name="305" href="#305">305</a>             <strong class="jxr_keyword">if</strong> ( c == 0 )
-<a name="306" href="#306">306</a>             {
-<a name="307" href="#307">307</a>                 c = properties.equals( a.properties ) ? 0 : properties.size() &lt; a.properties.size() ? -1 : properties
-<a name="308" href="#308">308</a>                     .hashCode() &lt; a.properties.hashCode() ? -1 : +1;
-<a name="309" href="#309">309</a>             }
-<a name="310" href="#310">310</a>             <strong class="jxr_keyword">return</strong> c;
-<a name="311" href="#311">311</a>         }
-<a name="312" href="#312">312</a> 
-<a name="313" href="#313">313</a> 
-<a name="314" href="#314">314</a>         @Override
-<a name="315" href="#315">315</a>         <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">boolean</strong> equals( Object o )
-<a name="316" href="#316">316</a>         {
-<a name="317" href="#317">317</a>             <strong class="jxr_keyword">if</strong> ( <strong class="jxr_keyword">this</strong> == o )
-<a name="318" href="#318">318</a>                 <strong class="jxr_keyword">return</strong> <strong class="jxr_keyword">true</strong>;
-<a name="319" href="#319">319</a>             <strong class="jxr_keyword">if</strong> ( o == <strong class="jxr_keyword">null</strong> || getClass() != o.getClass() )
-<a name="320" href="#320">320</a>                 <strong class="jxr_keyword">return</strong> false;
-<a name="321" href="#321">321</a> 
-<a name="322" href="#322">322</a>             <a href="../../../../org/apache/felix/bundleplugin/BlueprintPlugin.html">Attribute</a> attribute = ( Attribute ) o;
+<a name="200" href="#200">200</a>                             sb.append(<span class="jxr_string">","</span>);
+<a name="201" href="#201">201</a>                         }
+<a name="202" href="#202">202</a>                         sb.append(hc[i].getName());
+<a name="203" href="#203">203</a>                     }
+<a name="204" href="#204">204</a>                     sb.append(<span class="jxr_string">"\&quot;"</span>);
+<a name="205" href="#205">205</a>                     <strong class="jxr_keyword">for</strong> (<strong class="jxr_keyword">int</strong> i = 0; i &lt; hc[0].getAttributes().length; i++)
+<a name="206" href="#206">206</a>                     {
+<a name="207" href="#207">207</a>                         sb.append(<span class="jxr_string">";"</span>);
+<a name="208" href="#208">208</a>                         sb.append(hc[0].getAttributes()[i].getName());
+<a name="209" href="#209">209</a>                         sb.append(<span class="jxr_string">"=\&quot;"</span>);
+<a name="210" href="#210">210</a>                         sb.append(hc[0].getAttributes()[i].getValue());
+<a name="211" href="#211">211</a>                         sb.append(<span class="jxr_string">"\&quot;"</span>);
+<a name="212" href="#212">212</a>                     }
+<a name="213" href="#213">213</a>                     caps.add(sb.toString());
+<a name="214" href="#214">214</a>                 }
+<a name="215" href="#215">215</a>                 <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> (!<span class="jxr_string">"generic"</span>.equals(mode))
+<a name="216" href="#216">216</a>                 {
+<a name="217" href="#217">217</a>                     Set&lt;Clause&gt; clauses = hdrs.get(h);
+<a name="218" href="#218">218</a>                     <strong class="jxr_keyword">if</strong> (clauses == <strong class="jxr_keyword">null</strong>) {
+<a name="219" href="#219">219</a>                         clauses = <strong class="jxr_keyword">new</strong> HashSet&lt;Clause&gt;();
+<a name="220" href="#220">220</a>                         hdrs.put(h, clauses);
+<a name="221" href="#221">221</a>                     }
+<a name="222" href="#222">222</a>                     clauses.addAll(Arrays.asList(hc));
+<a name="223" href="#223">223</a>                 }
+<a name="224" href="#224">224</a>             }
+<a name="225" href="#225">225</a>             <strong class="jxr_keyword">else</strong>
+<a name="226" href="#226">226</a>             {
+<a name="227" href="#227">227</a>                 Set&lt;Clause&gt; clauses = hdrs.get(h);
+<a name="228" href="#228">228</a>                 <strong class="jxr_keyword">if</strong> (clauses == <strong class="jxr_keyword">null</strong>)
+<a name="229" href="#229">229</a>                 {
+<a name="230" href="#230">230</a>                     clauses = <strong class="jxr_keyword">new</strong> HashSet&lt;Clause&gt;();
+<a name="231" href="#231">231</a>                     hdrs.put(h, clauses);
+<a name="232" href="#232">232</a>                 }
+<a name="233" href="#233">233</a>                 clauses.addAll(Arrays.asList( hc ) );
+<a name="234" href="#234">234</a>             }
+<a name="235" href="#235">235</a>         }
+<a name="236" href="#236">236</a>         <strong class="jxr_keyword">if</strong> (!caps.isEmpty())
+<a name="237" href="#237">237</a>         {
+<a name="238" href="#238">238</a>             StringBuilder sb = <strong class="jxr_keyword">new</strong> StringBuilder();
+<a name="239" href="#239">239</a>             String header = analyzer.getProperty(<span class="jxr_string">"Provide-Capability"</span>);
+<a name="240" href="#240">240</a>             <strong class="jxr_keyword">if</strong> (header != <strong class="jxr_keyword">null</strong>)
+<a name="241" href="#241">241</a>             {
+<a name="242" href="#242">242</a>                 sb.append(header);
+<a name="243" href="#243">243</a>             }
+<a name="244" href="#244">244</a>             <strong class="jxr_keyword">for</strong> (String cap : caps) {
+<a name="245" href="#245">245</a>                 <strong class="jxr_keyword">if</strong> (sb.length() &gt; 0) {
+<a name="246" href="#246">246</a>                     sb.append(<span class="jxr_string">","</span>);
+<a name="247" href="#247">247</a>                 }
+<a name="248" href="#248">248</a>                 sb.append(cap);
+<a name="249" href="#249">249</a>             }
+<a name="250" href="#250">250</a>             analyzer.setProperty(<span class="jxr_string">"Provide-Capability"</span>, sb.toString());
+<a name="251" href="#251">251</a>         }
+<a name="252" href="#252">252</a>         <strong class="jxr_keyword">if</strong> (!reqs.isEmpty())
+<a name="253" href="#253">253</a>         {
+<a name="254" href="#254">254</a>             StringBuilder sb = <strong class="jxr_keyword">new</strong> StringBuilder();
+<a name="255" href="#255">255</a>             String header = analyzer.getProperty(<span class="jxr_string">"Require-Capability"</span>);
+<a name="256" href="#256">256</a>             <strong class="jxr_keyword">if</strong> (header != <strong class="jxr_keyword">null</strong>)
+<a name="257" href="#257">257</a>             {
+<a name="258" href="#258">258</a>                 sb.append(header);
+<a name="259" href="#259">259</a>             }
+<a name="260" href="#260">260</a>             <strong class="jxr_keyword">for</strong> (String req : reqs) {
+<a name="261" href="#261">261</a>                 <strong class="jxr_keyword">if</strong> (sb.length() &gt; 0) {
+<a name="262" href="#262">262</a>                     sb.append(<span class="jxr_string">","</span>);
+<a name="263" href="#263">263</a>                 }
+<a name="264" href="#264">264</a>                 sb.append(req);
+<a name="265" href="#265">265</a>             }
+<a name="266" href="#266">266</a>             analyzer.setProperty(<span class="jxr_string">"Require-Capability"</span>, sb.toString());
+<a name="267" href="#267">267</a>         }
+<a name="268" href="#268">268</a>         <em class="jxr_comment">// Merge</em>
+<a name="269" href="#269">269</a>         <strong class="jxr_keyword">for</strong> ( String header : hdrs.keySet() )
+<a name="270" href="#270">270</a>         {
+<a name="271" href="#271">271</a>             <strong class="jxr_keyword">if</strong> ( <span class="jxr_string">"Import-Class"</span>.equals( header ) || <span class="jxr_string">"Import-Package"</span>.equals( header ) )
+<a name="272" href="#272">272</a>             {
+<a name="273" href="#273">273</a>                 Set&lt;Clause&gt; newAttr = hdrs.get(header);
+<a name="274" href="#274">274</a>                 <strong class="jxr_keyword">for</strong> ( Clause a : newAttr )
+<a name="275" href="#275">275</a>                 {
+<a name="276" href="#276">276</a>                     String pkg = a.getName();
+<a name="277" href="#277">277</a>                     <strong class="jxr_keyword">if</strong> ( <span class="jxr_string">"Import-Class"</span>.equals( header ) )
+<a name="278" href="#278">278</a>                     {
+<a name="279" href="#279">279</a>                         <strong class="jxr_keyword">int</strong> n = a.getName().lastIndexOf( '.' );
+<a name="280" href="#280">280</a>                         <strong class="jxr_keyword">if</strong> ( n &gt; 0 )
+<a name="281" href="#281">281</a>                         {
+<a name="282" href="#282">282</a>                             pkg = pkg.subSequence( 0, n ).toString();
+<a name="283" href="#283">283</a>                         }
+<a name="284" href="#284">284</a>                         <strong class="jxr_keyword">else</strong>
+<a name="285" href="#285">285</a>                         {
+<a name="286" href="#286">286</a>                             <strong class="jxr_keyword">continue</strong>;
+<a name="287" href="#287">287</a>                         }
+<a name="288" href="#288">288</a>                     }
+<a name="289" href="#289">289</a>                     PackageRef pkgRef = analyzer.getPackageRef( pkg );
+<a name="290" href="#290">290</a>                     <strong class="jxr_keyword">if</strong> ( !analyzer.getReferred().containsKey( pkgRef ) )
+<a name="291" href="#291">291</a>                     {
+<a name="292" href="#292">292</a>                         Attrs attrs = analyzer.getReferred().put(pkgRef);
+<a name="293" href="#293">293</a>                         <strong class="jxr_keyword">for</strong> (Attribute attribute : a.getAttributes())
+<a name="294" href="#294">294</a>                         {
+<a name="295" href="#295">295</a>                             attrs.put(attribute.getName(), attribute.getValue());
+<a name="296" href="#296">296</a>                         }
+<a name="297" href="#297">297</a>                     }
+<a name="298" href="#298">298</a>                 }
+<a name="299" href="#299">299</a>             }
+<a name="300" href="#300">300</a>             <strong class="jxr_keyword">else</strong>
+<a name="301" href="#301">301</a>             {
+<a name="302" href="#302">302</a>                 Set&lt;String&gt; merge = Create.set();
+<a name="303" href="#303">303</a>                 String org = analyzer.getProperty(header);
+<a name="304" href="#304">304</a>                 <strong class="jxr_keyword">if</strong> (org != <strong class="jxr_keyword">null</strong> &amp;&amp; !org.isEmpty())
+<a name="305" href="#305">305</a>                 {
+<a name="306" href="#306">306</a>                     <strong class="jxr_keyword">for</strong> (Clause clause : parseHeader(org))
+<a name="307" href="#307">307</a>                     {
+<a name="308" href="#308">308</a>                         merge.add(clause.toString());
+<a name="309" href="#309">309</a>                     }
+<a name="310" href="#310">310</a>                 }
+<a name="311" href="#311">311</a>                 <strong class="jxr_keyword">for</strong> (Clause clause : hdrs.get(header))
+<a name="312" href="#312">312</a>                 {
+<a name="313" href="#313">313</a>                     merge.add(clause.toString());
+<a name="314" href="#314">314</a>                 }
+<a name="315" href="#315">315</a>                 StringBuilder sb = <strong class="jxr_keyword">new</strong> StringBuilder();
+<a name="316" href="#316">316</a>                 <strong class="jxr_keyword">for</strong> (String clause : merge)
+<a name="317" href="#317">317</a>                 {
+<a name="318" href="#318">318</a>                     <strong class="jxr_keyword">if</strong> ( sb.length() &gt; 0 )
+<a name="319" href="#319">319</a>                     {
+<a name="320" href="#320">320</a>                         sb.append( <span class="jxr_string">","</span> );
+<a name="321" href="#321">321</a>                     }
+<a name="322" href="#322">322</a>                     sb.append(clause);
 <a name="323" href="#323">323</a> 
-<a name="324" href="#324">324</a>             <strong class="jxr_keyword">if</strong> ( name != <strong class="jxr_keyword">null</strong> ? !name.equals( attribute.name ) : attribute.name != <strong class="jxr_keyword">null</strong> )
-<a name="325" href="#325">325</a>                 <strong class="jxr_keyword">return</strong> false;
-<a name="326" href="#326">326</a>             <strong class="jxr_keyword">if</strong> ( properties != <strong class="jxr_keyword">null</strong> ? !properties.equals( attribute.properties ) : attribute.properties != <strong class="jxr_keyword">null</strong> )
-<a name="327" href="#327">327</a>                 <strong class="jxr_keyword">return</strong> false;
-<a name="328" href="#328">328</a> 
-<a name="329" href="#329">329</a>             <strong class="jxr_keyword">return</strong> <strong class="jxr_keyword">true</strong>;
-<a name="330" href="#330">330</a>         }
+<a name="324" href="#324">324</a>                 }
+<a name="325" href="#325">325</a>                 analyzer.setProperty( header, sb.toString() );
+<a name="326" href="#326">326</a>             }
+<a name="327" href="#327">327</a>         }
+<a name="328" href="#328">328</a>         <strong class="jxr_keyword">return</strong> false;
+<a name="329" href="#329">329</a>     }
+<a name="330" href="#330">330</a> 
 <a name="331" href="#331">331</a> 
-<a name="332" href="#332">332</a> 
-<a name="333" href="#333">333</a>         @Override
-<a name="334" href="#334">334</a>         <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">int</strong> hashCode()
-<a name="335" href="#335">335</a>         {
-<a name="336" href="#336">336</a>             <strong class="jxr_keyword">int</strong> result = name != <strong class="jxr_keyword">null</strong> ? name.hashCode() : 0;
-<a name="337" href="#337">337</a>             result = 31 * result + ( properties != <strong class="jxr_keyword">null</strong> ? properties.hashCode() : 0 );
-<a name="338" href="#338">338</a>             <strong class="jxr_keyword">return</strong> result;
-<a name="339" href="#339">339</a>         }
-<a name="340" href="#340">340</a>     }
-<a name="341" href="#341">341</a> 
-<a name="342" href="#342">342</a> 
-<a name="343" href="#343">343</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">static</strong> Set&lt;Attribute&gt; parseHeader( String value, Reporter logger )
-<a name="344" href="#344">344</a>     {
-<a name="345" href="#345">345</a>         <strong class="jxr_keyword">if</strong> ( ( value == <strong class="jxr_keyword">null</strong> ) || ( value.trim().length() == 0 ) )
-<a name="346" href="#346">346</a>         {
-<a name="347" href="#347">347</a>             <strong class="jxr_keyword">return</strong> <strong class="jxr_keyword">new</strong> TreeSet&lt;Attribute&gt;();
-<a name="348" href="#348">348</a>         }
-<a name="349" href="#349">349</a>         Set&lt;Attribute&gt; result = <strong class="jxr_keyword">new</strong> TreeSet&lt;Attribute&gt;();
-<a name="350" href="#350">350</a>         QuotedTokenizer qt = <strong class="jxr_keyword">new</strong> QuotedTokenizer( value, <span class="jxr_string">";=,"</span> );
-<a name="351" href="#351">351</a>         <strong class="jxr_keyword">char</strong> del = '\0';
-<a name="352" href="#352">352</a>         <strong class="jxr_keyword">do</strong>
-<a name="353" href="#353">353</a>         {
-<a name="354" href="#354">354</a>             <strong class="jxr_keyword">boolean</strong> hadAttribute = false;
-<a name="355" href="#355">355</a>             Map&lt;String, String&gt; clause = Create.map();
-<a name="356" href="#356">356</a>             List&lt;String&gt; aliases = Create.list();
-<a name="357" href="#357">357</a>             String name = qt.nextToken( <span class="jxr_string">",;"</span> );
-<a name="358" href="#358">358</a> 
-<a name="359" href="#359">359</a>             del = qt.getSeparator();
-<a name="360" href="#360">360</a>             <strong class="jxr_keyword">if</strong> ( ( name == <strong class="jxr_keyword">null</strong> ) || ( name.length() == 0 ) )
-<a name="361" href="#361">361</a>             {
-<a name="362" href="#362">362</a>                 <strong class="jxr_keyword">if</strong> ( ( logger != <strong class="jxr_keyword">null</strong> ) &amp;&amp; ( logger.isPedantic() ) )
-<a name="363" href="#363">363</a>                 {
-<a name="364" href="#364">364</a>                     logger
-<a name="365" href="#365">365</a>                         .warning( <span class="jxr_string">"Empty clause, usually caused by repeating a comma without any name field or by having "</span>
-<a name="366" href="#366">366</a>                             + <span class="jxr_string">"spaces after the backslash of a property file: "</span> + value );
-<a name="367" href="#367">367</a>                 }
-<a name="368" href="#368">368</a> 
-<a name="369" href="#369">369</a>                 <strong class="jxr_keyword">if</strong> ( name != <strong class="jxr_keyword">null</strong> )
-<a name="370" href="#370">370</a>                     <strong class="jxr_keyword">continue</strong>;
-<a name="371" href="#371">371</a>                 <strong class="jxr_keyword">break</strong>;
-<a name="372" href="#372">372</a>             }
-<a name="373" href="#373">373</a>             name = name.trim();
-<a name="374" href="#374">374</a> 
-<a name="375" href="#375">375</a>             aliases.add( name );
-<a name="376" href="#376">376</a>             String advalue;
-<a name="377" href="#377">377</a>             <strong class="jxr_keyword">while</strong> ( del == ';' )
-<a name="378" href="#378">378</a>             {
-<a name="379" href="#379">379</a>                 String adname = qt.nextToken();
-<a name="380" href="#380">380</a>                 <strong class="jxr_keyword">if</strong> ( ( del = qt.getSeparator() ) != '=' )
-<a name="381" href="#381">381</a>                 {
-<a name="382" href="#382">382</a>                     <strong class="jxr_keyword">if</strong> ( ( hadAttribute ) &amp;&amp; ( logger != <strong class="jxr_keyword">null</strong> ) )
-<a name="383" href="#383">383</a>                     {
-<a name="384" href="#384">384</a>                         logger.error( <span class="jxr_string">"Header contains name field after attribute or directive: "</span> + adname + <span class="jxr_string">" from "</span>
-<a name="385" href="#385">385</a>                             + value + <span class="jxr_string">". Name fields must be consecutive, separated by a ';' like a;b;c;x=3;y=4"</span> );
-<a name="386" href="#386">386</a>                     }
+<a name="332" href="#332">332</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">void</strong> process( Analyzer analyzer, String path, Resource resource, Set&lt;String&gt; headers )
+<a name="333" href="#333">333</a>     {
+<a name="334" href="#334">334</a>         InputStream in = <strong class="jxr_keyword">null</strong>;
+<a name="335" href="#335">335</a>         <strong class="jxr_keyword">try</strong>
+<a name="336" href="#336">336</a>         {
+<a name="337" href="#337">337</a>             in = resource.openInputStream();
+<a name="338" href="#338">338</a> 
+<a name="339" href="#339">339</a>             <em class="jxr_comment">// Retrieve headers</em>
+<a name="340" href="#340">340</a>             Set&lt;String&gt; set = analyze( in );
+<a name="341" href="#341">341</a>             headers.addAll( set );
+<a name="342" href="#342">342</a>         }
+<a name="343" href="#343">343</a>         <strong class="jxr_keyword">catch</strong> ( Exception e )
+<a name="344" href="#344">344</a>         {
+<a name="345" href="#345">345</a>             analyzer.error( ( <strong class="jxr_keyword">new</strong> StringBuilder( <span class="jxr_string">"Unexpected exception in processing spring resources("</span> ) )
+<a name="346" href="#346">346</a>                 .append( path ).append( <span class="jxr_string">"): "</span> ).append( e ).toString() );
+<a name="347" href="#347">347</a>         }
+<a name="348" href="#348">348</a>         <strong class="jxr_keyword">finally</strong>
+<a name="349" href="#349">349</a>         {
+<a name="350" href="#350">350</a>             <strong class="jxr_keyword">try</strong>
+<a name="351" href="#351">351</a>             {
+<a name="352" href="#352">352</a>                 <strong class="jxr_keyword">if</strong> ( in != <strong class="jxr_keyword">null</strong> )
+<a name="353" href="#353">353</a>                 {
+<a name="354" href="#354">354</a>                     in.close();
+<a name="355" href="#355">355</a>                 }
+<a name="356" href="#356">356</a>             }
+<a name="357" href="#357">357</a>             <strong class="jxr_keyword">catch</strong> ( IOException e )
+<a name="358" href="#358">358</a>             {
+<a name="359" href="#359">359</a>             }
+<a name="360" href="#360">360</a>         }
+<a name="361" href="#361">361</a>     }
+<a name="362" href="#362">362</a> 
+<a name="363" href="#363">363</a> 
+<a name="364" href="#364">364</a>     <strong class="jxr_keyword">public</strong> Set&lt;String&gt; analyze( InputStream in ) <strong class="jxr_keyword">throws</strong> Exception
+<a name="365" href="#365">365</a>     {
+<a name="366" href="#366">366</a>         Set&lt;String&gt; refers = <strong class="jxr_keyword">new</strong> HashSet&lt;String&gt;();
+<a name="367" href="#367">367</a>         ByteArrayOutputStream bout = <strong class="jxr_keyword">new</strong> ByteArrayOutputStream();
+<a name="368" href="#368">368</a>         javax.xml.transform.Result r = <strong class="jxr_keyword">new</strong> StreamResult( bout );
+<a name="369" href="#369">369</a>         javax.xml.transform.Source s = <strong class="jxr_keyword">new</strong> StreamSource( in );
+<a name="370" href="#370">370</a>         transformer.transform( s, r );
+<a name="371" href="#371">371</a>         ByteArrayInputStream bin = <strong class="jxr_keyword">new</strong> ByteArrayInputStream( bout.toByteArray() );
+<a name="372" href="#372">372</a>         bout.close();
+<a name="373" href="#373">373</a>         BufferedReader br = <strong class="jxr_keyword">new</strong> BufferedReader( <strong class="jxr_keyword">new</strong> InputStreamReader( bin ) );
+<a name="374" href="#374">374</a>         <strong class="jxr_keyword">for</strong> ( String line = br.readLine(); line != <strong class="jxr_keyword">null</strong>; line = br.readLine() )
+<a name="375" href="#375">375</a>         {
+<a name="376" href="#376">376</a>             line = line.trim();
+<a name="377" href="#377">377</a>             line = line.replace( <span class="jxr_string">";availability:=mandatory"</span>, <span class="jxr_string">""</span> );
+<a name="378" href="#378">378</a>             <strong class="jxr_keyword">if</strong> ( line.length() &gt; 0 )
+<a name="379" href="#379">379</a>             {
+<a name="380" href="#380">380</a>                 refers.add( line );
+<a name="381" href="#381">381</a>             }
+<a name="382" href="#382">382</a>         }
+<a name="383" href="#383">383</a> 
+<a name="384" href="#384">384</a>         br.close();
+<a name="385" href="#385">385</a>         <strong class="jxr_keyword">return</strong> refers;
+<a name="386" href="#386">386</a>     }
 <a name="387" href="#387">387</a> 
-<a name="388" href="#388">388</a>                     <strong class="jxr_keyword">if</strong> ( ( adname != <strong class="jxr_keyword">null</strong> ) &amp;&amp; ( adname.length() &gt; 0 ) )
-<a name="389" href="#389">389</a>                         aliases.add( adname.trim() );
-<a name="390" href="#390">390</a>                 }
-<a name="391" href="#391">391</a>                 <strong class="jxr_keyword">else</strong>
-<a name="392" href="#392">392</a>                 {
-<a name="393" href="#393">393</a>                     advalue = qt.nextToken();
-<a name="394" href="#394">394</a>                     <strong class="jxr_keyword">if</strong> ( ( clause.containsKey( adname ) ) &amp;&amp; ( logger != <strong class="jxr_keyword">null</strong> ) &amp;&amp; ( logger.isPedantic() ) )
-<a name="395" href="#395">395</a>                     {
-<a name="396" href="#396">396</a>                         logger.warning( <span class="jxr_string">"Duplicate attribute/directive name "</span> + adname + <span class="jxr_string">" in "</span> + value
-<a name="397" href="#397">397</a>                             + <span class="jxr_string">". This attribute/directive will be ignored"</span> );
-<a name="398" href="#398">398</a>                     }
-<a name="399" href="#399">399</a> 
-<a name="400" href="#400">400</a>                     <strong class="jxr_keyword">if</strong> ( advalue == <strong class="jxr_keyword">null</strong> )
-<a name="401" href="#401">401</a>                     {
-<a name="402" href="#402">402</a>                         <strong class="jxr_keyword">if</strong> ( logger != <strong class="jxr_keyword">null</strong> )
-<a name="403" href="#403">403</a>                         {
-<a name="404" href="#404">404</a>                             logger.error( <span class="jxr_string">"No value after '=' sign for attribute "</span> + adname );
-<a name="405" href="#405">405</a>                         }
-<a name="406" href="#406">406</a>                         advalue = <span class="jxr_string">""</span>;
-<a name="407" href="#407">407</a>                     }
-<a name="408" href="#408">408</a>                     clause.put( adname.trim(), advalue.trim() );
-<a name="409" href="#409">409</a>                     del = qt.getSeparator();
-<a name="410" href="#410">410</a>                     hadAttribute = <strong class="jxr_keyword">true</strong>;
-<a name="411" href="#411">411</a>                 }
-<a name="412" href="#412">412</a>             }
-<a name="413" href="#413">413</a> 
-<a name="414" href="#414">414</a>             <strong class="jxr_keyword">for</strong> ( String clauseName : aliases )
-<a name="415" href="#415">415</a>             {
-<a name="416" href="#416">416</a>                 result.add( <strong class="jxr_keyword">new</strong> Attribute( clauseName, clause ) );
-<a name="417" href="#417">417</a>             }
-<a name="418" href="#418">418</a>         }
-<a name="419" href="#419">419</a>         <strong class="jxr_keyword">while</strong> ( del == ',' );
-<a name="420" href="#420">420</a>         <strong class="jxr_keyword">return</strong> result;
-<a name="421" href="#421">421</a>     }
-<a name="422" href="#422">422</a> 
-<a name="423" href="#423">423</a> }
+<a name="388" href="#388">388</a> 
+<a name="389" href="#389">389</a>     <strong class="jxr_keyword">protected</strong> Transformer getTransformer( URL url ) <strong class="jxr_keyword">throws</strong> Exception
+<a name="390" href="#390">390</a>     {
+<a name="391" href="#391">391</a>         TransformerFactory tf = TransformerFactory.newInstance();
+<a name="392" href="#392">392</a>         javax.xml.transform.Source source = <strong class="jxr_keyword">new</strong> StreamSource( url.openStream() );
+<a name="393" href="#393">393</a>         <strong class="jxr_keyword">return</strong> tf.newTransformer( source );
+<a name="394" href="#394">394</a>     }
+<a name="395" href="#395">395</a> 
+<a name="396" href="#396">396</a> }
 </pre>
 <hr/><div id="footer">This page was automatically generated by <a href="http://maven.apache.org/">Maven</a></div></body>
 </html>
diff --git a/bundleplugin/doc/site/xref/org/apache/felix/bundleplugin/BundlePlugin.html b/bundleplugin/doc/site/xref/org/apache/felix/bundleplugin/BundlePlugin.html
index 65f6d5d..54160b0 100644
--- a/bundleplugin/doc/site/xref/org/apache/felix/bundleplugin/BundlePlugin.html
+++ b/bundleplugin/doc/site/xref/org/apache/felix/bundleplugin/BundlePlugin.html
@@ -33,1556 +33,1593 @@
 <a name="23" href="#23">23</a>  <strong class="jxr_keyword">import</strong> java.io.ByteArrayOutputStream;
 <a name="24" href="#24">24</a>  <strong class="jxr_keyword">import</strong> java.io.File;
 <a name="25" href="#25">25</a>  <strong class="jxr_keyword">import</strong> java.io.FileInputStream;
-<a name="26" href="#26">26</a>  <strong class="jxr_keyword">import</strong> java.io.IOException;
-<a name="27" href="#27">27</a>  <strong class="jxr_keyword">import</strong> java.io.InputStream;
-<a name="28" href="#28">28</a>  <strong class="jxr_keyword">import</strong> java.lang.reflect.Array;
-<a name="29" href="#29">29</a>  <strong class="jxr_keyword">import</strong> java.lang.reflect.Method;
-<a name="30" href="#30">30</a>  <strong class="jxr_keyword">import</strong> java.util.ArrayList;
-<a name="31" href="#31">31</a>  <strong class="jxr_keyword">import</strong> java.util.Arrays;
-<a name="32" href="#32">32</a>  <strong class="jxr_keyword">import</strong> java.util.Collection;
-<a name="33" href="#33">33</a>  <strong class="jxr_keyword">import</strong> java.util.Collections;
-<a name="34" href="#34">34</a>  <strong class="jxr_keyword">import</strong> java.util.Enumeration;
-<a name="35" href="#35">35</a>  <strong class="jxr_keyword">import</strong> java.util.HashSet;
-<a name="36" href="#36">36</a>  <strong class="jxr_keyword">import</strong> java.util.Iterator;
-<a name="37" href="#37">37</a>  <strong class="jxr_keyword">import</strong> java.util.LinkedHashMap;
-<a name="38" href="#38">38</a>  <strong class="jxr_keyword">import</strong> java.util.LinkedHashSet;
-<a name="39" href="#39">39</a>  <strong class="jxr_keyword">import</strong> java.util.List;
-<a name="40" href="#40">40</a>  <strong class="jxr_keyword">import</strong> java.util.Map;
-<a name="41" href="#41">41</a>  <strong class="jxr_keyword">import</strong> java.util.Properties;
-<a name="42" href="#42">42</a>  <strong class="jxr_keyword">import</strong> java.util.Set;
-<a name="43" href="#43">43</a>  <strong class="jxr_keyword">import</strong> java.util.jar.Attributes;
-<a name="44" href="#44">44</a>  <strong class="jxr_keyword">import</strong> java.util.jar.Manifest;
-<a name="45" href="#45">45</a>  
-<a name="46" href="#46">46</a>  <strong class="jxr_keyword">import</strong> org.apache.maven.archiver.ManifestSection;
-<a name="47" href="#47">47</a>  <strong class="jxr_keyword">import</strong> org.apache.maven.archiver.MavenArchiveConfiguration;
-<a name="48" href="#48">48</a>  <strong class="jxr_keyword">import</strong> org.apache.maven.archiver.MavenArchiver;
-<a name="49" href="#49">49</a>  <strong class="jxr_keyword">import</strong> org.apache.maven.artifact.Artifact;
-<a name="50" href="#50">50</a>  <strong class="jxr_keyword">import</strong> org.apache.maven.artifact.handler.manager.ArtifactHandlerManager;
-<a name="51" href="#51">51</a>  <strong class="jxr_keyword">import</strong> org.apache.maven.execution.MavenSession;
-<a name="52" href="#52">52</a>  <strong class="jxr_keyword">import</strong> org.apache.maven.model.License;
-<a name="53" href="#53">53</a>  <strong class="jxr_keyword">import</strong> org.apache.maven.model.Model;
-<a name="54" href="#54">54</a>  <strong class="jxr_keyword">import</strong> org.apache.maven.model.Resource;
-<a name="55" href="#55">55</a>  <strong class="jxr_keyword">import</strong> org.apache.maven.plugin.AbstractMojo;
-<a name="56" href="#56">56</a>  <strong class="jxr_keyword">import</strong> org.apache.maven.plugin.MojoExecutionException;
-<a name="57" href="#57">57</a>  <strong class="jxr_keyword">import</strong> org.apache.maven.plugin.MojoFailureException;
-<a name="58" href="#58">58</a>  <strong class="jxr_keyword">import</strong> org.apache.maven.plugin.logging.Log;
-<a name="59" href="#59">59</a>  <strong class="jxr_keyword">import</strong> org.apache.maven.project.MavenProject;
-<a name="60" href="#60">60</a>  <strong class="jxr_keyword">import</strong> org.apache.maven.project.MavenProjectHelper;
-<a name="61" href="#61">61</a>  <strong class="jxr_keyword">import</strong> org.apache.maven.shared.osgi.DefaultMaven2OsgiConverter;
-<a name="62" href="#62">62</a>  <strong class="jxr_keyword">import</strong> org.apache.maven.shared.osgi.Maven2OsgiConverter;
-<a name="63" href="#63">63</a>  <strong class="jxr_keyword">import</strong> org.codehaus.plexus.archiver.UnArchiver;
-<a name="64" href="#64">64</a>  <strong class="jxr_keyword">import</strong> org.codehaus.plexus.archiver.manager.ArchiverManager;
-<a name="65" href="#65">65</a>  <strong class="jxr_keyword">import</strong> org.codehaus.plexus.util.DirectoryScanner;
-<a name="66" href="#66">66</a>  <strong class="jxr_keyword">import</strong> org.codehaus.plexus.util.FileUtils;
-<a name="67" href="#67">67</a>  <strong class="jxr_keyword">import</strong> org.codehaus.plexus.util.PropertyUtils;
-<a name="68" href="#68">68</a>  <strong class="jxr_keyword">import</strong> org.codehaus.plexus.util.StringUtils;
-<a name="69" href="#69">69</a>  
-<a name="70" href="#70">70</a>  <strong class="jxr_keyword">import</strong> aQute.bnd.header.Attrs;
-<a name="71" href="#71">71</a>  <strong class="jxr_keyword">import</strong> aQute.bnd.osgi.Analyzer;
-<a name="72" href="#72">72</a>  <strong class="jxr_keyword">import</strong> aQute.bnd.osgi.Builder;
-<a name="73" href="#73">73</a>  <strong class="jxr_keyword">import</strong> aQute.bnd.osgi.Constants;
-<a name="74" href="#74">74</a>  <strong class="jxr_keyword">import</strong> aQute.bnd.osgi.Descriptors.PackageRef;
-<a name="75" href="#75">75</a>  <strong class="jxr_keyword">import</strong> aQute.bnd.osgi.EmbeddedResource;
-<a name="76" href="#76">76</a>  <strong class="jxr_keyword">import</strong> aQute.bnd.osgi.FileResource;
-<a name="77" href="#77">77</a>  <strong class="jxr_keyword">import</strong> aQute.bnd.osgi.Jar;
-<a name="78" href="#78">78</a>  <strong class="jxr_keyword">import</strong> aQute.bnd.osgi.Packages;
-<a name="79" href="#79">79</a>  <strong class="jxr_keyword">import</strong> aQute.bnd.osgi.Processor;
-<a name="80" href="#80">80</a>  <strong class="jxr_keyword">import</strong> aQute.lib.spring.SpringXMLType;
-<a name="81" href="#81">81</a>  
-<a name="82" href="#82">82</a>  
-<a name="83" href="#83">83</a>  <em class="jxr_javadoccomment">/**</em>
-<a name="84" href="#84">84</a>  <em class="jxr_javadoccomment"> * Create an OSGi bundle from Maven project</em>
-<a name="85" href="#85">85</a>  <em class="jxr_javadoccomment"> *</em>
-<a name="86" href="#86">86</a>  <em class="jxr_javadoccomment"> * @goal bundle</em>
-<a name="87" href="#87">87</a>  <em class="jxr_javadoccomment"> * @phase package</em>
-<a name="88" href="#88">88</a>  <em class="jxr_javadoccomment"> * @requiresDependencyResolution test</em>
-<a name="89" href="#89">89</a>  <em class="jxr_javadoccomment"> * @description build an OSGi bundle jar</em>
-<a name="90" href="#90">90</a>  <em class="jxr_javadoccomment"> * @threadSafe</em>
-<a name="91" href="#91">91</a>  <em class="jxr_javadoccomment"> */</em>
-<a name="92" href="#92">92</a>  <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">class</strong> <a href="../../../../org/apache/felix/bundleplugin/BundlePlugin.html">BundlePlugin</a> <strong class="jxr_keyword">extends</strong> AbstractMojo
-<a name="93" href="#93">93</a>  {
-<a name="94" href="#94">94</a>      <em class="jxr_javadoccomment">/**</em>
-<a name="95" href="#95">95</a>  <em class="jxr_javadoccomment">     * Directory where the manifest will be written</em>
-<a name="96" href="#96">96</a>  <em class="jxr_javadoccomment">     *</em>
-<a name="97" href="#97">97</a>  <em class="jxr_javadoccomment">     * @parameter expression="${manifestLocation}" default-value="${project.build.outputDirectory}/META-INF"</em>
-<a name="98" href="#98">98</a>  <em class="jxr_javadoccomment">     */</em>
-<a name="99" href="#99">99</a>      <strong class="jxr_keyword">protected</strong> File manifestLocation;
-<a name="100" href="#100">100</a> 
-<a name="101" href="#101">101</a>     <em class="jxr_javadoccomment">/**</em>
-<a name="102" href="#102">102</a> <em class="jxr_javadoccomment">     * File where the BND instructions will be dumped</em>
-<a name="103" href="#103">103</a> <em class="jxr_javadoccomment">     *</em>
-<a name="104" href="#104">104</a> <em class="jxr_javadoccomment">     * @parameter expression="${dumpInstructions}"</em>
-<a name="105" href="#105">105</a> <em class="jxr_javadoccomment">     */</em>
-<a name="106" href="#106">106</a>     <strong class="jxr_keyword">protected</strong> File dumpInstructions;
-<a name="107" href="#107">107</a> 
-<a name="108" href="#108">108</a>     <em class="jxr_javadoccomment">/**</em>
-<a name="109" href="#109">109</a> <em class="jxr_javadoccomment">     * File where the BND class-path will be dumped</em>
-<a name="110" href="#110">110</a> <em class="jxr_javadoccomment">     *</em>
-<a name="111" href="#111">111</a> <em class="jxr_javadoccomment">     * @parameter expression="${dumpClasspath}"</em>
-<a name="112" href="#112">112</a> <em class="jxr_javadoccomment">     */</em>
-<a name="113" href="#113">113</a>     <strong class="jxr_keyword">protected</strong> File dumpClasspath;
-<a name="114" href="#114">114</a> 
-<a name="115" href="#115">115</a>     <em class="jxr_javadoccomment">/**</em>
-<a name="116" href="#116">116</a> <em class="jxr_javadoccomment">     * When true, unpack the bundle contents to the outputDirectory</em>
-<a name="117" href="#117">117</a> <em class="jxr_javadoccomment">     *</em>
-<a name="118" href="#118">118</a> <em class="jxr_javadoccomment">     * @parameter expression="${unpackBundle}"</em>
-<a name="119" href="#119">119</a> <em class="jxr_javadoccomment">     */</em>
-<a name="120" href="#120">120</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">boolean</strong> unpackBundle;
-<a name="121" href="#121">121</a> 
-<a name="122" href="#122">122</a>     <em class="jxr_javadoccomment">/**</em>
-<a name="123" href="#123">123</a> <em class="jxr_javadoccomment">     * Comma separated list of artifactIds to exclude from the dependency classpath passed to BND (use "true" to exclude everything)</em>
-<a name="124" href="#124">124</a> <em class="jxr_javadoccomment">     *</em>
-<a name="125" href="#125">125</a> <em class="jxr_javadoccomment">     * @parameter expression="${excludeDependencies}"</em>
-<a name="126" href="#126">126</a> <em class="jxr_javadoccomment">     */</em>
-<a name="127" href="#127">127</a>     <strong class="jxr_keyword">protected</strong> String excludeDependencies;
-<a name="128" href="#128">128</a> 
-<a name="129" href="#129">129</a>     <em class="jxr_javadoccomment">/**</em>
-<a name="130" href="#130">130</a> <em class="jxr_javadoccomment">     * Final name of the bundle (without classifier or extension)</em>
-<a name="131" href="#131">131</a> <em class="jxr_javadoccomment">     * </em>
-<a name="132" href="#132">132</a> <em class="jxr_javadoccomment">     * @parameter expression="${project.build.finalName}"</em>
-<a name="133" href="#133">133</a> <em class="jxr_javadoccomment">     */</em> 
-<a name="134" href="#134">134</a>     <strong class="jxr_keyword">private</strong> String finalName; 
-<a name="135" href="#135">135</a> 
-<a name="136" href="#136">136</a>     <em class="jxr_javadoccomment">/**</em>
-<a name="137" href="#137">137</a> <em class="jxr_javadoccomment">     * Classifier type of the bundle to be installed.  For example, "jdk14".</em>
-<a name="138" href="#138">138</a> <em class="jxr_javadoccomment">     * Defaults to none which means this is the project's main bundle.</em>
-<a name="139" href="#139">139</a> <em class="jxr_javadoccomment">     *</em>
-<a name="140" href="#140">140</a> <em class="jxr_javadoccomment">     * @parameter</em>
-<a name="141" href="#141">141</a> <em class="jxr_javadoccomment">     */</em>
-<a name="142" href="#142">142</a>     <strong class="jxr_keyword">protected</strong> String classifier;
-<a name="143" href="#143">143</a> 
-<a name="144" href="#144">144</a>     <em class="jxr_javadoccomment">/**</em>
-<a name="145" href="#145">145</a> <em class="jxr_javadoccomment">     * Packaging type of the bundle to be installed.  For example, "jar".</em>
-<a name="146" href="#146">146</a> <em class="jxr_javadoccomment">     * Defaults to none which means use the same packaging as the project.</em>
-<a name="147" href="#147">147</a> <em class="jxr_javadoccomment">     *</em>
-<a name="148" href="#148">148</a> <em class="jxr_javadoccomment">     * @parameter</em>
-<a name="149" href="#149">149</a> <em class="jxr_javadoccomment">     */</em>
-<a name="150" href="#150">150</a>     <strong class="jxr_keyword">protected</strong> String packaging;
-<a name="151" href="#151">151</a> 
-<a name="152" href="#152">152</a>     <em class="jxr_javadoccomment">/**</em>
-<a name="153" href="#153">153</a> <em class="jxr_javadoccomment">     * @component</em>
-<a name="154" href="#154">154</a> <em class="jxr_javadoccomment">     */</em>
-<a name="155" href="#155">155</a>     <strong class="jxr_keyword">private</strong> MavenProjectHelper m_projectHelper;
-<a name="156" href="#156">156</a> 
-<a name="157" href="#157">157</a>     <em class="jxr_javadoccomment">/**</em>
-<a name="158" href="#158">158</a> <em class="jxr_javadoccomment">     * @component</em>
-<a name="159" href="#159">159</a> <em class="jxr_javadoccomment">     */</em>
-<a name="160" href="#160">160</a>     <strong class="jxr_keyword">private</strong> ArchiverManager m_archiverManager;
-<a name="161" href="#161">161</a> 
-<a name="162" href="#162">162</a>     <em class="jxr_javadoccomment">/**</em>
-<a name="163" href="#163">163</a> <em class="jxr_javadoccomment">     * @component</em>
-<a name="164" href="#164">164</a> <em class="jxr_javadoccomment">     */</em>
-<a name="165" href="#165">165</a>     <strong class="jxr_keyword">private</strong> ArtifactHandlerManager m_artifactHandlerManager;
-<a name="166" href="#166">166</a> 
-<a name="167" href="#167">167</a>     <em class="jxr_javadoccomment">/**</em>
-<a name="168" href="#168">168</a> <em class="jxr_javadoccomment">     * Project types which this plugin supports.</em>
-<a name="169" href="#169">169</a> <em class="jxr_javadoccomment">     *</em>
-<a name="170" href="#170">170</a> <em class="jxr_javadoccomment">     * @parameter</em>
-<a name="171" href="#171">171</a> <em class="jxr_javadoccomment">     */</em>
-<a name="172" href="#172">172</a>     <strong class="jxr_keyword">protected</strong> List supportedProjectTypes = Arrays.asList( <strong class="jxr_keyword">new</strong> String[]
-<a name="173" href="#173">173</a>         { <span class="jxr_string">"jar"</span>, <span class="jxr_string">"bundle"</span> } );
-<a name="174" href="#174">174</a> 
-<a name="175" href="#175">175</a>     <em class="jxr_javadoccomment">/**</em>
-<a name="176" href="#176">176</a> <em class="jxr_javadoccomment">     * The directory for the generated bundles.</em>
-<a name="177" href="#177">177</a> <em class="jxr_javadoccomment">     *</em>
-<a name="178" href="#178">178</a> <em class="jxr_javadoccomment">     * @parameter expression="${project.build.outputDirectory}"</em>
-<a name="179" href="#179">179</a> <em class="jxr_javadoccomment">     * @required</em>
-<a name="180" href="#180">180</a> <em class="jxr_javadoccomment">     */</em>
-<a name="181" href="#181">181</a>     <strong class="jxr_keyword">private</strong> File outputDirectory;
-<a name="182" href="#182">182</a> 
-<a name="183" href="#183">183</a>     <em class="jxr_javadoccomment">/**</em>
-<a name="184" href="#184">184</a> <em class="jxr_javadoccomment">     * The directory for the generated JAR.</em>
-<a name="185" href="#185">185</a> <em class="jxr_javadoccomment">     *</em>
-<a name="186" href="#186">186</a> <em class="jxr_javadoccomment">     * @parameter expression="${project.build.directory}"</em>
-<a name="187" href="#187">187</a> <em class="jxr_javadoccomment">     * @required</em>
-<a name="188" href="#188">188</a> <em class="jxr_javadoccomment">     */</em>
-<a name="189" href="#189">189</a>     <strong class="jxr_keyword">private</strong> String buildDirectory;
-<a name="190" href="#190">190</a> 
-<a name="191" href="#191">191</a>     <em class="jxr_javadoccomment">/**</em>
-<a name="192" href="#192">192</a> <em class="jxr_javadoccomment">     * The Maven project.</em>
-<a name="193" href="#193">193</a> <em class="jxr_javadoccomment">     *</em>
-<a name="194" href="#194">194</a> <em class="jxr_javadoccomment">     * @parameter expression="${project}"</em>
-<a name="195" href="#195">195</a> <em class="jxr_javadoccomment">     * @required</em>
-<a name="196" href="#196">196</a> <em class="jxr_javadoccomment">     * @readonly</em>
-<a name="197" href="#197">197</a> <em class="jxr_javadoccomment">     */</em>
-<a name="198" href="#198">198</a>     <strong class="jxr_keyword">private</strong> MavenProject project;
-<a name="199" href="#199">199</a> 
-<a name="200" href="#200">200</a>     <em class="jxr_javadoccomment">/**</em>
-<a name="201" href="#201">201</a> <em class="jxr_javadoccomment">     * The BND instructions for the bundle.</em>
-<a name="202" href="#202">202</a> <em class="jxr_javadoccomment">     *</em>
-<a name="203" href="#203">203</a> <em class="jxr_javadoccomment">     * @parameter</em>
-<a name="204" href="#204">204</a> <em class="jxr_javadoccomment">     */</em>
-<a name="205" href="#205">205</a>     <strong class="jxr_keyword">private</strong> Map instructions = <strong class="jxr_keyword">new</strong> LinkedHashMap();
-<a name="206" href="#206">206</a> 
-<a name="207" href="#207">207</a>     <em class="jxr_javadoccomment">/**</em>
-<a name="208" href="#208">208</a> <em class="jxr_javadoccomment">     * Use locally patched version for now.</em>
-<a name="209" href="#209">209</a> <em class="jxr_javadoccomment">     */</em>
-<a name="210" href="#210">210</a>     <strong class="jxr_keyword">private</strong> Maven2OsgiConverter m_maven2OsgiConverter = <strong class="jxr_keyword">new</strong> DefaultMaven2OsgiConverter();
-<a name="211" href="#211">211</a> 
-<a name="212" href="#212">212</a>     <em class="jxr_javadoccomment">/**</em>
-<a name="213" href="#213">213</a> <em class="jxr_javadoccomment">     * The archive configuration to use.</em>
-<a name="214" href="#214">214</a> <em class="jxr_javadoccomment">     *</em>
-<a name="215" href="#215">215</a> <em class="jxr_javadoccomment">     * @parameter</em>
-<a name="216" href="#216">216</a> <em class="jxr_javadoccomment">     */</em>
-<a name="217" href="#217">217</a>     <strong class="jxr_keyword">private</strong> MavenArchiveConfiguration archive; <em class="jxr_comment">// accessed indirectly in JarPluginConfiguration</em>
-<a name="218" href="#218">218</a> 
-<a name="219" href="#219">219</a>     <em class="jxr_javadoccomment">/**</em>
-<a name="220" href="#220">220</a> <em class="jxr_javadoccomment">     * @parameter default-value="${session}"</em>
-<a name="221" href="#221">221</a> <em class="jxr_javadoccomment">     * @required</em>
-<a name="222" href="#222">222</a> <em class="jxr_javadoccomment">     * @readonly</em>
-<a name="223" href="#223">223</a> <em class="jxr_javadoccomment">     */</em>
-<a name="224" href="#224">224</a>     <strong class="jxr_keyword">private</strong> MavenSession m_mavenSession;
-<a name="225" href="#225">225</a> 
-<a name="226" href="#226">226</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">final</strong> String MAVEN_SYMBOLICNAME = <span class="jxr_string">"maven-symbolicname"</span>;
-<a name="227" href="#227">227</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">final</strong> String MAVEN_RESOURCES = <span class="jxr_string">"{maven-resources}"</span>;
-<a name="228" href="#228">228</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">final</strong> String LOCAL_PACKAGES = <span class="jxr_string">"{local-packages}"</span>;
-<a name="229" href="#229">229</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">final</strong> String MAVEN_SOURCES = <span class="jxr_string">"{maven-sources}"</span>;
-<a name="230" href="#230">230</a> 
-<a name="231" href="#231">231</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">final</strong> String[] EMPTY_STRING_ARRAY =
-<a name="232" href="#232">232</a>         {};
-<a name="233" href="#233">233</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">final</strong> String[] DEFAULT_INCLUDES =
-<a name="234" href="#234">234</a>         { <span class="jxr_string">"**/**"</span> };
-<a name="235" href="#235">235</a> 
-<a name="236" href="#236">236</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">final</strong> String NL = System.getProperty( <span class="jxr_string">"line.separator"</span> );
-<a name="237" href="#237">237</a> 
-<a name="238" href="#238">238</a> 
-<a name="239" href="#239">239</a>     <strong class="jxr_keyword">protected</strong> Maven2OsgiConverter getMaven2OsgiConverter()
-<a name="240" href="#240">240</a>     {
-<a name="241" href="#241">241</a>         <strong class="jxr_keyword">return</strong> m_maven2OsgiConverter;
-<a name="242" href="#242">242</a>     }
-<a name="243" href="#243">243</a> 
+<a name="26" href="#26">26</a>  <strong class="jxr_keyword">import</strong> java.io.FileOutputStream;
+<a name="27" href="#27">27</a>  <strong class="jxr_keyword">import</strong> java.io.IOException;
+<a name="28" href="#28">28</a>  <strong class="jxr_keyword">import</strong> java.io.InputStream;
+<a name="29" href="#29">29</a>  <strong class="jxr_keyword">import</strong> java.lang.reflect.Array;
+<a name="30" href="#30">30</a>  <strong class="jxr_keyword">import</strong> java.lang.reflect.Method;
+<a name="31" href="#31">31</a>  <strong class="jxr_keyword">import</strong> java.util.ArrayList;
+<a name="32" href="#32">32</a>  <strong class="jxr_keyword">import</strong> java.util.Arrays;
+<a name="33" href="#33">33</a>  <strong class="jxr_keyword">import</strong> java.util.Collection;
+<a name="34" href="#34">34</a>  <strong class="jxr_keyword">import</strong> java.util.Collections;
+<a name="35" href="#35">35</a>  <strong class="jxr_keyword">import</strong> java.util.Enumeration;
+<a name="36" href="#36">36</a>  <strong class="jxr_keyword">import</strong> java.util.HashMap;
+<a name="37" href="#37">37</a>  <strong class="jxr_keyword">import</strong> java.util.HashSet;
+<a name="38" href="#38">38</a>  <strong class="jxr_keyword">import</strong> java.util.Iterator;
+<a name="39" href="#39">39</a>  <strong class="jxr_keyword">import</strong> java.util.LinkedHashMap;
+<a name="40" href="#40">40</a>  <strong class="jxr_keyword">import</strong> java.util.LinkedHashSet;
+<a name="41" href="#41">41</a>  <strong class="jxr_keyword">import</strong> java.util.List;
+<a name="42" href="#42">42</a>  <strong class="jxr_keyword">import</strong> java.util.Map;
+<a name="43" href="#43">43</a>  <strong class="jxr_keyword">import</strong> java.util.Properties;
+<a name="44" href="#44">44</a>  <strong class="jxr_keyword">import</strong> java.util.Set;
+<a name="45" href="#45">45</a>  <strong class="jxr_keyword">import</strong> java.util.jar.Attributes;
+<a name="46" href="#46">46</a>  <strong class="jxr_keyword">import</strong> java.util.jar.Manifest;
+<a name="47" href="#47">47</a>  
+<a name="48" href="#48">48</a>  <strong class="jxr_keyword">import</strong> org.apache.maven.archiver.ManifestSection;
+<a name="49" href="#49">49</a>  <strong class="jxr_keyword">import</strong> org.apache.maven.archiver.MavenArchiveConfiguration;
+<a name="50" href="#50">50</a>  <strong class="jxr_keyword">import</strong> org.apache.maven.archiver.MavenArchiver;
+<a name="51" href="#51">51</a>  <strong class="jxr_keyword">import</strong> org.apache.maven.artifact.Artifact;
+<a name="52" href="#52">52</a>  <strong class="jxr_keyword">import</strong> org.apache.maven.artifact.handler.manager.ArtifactHandlerManager;
+<a name="53" href="#53">53</a>  <strong class="jxr_keyword">import</strong> org.apache.maven.execution.MavenSession;
+<a name="54" href="#54">54</a>  <strong class="jxr_keyword">import</strong> org.apache.maven.model.License;
+<a name="55" href="#55">55</a>  <strong class="jxr_keyword">import</strong> org.apache.maven.model.Model;
+<a name="56" href="#56">56</a>  <strong class="jxr_keyword">import</strong> org.apache.maven.model.Resource;
+<a name="57" href="#57">57</a>  <strong class="jxr_keyword">import</strong> org.apache.maven.plugin.AbstractMojo;
+<a name="58" href="#58">58</a>  <strong class="jxr_keyword">import</strong> org.apache.maven.plugin.MojoExecutionException;
+<a name="59" href="#59">59</a>  <strong class="jxr_keyword">import</strong> org.apache.maven.plugin.MojoFailureException;
+<a name="60" href="#60">60</a>  <strong class="jxr_keyword">import</strong> org.apache.maven.plugin.logging.Log;
+<a name="61" href="#61">61</a>  <strong class="jxr_keyword">import</strong> org.apache.maven.project.MavenProject;
+<a name="62" href="#62">62</a>  <strong class="jxr_keyword">import</strong> org.apache.maven.project.MavenProjectHelper;
+<a name="63" href="#63">63</a>  <strong class="jxr_keyword">import</strong> org.apache.maven.shared.osgi.DefaultMaven2OsgiConverter;
+<a name="64" href="#64">64</a>  <strong class="jxr_keyword">import</strong> org.apache.maven.shared.osgi.Maven2OsgiConverter;
+<a name="65" href="#65">65</a>  <strong class="jxr_keyword">import</strong> org.codehaus.plexus.archiver.UnArchiver;
+<a name="66" href="#66">66</a>  <strong class="jxr_keyword">import</strong> org.codehaus.plexus.archiver.manager.ArchiverManager;
+<a name="67" href="#67">67</a>  <strong class="jxr_keyword">import</strong> org.codehaus.plexus.util.DirectoryScanner;
+<a name="68" href="#68">68</a>  <strong class="jxr_keyword">import</strong> org.codehaus.plexus.util.FileUtils;
+<a name="69" href="#69">69</a>  <strong class="jxr_keyword">import</strong> org.codehaus.plexus.util.PropertyUtils;
+<a name="70" href="#70">70</a>  <strong class="jxr_keyword">import</strong> org.codehaus.plexus.util.StringUtils;
+<a name="71" href="#71">71</a>  
+<a name="72" href="#72">72</a>  <strong class="jxr_keyword">import</strong> aQute.bnd.header.Attrs;
+<a name="73" href="#73">73</a>  <strong class="jxr_keyword">import</strong> aQute.bnd.osgi.Analyzer;
+<a name="74" href="#74">74</a>  <strong class="jxr_keyword">import</strong> aQute.bnd.osgi.Builder;
+<a name="75" href="#75">75</a>  <strong class="jxr_keyword">import</strong> aQute.bnd.osgi.Constants;
+<a name="76" href="#76">76</a>  <strong class="jxr_keyword">import</strong> aQute.bnd.osgi.Descriptors.PackageRef;
+<a name="77" href="#77">77</a>  <strong class="jxr_keyword">import</strong> aQute.bnd.osgi.EmbeddedResource;
+<a name="78" href="#78">78</a>  <strong class="jxr_keyword">import</strong> aQute.bnd.osgi.FileResource;
+<a name="79" href="#79">79</a>  <strong class="jxr_keyword">import</strong> aQute.bnd.osgi.Jar;
+<a name="80" href="#80">80</a>  <strong class="jxr_keyword">import</strong> aQute.bnd.osgi.Packages;
+<a name="81" href="#81">81</a>  <strong class="jxr_keyword">import</strong> aQute.bnd.osgi.Processor;
+<a name="82" href="#82">82</a>  <strong class="jxr_keyword">import</strong> aQute.lib.spring.SpringXMLType;
+<a name="83" href="#83">83</a>  
+<a name="84" href="#84">84</a>  
+<a name="85" href="#85">85</a>  <em class="jxr_javadoccomment">/**</em>
+<a name="86" href="#86">86</a>  <em class="jxr_javadoccomment"> * Create an OSGi bundle from Maven project</em>
+<a name="87" href="#87">87</a>  <em class="jxr_javadoccomment"> *</em>
+<a name="88" href="#88">88</a>  <em class="jxr_javadoccomment"> * @goal bundle</em>
+<a name="89" href="#89">89</a>  <em class="jxr_javadoccomment"> * @phase package</em>
+<a name="90" href="#90">90</a>  <em class="jxr_javadoccomment"> * @requiresDependencyResolution test</em>
+<a name="91" href="#91">91</a>  <em class="jxr_javadoccomment"> * @description build an OSGi bundle jar</em>
+<a name="92" href="#92">92</a>  <em class="jxr_javadoccomment"> * @threadSafe</em>
+<a name="93" href="#93">93</a>  <em class="jxr_javadoccomment"> */</em>
+<a name="94" href="#94">94</a>  <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">class</strong> <a href="../../../../org/apache/felix/bundleplugin/BundlePlugin.html">BundlePlugin</a> <strong class="jxr_keyword">extends</strong> AbstractMojo
+<a name="95" href="#95">95</a>  {
+<a name="96" href="#96">96</a>      <em class="jxr_javadoccomment">/**</em>
+<a name="97" href="#97">97</a>  <em class="jxr_javadoccomment">     * Directory where the manifest will be written</em>
+<a name="98" href="#98">98</a>  <em class="jxr_javadoccomment">     *</em>
+<a name="99" href="#99">99</a>  <em class="jxr_javadoccomment">     * @parameter expression="${manifestLocation}" default-value="${project.build.outputDirectory}/META-INF"</em>
+<a name="100" href="#100">100</a> <em class="jxr_javadoccomment">     */</em>
+<a name="101" href="#101">101</a>     <strong class="jxr_keyword">protected</strong> File manifestLocation;
+<a name="102" href="#102">102</a> 
+<a name="103" href="#103">103</a>     <em class="jxr_javadoccomment">/**</em>
+<a name="104" href="#104">104</a> <em class="jxr_javadoccomment">     * File where the BND instructions will be dumped</em>
+<a name="105" href="#105">105</a> <em class="jxr_javadoccomment">     *</em>
+<a name="106" href="#106">106</a> <em class="jxr_javadoccomment">     * @parameter expression="${dumpInstructions}"</em>
+<a name="107" href="#107">107</a> <em class="jxr_javadoccomment">     */</em>
+<a name="108" href="#108">108</a>     <strong class="jxr_keyword">protected</strong> File dumpInstructions;
+<a name="109" href="#109">109</a> 
+<a name="110" href="#110">110</a>     <em class="jxr_javadoccomment">/**</em>
+<a name="111" href="#111">111</a> <em class="jxr_javadoccomment">     * File where the BND class-path will be dumped</em>
+<a name="112" href="#112">112</a> <em class="jxr_javadoccomment">     *</em>
+<a name="113" href="#113">113</a> <em class="jxr_javadoccomment">     * @parameter expression="${dumpClasspath}"</em>
+<a name="114" href="#114">114</a> <em class="jxr_javadoccomment">     */</em>
+<a name="115" href="#115">115</a>     <strong class="jxr_keyword">protected</strong> File dumpClasspath;
+<a name="116" href="#116">116</a> 
+<a name="117" href="#117">117</a>     <em class="jxr_javadoccomment">/**</em>
+<a name="118" href="#118">118</a> <em class="jxr_javadoccomment">     * When true, unpack the bundle contents to the outputDirectory</em>
+<a name="119" href="#119">119</a> <em class="jxr_javadoccomment">     *</em>
+<a name="120" href="#120">120</a> <em class="jxr_javadoccomment">     * @parameter expression="${unpackBundle}"</em>
+<a name="121" href="#121">121</a> <em class="jxr_javadoccomment">     */</em>
+<a name="122" href="#122">122</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">boolean</strong> unpackBundle;
+<a name="123" href="#123">123</a> 
+<a name="124" href="#124">124</a>     <em class="jxr_javadoccomment">/**</em>
+<a name="125" href="#125">125</a> <em class="jxr_javadoccomment">     * Comma separated list of artifactIds to exclude from the dependency classpath passed to BND (use "true" to exclude everything)</em>
+<a name="126" href="#126">126</a> <em class="jxr_javadoccomment">     *</em>
+<a name="127" href="#127">127</a> <em class="jxr_javadoccomment">     * @parameter expression="${excludeDependencies}"</em>
+<a name="128" href="#128">128</a> <em class="jxr_javadoccomment">     */</em>
+<a name="129" href="#129">129</a>     <strong class="jxr_keyword">protected</strong> String excludeDependencies;
+<a name="130" href="#130">130</a> 
+<a name="131" href="#131">131</a>     <em class="jxr_javadoccomment">/**</em>
+<a name="132" href="#132">132</a> <em class="jxr_javadoccomment">     * Final name of the bundle (without classifier or extension)</em>
+<a name="133" href="#133">133</a> <em class="jxr_javadoccomment">     * </em>
+<a name="134" href="#134">134</a> <em class="jxr_javadoccomment">     * @parameter expression="${project.build.finalName}"</em>
+<a name="135" href="#135">135</a> <em class="jxr_javadoccomment">     */</em> 
+<a name="136" href="#136">136</a>     <strong class="jxr_keyword">private</strong> String finalName; 
+<a name="137" href="#137">137</a> 
+<a name="138" href="#138">138</a>     <em class="jxr_javadoccomment">/**</em>
+<a name="139" href="#139">139</a> <em class="jxr_javadoccomment">     * Classifier type of the bundle to be installed.  For example, "jdk14".</em>
+<a name="140" href="#140">140</a> <em class="jxr_javadoccomment">     * Defaults to none which means this is the project's main bundle.</em>
+<a name="141" href="#141">141</a> <em class="jxr_javadoccomment">     *</em>
+<a name="142" href="#142">142</a> <em class="jxr_javadoccomment">     * @parameter</em>
+<a name="143" href="#143">143</a> <em class="jxr_javadoccomment">     */</em>
+<a name="144" href="#144">144</a>     <strong class="jxr_keyword">protected</strong> String classifier;
+<a name="145" href="#145">145</a> 
+<a name="146" href="#146">146</a>     <em class="jxr_javadoccomment">/**</em>
+<a name="147" href="#147">147</a> <em class="jxr_javadoccomment">     * Packaging type of the bundle to be installed.  For example, "jar".</em>
+<a name="148" href="#148">148</a> <em class="jxr_javadoccomment">     * Defaults to none which means use the same packaging as the project.</em>
+<a name="149" href="#149">149</a> <em class="jxr_javadoccomment">     *</em>
+<a name="150" href="#150">150</a> <em class="jxr_javadoccomment">     * @parameter</em>
+<a name="151" href="#151">151</a> <em class="jxr_javadoccomment">     */</em>
+<a name="152" href="#152">152</a>     <strong class="jxr_keyword">protected</strong> String packaging;
+<a name="153" href="#153">153</a> 
+<a name="154" href="#154">154</a>     <em class="jxr_javadoccomment">/**</em>
+<a name="155" href="#155">155</a> <em class="jxr_javadoccomment">     * @component</em>
+<a name="156" href="#156">156</a> <em class="jxr_javadoccomment">     */</em>
+<a name="157" href="#157">157</a>     <strong class="jxr_keyword">private</strong> MavenProjectHelper m_projectHelper;
+<a name="158" href="#158">158</a> 
+<a name="159" href="#159">159</a>     <em class="jxr_javadoccomment">/**</em>
+<a name="160" href="#160">160</a> <em class="jxr_javadoccomment">     * @component</em>
+<a name="161" href="#161">161</a> <em class="jxr_javadoccomment">     */</em>
+<a name="162" href="#162">162</a>     <strong class="jxr_keyword">private</strong> ArchiverManager m_archiverManager;
+<a name="163" href="#163">163</a> 
+<a name="164" href="#164">164</a>     <em class="jxr_javadoccomment">/**</em>
+<a name="165" href="#165">165</a> <em class="jxr_javadoccomment">     * @component</em>
+<a name="166" href="#166">166</a> <em class="jxr_javadoccomment">     */</em>
+<a name="167" href="#167">167</a>     <strong class="jxr_keyword">private</strong> ArtifactHandlerManager m_artifactHandlerManager;
+<a name="168" href="#168">168</a> 
+<a name="169" href="#169">169</a>     <em class="jxr_javadoccomment">/**</em>
+<a name="170" href="#170">170</a> <em class="jxr_javadoccomment">     * Project types which this plugin supports.</em>
+<a name="171" href="#171">171</a> <em class="jxr_javadoccomment">     *</em>
+<a name="172" href="#172">172</a> <em class="jxr_javadoccomment">     * @parameter</em>
+<a name="173" href="#173">173</a> <em class="jxr_javadoccomment">     */</em>
+<a name="174" href="#174">174</a>     <strong class="jxr_keyword">protected</strong> List supportedProjectTypes = Arrays.asList( <strong class="jxr_keyword">new</strong> String[]
+<a name="175" href="#175">175</a>         { <span class="jxr_string">"jar"</span>, <span class="jxr_string">"bundle"</span> } );
+<a name="176" href="#176">176</a> 
+<a name="177" href="#177">177</a>     <em class="jxr_javadoccomment">/**</em>
+<a name="178" href="#178">178</a> <em class="jxr_javadoccomment">     * The directory for the generated bundles.</em>
+<a name="179" href="#179">179</a> <em class="jxr_javadoccomment">     *</em>
+<a name="180" href="#180">180</a> <em class="jxr_javadoccomment">     * @parameter expression="${project.build.outputDirectory}"</em>
+<a name="181" href="#181">181</a> <em class="jxr_javadoccomment">     * @required</em>
+<a name="182" href="#182">182</a> <em class="jxr_javadoccomment">     */</em>
+<a name="183" href="#183">183</a>     <strong class="jxr_keyword">private</strong> File outputDirectory;
+<a name="184" href="#184">184</a> 
+<a name="185" href="#185">185</a>     <em class="jxr_javadoccomment">/**</em>
+<a name="186" href="#186">186</a> <em class="jxr_javadoccomment">     * The directory for the generated JAR.</em>
+<a name="187" href="#187">187</a> <em class="jxr_javadoccomment">     *</em>
+<a name="188" href="#188">188</a> <em class="jxr_javadoccomment">     * @parameter expression="${project.build.directory}"</em>
+<a name="189" href="#189">189</a> <em class="jxr_javadoccomment">     * @required</em>
+<a name="190" href="#190">190</a> <em class="jxr_javadoccomment">     */</em>
+<a name="191" href="#191">191</a>     <strong class="jxr_keyword">private</strong> String buildDirectory;
+<a name="192" href="#192">192</a> 
+<a name="193" href="#193">193</a>     <em class="jxr_javadoccomment">/**</em>
+<a name="194" href="#194">194</a> <em class="jxr_javadoccomment">     * The Maven project.</em>
+<a name="195" href="#195">195</a> <em class="jxr_javadoccomment">     *</em>
+<a name="196" href="#196">196</a> <em class="jxr_javadoccomment">     * @parameter expression="${project}"</em>
+<a name="197" href="#197">197</a> <em class="jxr_javadoccomment">     * @required</em>
+<a name="198" href="#198">198</a> <em class="jxr_javadoccomment">     * @readonly</em>
+<a name="199" href="#199">199</a> <em class="jxr_javadoccomment">     */</em>
+<a name="200" href="#200">200</a>     <strong class="jxr_keyword">private</strong> MavenProject project;
+<a name="201" href="#201">201</a> 
+<a name="202" href="#202">202</a>     <em class="jxr_javadoccomment">/**</em>
+<a name="203" href="#203">203</a> <em class="jxr_javadoccomment">     * The BND instructions for the bundle.</em>
+<a name="204" href="#204">204</a> <em class="jxr_javadoccomment">     *</em>
+<a name="205" href="#205">205</a> <em class="jxr_javadoccomment">     * @parameter</em>
+<a name="206" href="#206">206</a> <em class="jxr_javadoccomment">     */</em>
+<a name="207" href="#207">207</a>     <strong class="jxr_keyword">private</strong> Map instructions = <strong class="jxr_keyword">new</strong> LinkedHashMap();
+<a name="208" href="#208">208</a> 
+<a name="209" href="#209">209</a>     <em class="jxr_javadoccomment">/**</em>
+<a name="210" href="#210">210</a> <em class="jxr_javadoccomment">     * Use locally patched version for now.</em>
+<a name="211" href="#211">211</a> <em class="jxr_javadoccomment">     */</em>
+<a name="212" href="#212">212</a>     <strong class="jxr_keyword">private</strong> Maven2OsgiConverter m_maven2OsgiConverter = <strong class="jxr_keyword">new</strong> DefaultMaven2OsgiConverter();
+<a name="213" href="#213">213</a> 
+<a name="214" href="#214">214</a>     <em class="jxr_javadoccomment">/**</em>
+<a name="215" href="#215">215</a> <em class="jxr_javadoccomment">     * The archive configuration to use.</em>
+<a name="216" href="#216">216</a> <em class="jxr_javadoccomment">     *</em>
+<a name="217" href="#217">217</a> <em class="jxr_javadoccomment">     * @parameter</em>
+<a name="218" href="#218">218</a> <em class="jxr_javadoccomment">     */</em>
+<a name="219" href="#219">219</a>     <strong class="jxr_keyword">private</strong> MavenArchiveConfiguration archive; <em class="jxr_comment">// accessed indirectly in JarPluginConfiguration</em>
+<a name="220" href="#220">220</a> 
+<a name="221" href="#221">221</a>     <em class="jxr_javadoccomment">/**</em>
+<a name="222" href="#222">222</a> <em class="jxr_javadoccomment">     * @parameter default-value="${session}"</em>
+<a name="223" href="#223">223</a> <em class="jxr_javadoccomment">     * @required</em>
+<a name="224" href="#224">224</a> <em class="jxr_javadoccomment">     * @readonly</em>
+<a name="225" href="#225">225</a> <em class="jxr_javadoccomment">     */</em>
+<a name="226" href="#226">226</a>     <strong class="jxr_keyword">private</strong> MavenSession m_mavenSession;
+<a name="227" href="#227">227</a> 
+<a name="228" href="#228">228</a>     <em class="jxr_javadoccomment">/**</em>
+<a name="229" href="#229">229</a> <em class="jxr_javadoccomment">     * @parameter</em>
+<a name="230" href="#230">230</a> <em class="jxr_javadoccomment">     */</em>
+<a name="231" href="#231">231</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">boolean</strong> niceManifest = false;
+<a name="232" href="#232">232</a> 
+<a name="233" href="#233">233</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">final</strong> String MAVEN_SYMBOLICNAME = <span class="jxr_string">"maven-symbolicname"</span>;
+<a name="234" href="#234">234</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">final</strong> String MAVEN_RESOURCES = <span class="jxr_string">"{maven-resources}"</span>;
+<a name="235" href="#235">235</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">final</strong> String MAVEN_TEST_RESOURCES = <span class="jxr_string">"{maven-test-resources}"</span>;
+<a name="236" href="#236">236</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">final</strong> String LOCAL_PACKAGES = <span class="jxr_string">"{local-packages}"</span>;
+<a name="237" href="#237">237</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">final</strong> String MAVEN_SOURCES = <span class="jxr_string">"{maven-sources}"</span>;
+<a name="238" href="#238">238</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">final</strong> String MAVEN_TEST_SOURCES = <span class="jxr_string">"{maven-test-sources}"</span>;
+<a name="239" href="#239">239</a> 
+<a name="240" href="#240">240</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">final</strong> String[] EMPTY_STRING_ARRAY =
+<a name="241" href="#241">241</a>         {};
+<a name="242" href="#242">242</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">final</strong> String[] DEFAULT_INCLUDES =
+<a name="243" href="#243">243</a>         { <span class="jxr_string">"**/**"</span> };
 <a name="244" href="#244">244</a> 
-<a name="245" href="#245">245</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">void</strong> setMaven2OsgiConverter( Maven2OsgiConverter maven2OsgiConverter )
-<a name="246" href="#246">246</a>     {
-<a name="247" href="#247">247</a>         m_maven2OsgiConverter = maven2OsgiConverter;
-<a name="248" href="#248">248</a>     }
-<a name="249" href="#249">249</a> 
-<a name="250" href="#250">250</a> 
-<a name="251" href="#251">251</a>     <strong class="jxr_keyword">protected</strong> MavenProject getProject()
-<a name="252" href="#252">252</a>     {
-<a name="253" href="#253">253</a>         <strong class="jxr_keyword">return</strong> project;
-<a name="254" href="#254">254</a>     }
-<a name="255" href="#255">255</a> 
-<a name="256" href="#256">256</a> 
-<a name="257" href="#257">257</a>     <em class="jxr_javadoccomment">/**</em>
-<a name="258" href="#258">258</a> <em class="jxr_javadoccomment">     * @see org.apache.maven.plugin.AbstractMojo#execute()</em>
-<a name="259" href="#259">259</a> <em class="jxr_javadoccomment">     */</em>
-<a name="260" href="#260">260</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> execute() <strong class="jxr_keyword">throws</strong> MojoExecutionException
+<a name="245" href="#245">245</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">final</strong> String NL = System.getProperty( <span class="jxr_string">"line.separator"</span> );
+<a name="246" href="#246">246</a> 
+<a name="247" href="#247">247</a> 
+<a name="248" href="#248">248</a>     <strong class="jxr_keyword">protected</strong> Maven2OsgiConverter getMaven2OsgiConverter()
+<a name="249" href="#249">249</a>     {
+<a name="250" href="#250">250</a>         <strong class="jxr_keyword">return</strong> m_maven2OsgiConverter;
+<a name="251" href="#251">251</a>     }
+<a name="252" href="#252">252</a> 
+<a name="253" href="#253">253</a> 
+<a name="254" href="#254">254</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">void</strong> setMaven2OsgiConverter( Maven2OsgiConverter maven2OsgiConverter )
+<a name="255" href="#255">255</a>     {
+<a name="256" href="#256">256</a>         m_maven2OsgiConverter = maven2OsgiConverter;
+<a name="257" href="#257">257</a>     }
+<a name="258" href="#258">258</a> 
+<a name="259" href="#259">259</a> 
+<a name="260" href="#260">260</a>     <strong class="jxr_keyword">protected</strong> MavenProject getProject()
 <a name="261" href="#261">261</a>     {
-<a name="262" href="#262">262</a>         Properties properties = <strong class="jxr_keyword">new</strong> Properties();
-<a name="263" href="#263">263</a>         String projectType = getProject().getArtifact().getType();
+<a name="262" href="#262">262</a>         <strong class="jxr_keyword">return</strong> project;
+<a name="263" href="#263">263</a>     }
 <a name="264" href="#264">264</a> 
-<a name="265" href="#265">265</a>         <em class="jxr_comment">// ignore unsupported project types, useful when bundleplugin is configured in parent pom</em>
-<a name="266" href="#266">266</a>         <strong class="jxr_keyword">if</strong> ( !supportedProjectTypes.contains( projectType ) )
-<a name="267" href="#267">267</a>         {
-<a name="268" href="#268">268</a>             getLog().warn(
-<a name="269" href="#269">269</a>                 <span class="jxr_string">"Ignoring project type "</span> + projectType + <span class="jxr_string">" - supportedProjectTypes = "</span> + supportedProjectTypes );
-<a name="270" href="#270">270</a>             <strong class="jxr_keyword">return</strong>;
-<a name="271" href="#271">271</a>         }
-<a name="272" href="#272">272</a> 
-<a name="273" href="#273">273</a>         execute( getProject(), instructions, properties );
-<a name="274" href="#274">274</a>     }
-<a name="275" href="#275">275</a> 
-<a name="276" href="#276">276</a> 
-<a name="277" href="#277">277</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">void</strong> execute( MavenProject currentProject, Map originalInstructions, Properties properties )
-<a name="278" href="#278">278</a>         <strong class="jxr_keyword">throws</strong> MojoExecutionException
-<a name="279" href="#279">279</a>     {
-<a name="280" href="#280">280</a>         <strong class="jxr_keyword">try</strong>
-<a name="281" href="#281">281</a>         {
-<a name="282" href="#282">282</a>             execute( currentProject, originalInstructions, properties, getClasspath( currentProject ) );
-<a name="283" href="#283">283</a>         }
-<a name="284" href="#284">284</a>         <strong class="jxr_keyword">catch</strong> ( IOException e )
-<a name="285" href="#285">285</a>         {
-<a name="286" href="#286">286</a>             <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> MojoExecutionException( <span class="jxr_string">"Error calculating classpath for project "</span> + currentProject, e );
-<a name="287" href="#287">287</a>         }
-<a name="288" href="#288">288</a>     }
-<a name="289" href="#289">289</a> 
-<a name="290" href="#290">290</a> 
-<a name="291" href="#291">291</a>     <em class="jxr_comment">/*<em class="jxr_comment"> transform directives from their XML form to the expected BND syntax (eg. _include becomes -include) */</em></em>
-<a name="292" href="#292">292</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">static</strong> Map transformDirectives( Map originalInstructions )
-<a name="293" href="#293">293</a>     {
-<a name="294" href="#294">294</a>         Map transformedInstructions = <strong class="jxr_keyword">new</strong> LinkedHashMap();
-<a name="295" href="#295">295</a>         <strong class="jxr_keyword">for</strong> ( Iterator i = originalInstructions.entrySet().iterator(); i.hasNext(); )
-<a name="296" href="#296">296</a>         {
-<a name="297" href="#297">297</a>             Map.Entry e = ( Map.Entry ) i.next();
+<a name="265" href="#265">265</a> 
+<a name="266" href="#266">266</a>     <em class="jxr_javadoccomment">/**</em>
+<a name="267" href="#267">267</a> <em class="jxr_javadoccomment">     * @see org.apache.maven.plugin.AbstractMojo#execute()</em>
+<a name="268" href="#268">268</a> <em class="jxr_javadoccomment">     */</em>
+<a name="269" href="#269">269</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> execute() <strong class="jxr_keyword">throws</strong> MojoExecutionException
+<a name="270" href="#270">270</a>     {
+<a name="271" href="#271">271</a>         Properties properties = <strong class="jxr_keyword">new</strong> Properties();
+<a name="272" href="#272">272</a>         String projectType = getProject().getArtifact().getType();
+<a name="273" href="#273">273</a> 
+<a name="274" href="#274">274</a>         <em class="jxr_comment">// ignore unsupported project types, useful when bundleplugin is configured in parent pom</em>
+<a name="275" href="#275">275</a>         <strong class="jxr_keyword">if</strong> ( !supportedProjectTypes.contains( projectType ) )
+<a name="276" href="#276">276</a>         {
+<a name="277" href="#277">277</a>             getLog().warn(
+<a name="278" href="#278">278</a>                 <span class="jxr_string">"Ignoring project type "</span> + projectType + <span class="jxr_string">" - supportedProjectTypes = "</span> + supportedProjectTypes );
+<a name="279" href="#279">279</a>             <strong class="jxr_keyword">return</strong>;
+<a name="280" href="#280">280</a>         }
+<a name="281" href="#281">281</a> 
+<a name="282" href="#282">282</a>         execute( getProject(), instructions, properties );
+<a name="283" href="#283">283</a>     }
+<a name="284" href="#284">284</a> 
+<a name="285" href="#285">285</a> 
+<a name="286" href="#286">286</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">void</strong> execute( MavenProject currentProject, Map originalInstructions, Properties properties )
+<a name="287" href="#287">287</a>         <strong class="jxr_keyword">throws</strong> MojoExecutionException
+<a name="288" href="#288">288</a>     {
+<a name="289" href="#289">289</a>         <strong class="jxr_keyword">try</strong>
+<a name="290" href="#290">290</a>         {
+<a name="291" href="#291">291</a>             execute( currentProject, originalInstructions, properties, getClasspath( currentProject ) );
+<a name="292" href="#292">292</a>         }
+<a name="293" href="#293">293</a>         <strong class="jxr_keyword">catch</strong> ( IOException e )
+<a name="294" href="#294">294</a>         {
+<a name="295" href="#295">295</a>             <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> MojoExecutionException( <span class="jxr_string">"Error calculating classpath for project "</span> + currentProject, e );
+<a name="296" href="#296">296</a>         }
+<a name="297" href="#297">297</a>     }
 <a name="298" href="#298">298</a> 
-<a name="299" href="#299">299</a>             String key = ( String ) e.getKey();
-<a name="300" href="#300">300</a>             <strong class="jxr_keyword">if</strong> ( key.startsWith( <span class="jxr_string">"_"</span> ) )
-<a name="301" href="#301">301</a>             {
-<a name="302" href="#302">302</a>                 key = <span class="jxr_string">"-"</span> + key.substring( 1 );
-<a name="303" href="#303">303</a>             }
-<a name="304" href="#304">304</a> 
-<a name="305" href="#305">305</a>             String value = ( String ) e.getValue();
-<a name="306" href="#306">306</a>             <strong class="jxr_keyword">if</strong> ( <strong class="jxr_keyword">null</strong> == value )
-<a name="307" href="#307">307</a>             {
-<a name="308" href="#308">308</a>                 value = <span class="jxr_string">""</span>;
-<a name="309" href="#309">309</a>             }
-<a name="310" href="#310">310</a>             <strong class="jxr_keyword">else</strong>
-<a name="311" href="#311">311</a>             {
-<a name="312" href="#312">312</a>                 value = value.replaceAll( <span class="jxr_string">"&#92;&#92;p{Blank}*[\r\n]&#92;&#92;p{Blank}*"</span>, <span class="jxr_string">""</span> );
-<a name="313" href="#313">313</a>             }
-<a name="314" href="#314">314</a> 
-<a name="315" href="#315">315</a>             <strong class="jxr_keyword">if</strong> ( Analyzer.WAB.equals( key ) &amp;&amp; value.length() == 0 )
+<a name="299" href="#299">299</a> 
+<a name="300" href="#300">300</a>     <em class="jxr_comment">/*<em class="jxr_comment"> transform directives from their XML form to the expected BND syntax (eg. _include becomes -include) */</em></em>
+<a name="301" href="#301">301</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">static</strong> Map transformDirectives( Map originalInstructions )
+<a name="302" href="#302">302</a>     {
+<a name="303" href="#303">303</a>         Map transformedInstructions = <strong class="jxr_keyword">new</strong> LinkedHashMap();
+<a name="304" href="#304">304</a>         <strong class="jxr_keyword">for</strong> ( Iterator i = originalInstructions.entrySet().iterator(); i.hasNext(); )
+<a name="305" href="#305">305</a>         {
+<a name="306" href="#306">306</a>             Map.Entry e = ( Map.Entry ) i.next();
+<a name="307" href="#307">307</a> 
+<a name="308" href="#308">308</a>             String key = ( String ) e.getKey();
+<a name="309" href="#309">309</a>             <strong class="jxr_keyword">if</strong> ( key.startsWith( <span class="jxr_string">"_"</span> ) )
+<a name="310" href="#310">310</a>             {
+<a name="311" href="#311">311</a>                 key = <span class="jxr_string">"-"</span> + key.substring( 1 );
+<a name="312" href="#312">312</a>             }
+<a name="313" href="#313">313</a> 
+<a name="314" href="#314">314</a>             String value = ( String ) e.getValue();
+<a name="315" href="#315">315</a>             <strong class="jxr_keyword">if</strong> ( <strong class="jxr_keyword">null</strong> == value )
 <a name="316" href="#316">316</a>             {
-<a name="317" href="#317">317</a>                 <em class="jxr_comment">// provide useful default</em>
-<a name="318" href="#318">318</a>                 value = <span class="jxr_string">"src/main/webapp/"</span>;
-<a name="319" href="#319">319</a>             }
-<a name="320" href="#320">320</a> 
-<a name="321" href="#321">321</a>             transformedInstructions.put( key, value );
-<a name="322" href="#322">322</a>         }
-<a name="323" href="#323">323</a>         <strong class="jxr_keyword">return</strong> transformedInstructions;
-<a name="324" href="#324">324</a>     }
-<a name="325" href="#325">325</a> 
-<a name="326" href="#326">326</a> 
-<a name="327" href="#327">327</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">boolean</strong> reportErrors( String prefix, Analyzer analyzer )
-<a name="328" href="#328">328</a>     {
-<a name="329" href="#329">329</a>         List errors = analyzer.getErrors();
-<a name="330" href="#330">330</a>         List warnings = analyzer.getWarnings();
-<a name="331" href="#331">331</a> 
-<a name="332" href="#332">332</a>         <strong class="jxr_keyword">for</strong> ( Iterator w = warnings.iterator(); w.hasNext(); )
-<a name="333" href="#333">333</a>         {
-<a name="334" href="#334">334</a>             String msg = ( String ) w.next();
-<a name="335" href="#335">335</a>             getLog().warn( prefix + <span class="jxr_string">" : "</span> + msg );
-<a name="336" href="#336">336</a>         }
-<a name="337" href="#337">337</a> 
-<a name="338" href="#338">338</a>         <strong class="jxr_keyword">boolean</strong> hasErrors = false;
-<a name="339" href="#339">339</a>         String fileNotFound = <span class="jxr_string">"Input file does not exist: "</span>;
-<a name="340" href="#340">340</a>         <strong class="jxr_keyword">for</strong> ( Iterator e = errors.iterator(); e.hasNext(); )
-<a name="341" href="#341">341</a>         {
-<a name="342" href="#342">342</a>             String msg = ( String ) e.next();
-<a name="343" href="#343">343</a>             <strong class="jxr_keyword">if</strong> ( msg.startsWith( fileNotFound ) &amp;&amp; msg.endsWith( <span class="jxr_string">"~"</span> ) )
-<a name="344" href="#344">344</a>             {
-<a name="345" href="#345">345</a>                 <em class="jxr_comment">// treat as warning; this error happens when you have duplicate entries in Include-Resource</em>
-<a name="346" href="#346">346</a>                 String duplicate = Processor.removeDuplicateMarker( msg.substring( fileNotFound.length() ) );
-<a name="347" href="#347">347</a>                 getLog().warn( prefix + <span class="jxr_string">" : Duplicate path '"</span> + duplicate + <span class="jxr_string">"' in Include-Resource"</span> );
-<a name="348" href="#348">348</a>             }
-<a name="349" href="#349">349</a>             <strong class="jxr_keyword">else</strong>
-<a name="350" href="#350">350</a>             {
-<a name="351" href="#351">351</a>                 getLog().error( prefix + <span class="jxr_string">" : "</span> + msg );
-<a name="352" href="#352">352</a>                 hasErrors = <strong class="jxr_keyword">true</strong>;
-<a name="353" href="#353">353</a>             }
-<a name="354" href="#354">354</a>         }
-<a name="355" href="#355">355</a>         <strong class="jxr_keyword">return</strong> hasErrors;
-<a name="356" href="#356">356</a>     }
-<a name="357" href="#357">357</a> 
-<a name="358" href="#358">358</a> 
-<a name="359" href="#359">359</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">void</strong> execute( MavenProject currentProject, Map originalInstructions, Properties properties,
-<a name="360" href="#360">360</a>         Jar[] classpath ) <strong class="jxr_keyword">throws</strong> MojoExecutionException
-<a name="361" href="#361">361</a>     {
-<a name="362" href="#362">362</a>         <strong class="jxr_keyword">try</strong>
-<a name="363" href="#363">363</a>         {
-<a name="364" href="#364">364</a>             File jarFile = <strong class="jxr_keyword">new</strong> File( getBuildDirectory(), getBundleName( currentProject ) );
-<a name="365" href="#365">365</a>             Builder builder = buildOSGiBundle( currentProject, originalInstructions, properties, classpath );
-<a name="366" href="#366">366</a>             <strong class="jxr_keyword">boolean</strong> hasErrors = reportErrors( <span class="jxr_string">"Bundle "</span> + currentProject.getArtifact(), builder );
-<a name="367" href="#367">367</a>             <strong class="jxr_keyword">if</strong> ( hasErrors )
-<a name="368" href="#368">368</a>             {
-<a name="369" href="#369">369</a>                 String failok = builder.getProperty( <span class="jxr_string">"-failok"</span> );
-<a name="370" href="#370">370</a>                 <strong class="jxr_keyword">if</strong> ( <strong class="jxr_keyword">null</strong> == failok || <span class="jxr_string">"false"</span>.equalsIgnoreCase( failok ) )
-<a name="371" href="#371">371</a>                 {
-<a name="372" href="#372">372</a>                     jarFile.delete();
-<a name="373" href="#373">373</a> 
-<a name="374" href="#374">374</a>                     <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> MojoFailureException( <span class="jxr_string">"Error(s) found in bundle configuration"</span> );
-<a name="375" href="#375">375</a>                 }
-<a name="376" href="#376">376</a>             }
-<a name="377" href="#377">377</a> 
-<a name="378" href="#378">378</a>             <em class="jxr_comment">// attach bundle to maven project</em>
-<a name="379" href="#379">379</a>             jarFile.getParentFile().mkdirs();
-<a name="380" href="#380">380</a>             builder.getJar().write( jarFile );
-<a name="381" href="#381">381</a> 
-<a name="382" href="#382">382</a>             Artifact mainArtifact = currentProject.getArtifact();
-<a name="383" href="#383">383</a> 
-<a name="384" href="#384">384</a>             <strong class="jxr_keyword">if</strong> ( <span class="jxr_string">"bundle"</span>.equals( mainArtifact.getType() ) )
-<a name="385" href="#385">385</a>             {
-<a name="386" href="#386">386</a>                 <em class="jxr_comment">// workaround for MNG-1682: force maven to install artifact using the "jar" handler</em>
-<a name="387" href="#387">387</a>                 mainArtifact.setArtifactHandler( m_artifactHandlerManager.getArtifactHandler( <span class="jxr_string">"jar"</span> ) );
-<a name="388" href="#388">388</a>             }
-<a name="389" href="#389">389</a> 
-<a name="390" href="#390">390</a>             <strong class="jxr_keyword">boolean</strong> customClassifier = <strong class="jxr_keyword">null</strong> != classifier &amp;&amp; classifier.trim().length() &gt; 0;
-<a name="391" href="#391">391</a>             <strong class="jxr_keyword">boolean</strong> customPackaging = <strong class="jxr_keyword">null</strong> != packaging &amp;&amp; packaging.trim().length() &gt; 0;
+<a name="317" href="#317">317</a>                 value = <span class="jxr_string">""</span>;
+<a name="318" href="#318">318</a>             }
+<a name="319" href="#319">319</a>             <strong class="jxr_keyword">else</strong>
+<a name="320" href="#320">320</a>             {
+<a name="321" href="#321">321</a>                 value = value.replaceAll( <span class="jxr_string">"&#92;&#92;p{Blank}*[\r\n]&#92;&#92;p{Blank}*"</span>, <span class="jxr_string">""</span> );
+<a name="322" href="#322">322</a>             }
+<a name="323" href="#323">323</a> 
+<a name="324" href="#324">324</a>             <strong class="jxr_keyword">if</strong> ( Analyzer.WAB.equals( key ) &amp;&amp; value.length() == 0 )
+<a name="325" href="#325">325</a>             {
+<a name="326" href="#326">326</a>                 <em class="jxr_comment">// provide useful default</em>
+<a name="327" href="#327">327</a>                 value = <span class="jxr_string">"src/main/webapp/"</span>;
+<a name="328" href="#328">328</a>             }
+<a name="329" href="#329">329</a> 
+<a name="330" href="#330">330</a>             transformedInstructions.put( key, value );
+<a name="331" href="#331">331</a>         }
+<a name="332" href="#332">332</a>         <strong class="jxr_keyword">return</strong> transformedInstructions;
+<a name="333" href="#333">333</a>     }
+<a name="334" href="#334">334</a> 
+<a name="335" href="#335">335</a> 
+<a name="336" href="#336">336</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">boolean</strong> reportErrors( String prefix, Analyzer analyzer )
+<a name="337" href="#337">337</a>     {
+<a name="338" href="#338">338</a>         List errors = analyzer.getErrors();
+<a name="339" href="#339">339</a>         List warnings = analyzer.getWarnings();
+<a name="340" href="#340">340</a> 
+<a name="341" href="#341">341</a>         <strong class="jxr_keyword">for</strong> ( Iterator w = warnings.iterator(); w.hasNext(); )
+<a name="342" href="#342">342</a>         {
+<a name="343" href="#343">343</a>             String msg = ( String ) w.next();
+<a name="344" href="#344">344</a>             getLog().warn( prefix + <span class="jxr_string">" : "</span> + msg );
+<a name="345" href="#345">345</a>         }
+<a name="346" href="#346">346</a> 
+<a name="347" href="#347">347</a>         <strong class="jxr_keyword">boolean</strong> hasErrors = false;
+<a name="348" href="#348">348</a>         String fileNotFound = <span class="jxr_string">"Input file does not exist: "</span>;
+<a name="349" href="#349">349</a>         <strong class="jxr_keyword">for</strong> ( Iterator e = errors.iterator(); e.hasNext(); )
+<a name="350" href="#350">350</a>         {
+<a name="351" href="#351">351</a>             String msg = ( String ) e.next();
+<a name="352" href="#352">352</a>             <strong class="jxr_keyword">if</strong> ( msg.startsWith( fileNotFound ) &amp;&amp; msg.endsWith( <span class="jxr_string">"~"</span> ) )
+<a name="353" href="#353">353</a>             {
+<a name="354" href="#354">354</a>                 <em class="jxr_comment">// treat as warning; this error happens when you have duplicate entries in Include-Resource</em>
+<a name="355" href="#355">355</a>                 String duplicate = Processor.removeDuplicateMarker( msg.substring( fileNotFound.length() ) );
+<a name="356" href="#356">356</a>                 getLog().warn( prefix + <span class="jxr_string">" : Duplicate path '"</span> + duplicate + <span class="jxr_string">"' in Include-Resource"</span> );
+<a name="357" href="#357">357</a>             }
+<a name="358" href="#358">358</a>             <strong class="jxr_keyword">else</strong>
+<a name="359" href="#359">359</a>             {
+<a name="360" href="#360">360</a>                 getLog().error( prefix + <span class="jxr_string">" : "</span> + msg );
+<a name="361" href="#361">361</a>                 hasErrors = <strong class="jxr_keyword">true</strong>;
+<a name="362" href="#362">362</a>             }
+<a name="363" href="#363">363</a>         }
+<a name="364" href="#364">364</a>         <strong class="jxr_keyword">return</strong> hasErrors;
+<a name="365" href="#365">365</a>     }
+<a name="366" href="#366">366</a> 
+<a name="367" href="#367">367</a> 
+<a name="368" href="#368">368</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">void</strong> execute( MavenProject currentProject, Map originalInstructions, Properties properties,
+<a name="369" href="#369">369</a>         Jar[] classpath ) <strong class="jxr_keyword">throws</strong> MojoExecutionException
+<a name="370" href="#370">370</a>     {
+<a name="371" href="#371">371</a>         <strong class="jxr_keyword">try</strong>
+<a name="372" href="#372">372</a>         {
+<a name="373" href="#373">373</a>             File jarFile = <strong class="jxr_keyword">new</strong> File( getBuildDirectory(), getBundleName( currentProject ) );
+<a name="374" href="#374">374</a>             Builder builder = buildOSGiBundle( currentProject, originalInstructions, properties, classpath );
+<a name="375" href="#375">375</a>             <strong class="jxr_keyword">boolean</strong> hasErrors = reportErrors( <span class="jxr_string">"Bundle "</span> + currentProject.getArtifact(), builder );
+<a name="376" href="#376">376</a>             <strong class="jxr_keyword">if</strong> ( hasErrors )
+<a name="377" href="#377">377</a>             {
+<a name="378" href="#378">378</a>                 String failok = builder.getProperty( <span class="jxr_string">"-failok"</span> );
+<a name="379" href="#379">379</a>                 <strong class="jxr_keyword">if</strong> ( <strong class="jxr_keyword">null</strong> == failok || <span class="jxr_string">"false"</span>.equalsIgnoreCase( failok ) )
+<a name="380" href="#380">380</a>                 {
+<a name="381" href="#381">381</a>                     jarFile.delete();
+<a name="382" href="#382">382</a> 
+<a name="383" href="#383">383</a>                     <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> MojoFailureException( <span class="jxr_string">"Error(s) found in bundle configuration"</span> );
+<a name="384" href="#384">384</a>                 }
+<a name="385" href="#385">385</a>             }
+<a name="386" href="#386">386</a> 
+<a name="387" href="#387">387</a>             <em class="jxr_comment">// attach bundle to maven project</em>
+<a name="388" href="#388">388</a>             jarFile.getParentFile().mkdirs();
+<a name="389" href="#389">389</a>             builder.getJar().write( jarFile );
+<a name="390" href="#390">390</a> 
+<a name="391" href="#391">391</a>             Artifact mainArtifact = currentProject.getArtifact();
 <a name="392" href="#392">392</a> 
-<a name="393" href="#393">393</a>             <strong class="jxr_keyword">if</strong> ( customClassifier &amp;&amp; customPackaging )
+<a name="393" href="#393">393</a>             <strong class="jxr_keyword">if</strong> ( <span class="jxr_string">"bundle"</span>.equals( mainArtifact.getType() ) )
 <a name="394" href="#394">394</a>             {
-<a name="395" href="#395">395</a>                 m_projectHelper.attachArtifact( currentProject, packaging, classifier, jarFile );
-<a name="396" href="#396">396</a>             }
-<a name="397" href="#397">397</a>             <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> ( customClassifier )
-<a name="398" href="#398">398</a>             {
-<a name="399" href="#399">399</a>                 m_projectHelper.attachArtifact( currentProject, jarFile, classifier );
-<a name="400" href="#400">400</a>             }
-<a name="401" href="#401">401</a>             <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> ( customPackaging )
-<a name="402" href="#402">402</a>             {
-<a name="403" href="#403">403</a>                 m_projectHelper.attachArtifact( currentProject, packaging, jarFile );
-<a name="404" href="#404">404</a>             }
-<a name="405" href="#405">405</a>             <strong class="jxr_keyword">else</strong>
-<a name="406" href="#406">406</a>             {
-<a name="407" href="#407">407</a>                 mainArtifact.setFile( jarFile );
-<a name="408" href="#408">408</a>             }
-<a name="409" href="#409">409</a> 
-<a name="410" href="#410">410</a>             <strong class="jxr_keyword">if</strong> ( unpackBundle )
+<a name="395" href="#395">395</a>                 <em class="jxr_comment">// workaround for MNG-1682: force maven to install artifact using the "jar" handler</em>
+<a name="396" href="#396">396</a>                 mainArtifact.setArtifactHandler( m_artifactHandlerManager.getArtifactHandler( <span class="jxr_string">"jar"</span> ) );
+<a name="397" href="#397">397</a>             }
+<a name="398" href="#398">398</a> 
+<a name="399" href="#399">399</a>             <strong class="jxr_keyword">boolean</strong> customClassifier = <strong class="jxr_keyword">null</strong> != classifier &amp;&amp; classifier.trim().length() &gt; 0;
+<a name="400" href="#400">400</a>             <strong class="jxr_keyword">boolean</strong> customPackaging = <strong class="jxr_keyword">null</strong> != packaging &amp;&amp; packaging.trim().length() &gt; 0;
+<a name="401" href="#401">401</a> 
+<a name="402" href="#402">402</a>             <strong class="jxr_keyword">if</strong> ( customClassifier &amp;&amp; customPackaging )
+<a name="403" href="#403">403</a>             {
+<a name="404" href="#404">404</a>                 m_projectHelper.attachArtifact( currentProject, packaging, classifier, jarFile );
+<a name="405" href="#405">405</a>             }
+<a name="406" href="#406">406</a>             <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> ( customClassifier )
+<a name="407" href="#407">407</a>             {
+<a name="408" href="#408">408</a>                 m_projectHelper.attachArtifact( currentProject, jarFile, classifier );
+<a name="409" href="#409">409</a>             }
+<a name="410" href="#410">410</a>             <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> ( customPackaging )
 <a name="411" href="#411">411</a>             {
-<a name="412" href="#412">412</a>                 unpackBundle( jarFile );
+<a name="412" href="#412">412</a>                 m_projectHelper.attachArtifact( currentProject, packaging, jarFile );
 <a name="413" href="#413">413</a>             }
-<a name="414" href="#414">414</a> 
-<a name="415" href="#415">415</a>             <strong class="jxr_keyword">if</strong> ( manifestLocation != <strong class="jxr_keyword">null</strong> )
-<a name="416" href="#416">416</a>             {
-<a name="417" href="#417">417</a>                 File outputFile = <strong class="jxr_keyword">new</strong> File( manifestLocation, <span class="jxr_string">"MANIFEST.MF"</span> );
+<a name="414" href="#414">414</a>             <strong class="jxr_keyword">else</strong>
+<a name="415" href="#415">415</a>             {
+<a name="416" href="#416">416</a>                 mainArtifact.setFile( jarFile );
+<a name="417" href="#417">417</a>             }
 <a name="418" href="#418">418</a> 
-<a name="419" href="#419">419</a>                 <strong class="jxr_keyword">try</strong>
-<a name="420" href="#420">420</a>                 {
-<a name="421" href="#421">421</a>                     Manifest manifest = builder.getJar().getManifest();
-<a name="422" href="#422">422</a>                     ManifestPlugin.writeManifest( manifest, outputFile );
-<a name="423" href="#423">423</a>                 }
-<a name="424" href="#424">424</a>                 <strong class="jxr_keyword">catch</strong> ( IOException e )
-<a name="425" href="#425">425</a>                 {
-<a name="426" href="#426">426</a>                     getLog().error( <span class="jxr_string">"Error trying to write Manifest to file "</span> + outputFile, e );
-<a name="427" href="#427">427</a>                 }
-<a name="428" href="#428">428</a>             }
-<a name="429" href="#429">429</a> 
-<a name="430" href="#430">430</a>             <em class="jxr_comment">// cleanup...</em>
-<a name="431" href="#431">431</a>             builder.close();
-<a name="432" href="#432">432</a>         }
-<a name="433" href="#433">433</a>         <strong class="jxr_keyword">catch</strong> ( MojoFailureException e )
-<a name="434" href="#434">434</a>         {
-<a name="435" href="#435">435</a>             getLog().error( e.getLocalizedMessage() );
-<a name="436" href="#436">436</a>             <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> MojoExecutionException( <span class="jxr_string">"Error(s) found in bundle configuration"</span>, e );
-<a name="437" href="#437">437</a>         }
-<a name="438" href="#438">438</a>         <strong class="jxr_keyword">catch</strong> ( Exception e )
-<a name="439" href="#439">439</a>         {
-<a name="440" href="#440">440</a>             getLog().error( <span class="jxr_string">"An internal error occurred"</span>, e );
-<a name="441" href="#441">441</a>             <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> MojoExecutionException( <span class="jxr_string">"Internal error in maven-bundle-plugin"</span>, e );
-<a name="442" href="#442">442</a>         }
-<a name="443" href="#443">443</a>     }
-<a name="444" href="#444">444</a> 
-<a name="445" href="#445">445</a> 
-<a name="446" href="#446">446</a>     <strong class="jxr_keyword">protected</strong> Builder getOSGiBuilder( MavenProject currentProject, Map originalInstructions, Properties properties,
-<a name="447" href="#447">447</a>         Jar[] classpath ) <strong class="jxr_keyword">throws</strong> Exception
-<a name="448" href="#448">448</a>     {
-<a name="449" href="#449">449</a>         properties.putAll( getDefaultProperties( currentProject ) );
-<a name="450" href="#450">450</a>         properties.putAll( transformDirectives( originalInstructions ) );
-<a name="451" href="#451">451</a> 
-<a name="452" href="#452">452</a>         Builder builder = <strong class="jxr_keyword">new</strong> Builder();
-<a name="453" href="#453">453</a>         <strong class="jxr_keyword">synchronized</strong> ( BundlePlugin.<strong class="jxr_keyword">class</strong> ) <em class="jxr_comment">// protect setBase...getBndLastModified which uses static DateFormat </em>
-<a name="454" href="#454">454</a>         {
-<a name="455" href="#455">455</a>             builder.setBase( getBase( currentProject ) );
-<a name="456" href="#456">456</a>         }
-<a name="457" href="#457">457</a>         builder.setProperties( sanitize( properties ) );
-<a name="458" href="#458">458</a>         <strong class="jxr_keyword">if</strong> ( classpath != <strong class="jxr_keyword">null</strong> )
-<a name="459" href="#459">459</a>         {
-<a name="460" href="#460">460</a>             builder.setClasspath( classpath );
-<a name="461" href="#461">461</a>         }
+<a name="419" href="#419">419</a>             <strong class="jxr_keyword">if</strong> ( unpackBundle )
+<a name="420" href="#420">420</a>             {
+<a name="421" href="#421">421</a>                 unpackBundle( jarFile );
+<a name="422" href="#422">422</a>             }
+<a name="423" href="#423">423</a> 
+<a name="424" href="#424">424</a>             <strong class="jxr_keyword">if</strong> ( manifestLocation != <strong class="jxr_keyword">null</strong> )
+<a name="425" href="#425">425</a>             {
+<a name="426" href="#426">426</a>                 File outputFile = <strong class="jxr_keyword">new</strong> File( manifestLocation, <span class="jxr_string">"MANIFEST.MF"</span> );
+<a name="427" href="#427">427</a> 
+<a name="428" href="#428">428</a>                 <strong class="jxr_keyword">try</strong>
+<a name="429" href="#429">429</a>                 {
+<a name="430" href="#430">430</a>                     Manifest manifest = builder.getJar().getManifest();
+<a name="431" href="#431">431</a>                     FileOutputStream fos = <strong class="jxr_keyword">new</strong> FileOutputStream( outputFile );
+<a name="432" href="#432">432</a>                     <strong class="jxr_keyword">try</strong>
+<a name="433" href="#433">433</a>                     {
+<a name="434" href="#434">434</a>                         ManifestWriter.outputManifest( manifest, fos, niceManifest );
+<a name="435" href="#435">435</a>                     }
+<a name="436" href="#436">436</a>                     <strong class="jxr_keyword">finally</strong>
+<a name="437" href="#437">437</a>                     {
+<a name="438" href="#438">438</a>                         fos.close();
+<a name="439" href="#439">439</a>                     }
+<a name="440" href="#440">440</a>                 }
+<a name="441" href="#441">441</a>                 <strong class="jxr_keyword">catch</strong> ( IOException e )
+<a name="442" href="#442">442</a>                 {
+<a name="443" href="#443">443</a>                     getLog().error( <span class="jxr_string">"Error trying to write Manifest to file "</span> + outputFile, e );
+<a name="444" href="#444">444</a>                 }
+<a name="445" href="#445">445</a>             }
+<a name="446" href="#446">446</a> 
+<a name="447" href="#447">447</a>             <em class="jxr_comment">// cleanup...</em>
+<a name="448" href="#448">448</a>             builder.close();
+<a name="449" href="#449">449</a>         }
+<a name="450" href="#450">450</a>         <strong class="jxr_keyword">catch</strong> ( MojoFailureException e )
+<a name="451" href="#451">451</a>         {
+<a name="452" href="#452">452</a>             getLog().error( e.getLocalizedMessage() );
+<a name="453" href="#453">453</a>             <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> MojoExecutionException( <span class="jxr_string">"Error(s) found in bundle configuration"</span>, e );
+<a name="454" href="#454">454</a>         }
+<a name="455" href="#455">455</a>         <strong class="jxr_keyword">catch</strong> ( Exception e )
+<a name="456" href="#456">456</a>         {
+<a name="457" href="#457">457</a>             getLog().error( <span class="jxr_string">"An internal error occurred"</span>, e );
+<a name="458" href="#458">458</a>             <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> MojoExecutionException( <span class="jxr_string">"Internal error in maven-bundle-plugin"</span>, e );
+<a name="459" href="#459">459</a>         }
+<a name="460" href="#460">460</a>     }
+<a name="461" href="#461">461</a> 
 <a name="462" href="#462">462</a> 
-<a name="463" href="#463">463</a>         <strong class="jxr_keyword">return</strong> builder;
-<a name="464" href="#464">464</a>     }
-<a name="465" href="#465">465</a> 
-<a name="466" href="#466">466</a> 
-<a name="467" href="#467">467</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">static</strong> Properties sanitize( Properties properties )
-<a name="468" href="#468">468</a>     {
-<a name="469" href="#469">469</a>         <em class="jxr_comment">// convert any non-String keys/values to Strings</em>
-<a name="470" href="#470">470</a>         Properties sanitizedEntries = <strong class="jxr_keyword">new</strong> Properties();
-<a name="471" href="#471">471</a>         <strong class="jxr_keyword">for</strong> ( Iterator itr = properties.entrySet().iterator(); itr.hasNext(); )
-<a name="472" href="#472">472</a>         {
-<a name="473" href="#473">473</a>             Map.Entry entry = ( Map.Entry ) itr.next();
-<a name="474" href="#474">474</a>             <strong class="jxr_keyword">if</strong> ( entry.getKey() instanceof String == false )
-<a name="475" href="#475">475</a>             {
-<a name="476" href="#476">476</a>                 String key = sanitize( entry.getKey() );
-<a name="477" href="#477">477</a>                 <strong class="jxr_keyword">if</strong> ( !properties.containsKey( key ) )
-<a name="478" href="#478">478</a>                 {
-<a name="479" href="#479">479</a>                     sanitizedEntries.setProperty( key, sanitize( entry.getValue() ) );
-<a name="480" href="#480">480</a>                 }
-<a name="481" href="#481">481</a>                 itr.remove();
-<a name="482" href="#482">482</a>             }
-<a name="483" href="#483">483</a>             <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> ( entry.getValue() instanceof String == false )
-<a name="484" href="#484">484</a>             {
-<a name="485" href="#485">485</a>                 entry.setValue( sanitize( entry.getValue() ) );
-<a name="486" href="#486">486</a>             }
-<a name="487" href="#487">487</a>         }
-<a name="488" href="#488">488</a>         properties.putAll( sanitizedEntries );
-<a name="489" href="#489">489</a>         <strong class="jxr_keyword">return</strong> properties;
-<a name="490" href="#490">490</a>     }
+<a name="463" href="#463">463</a>     <strong class="jxr_keyword">protected</strong> Builder getOSGiBuilder( MavenProject currentProject, Map originalInstructions, Properties properties,
+<a name="464" href="#464">464</a>         Jar[] classpath ) <strong class="jxr_keyword">throws</strong> Exception
+<a name="465" href="#465">465</a>     {
+<a name="466" href="#466">466</a>         properties.putAll( getDefaultProperties( currentProject ) );
+<a name="467" href="#467">467</a>         properties.putAll( transformDirectives( originalInstructions ) );
+<a name="468" href="#468">468</a>         <strong class="jxr_keyword">if</strong> (properties.getProperty(<span class="jxr_string">"Bundle-Activator"</span>) != <strong class="jxr_keyword">null</strong>
+<a name="469" href="#469">469</a>                 &amp;&amp; properties.getProperty(<span class="jxr_string">"Bundle-Activator"</span>).isEmpty())
+<a name="470" href="#470">470</a>         {
+<a name="471" href="#471">471</a>             properties.remove(<span class="jxr_string">"Bundle-Activator"</span>);
+<a name="472" href="#472">472</a>         }
+<a name="473" href="#473">473</a>         <strong class="jxr_keyword">if</strong> (properties.containsKey(<span class="jxr_string">"-disable-plugin"</span>))
+<a name="474" href="#474">474</a>         {
+<a name="475" href="#475">475</a>             String[] disabled = properties.remove(<span class="jxr_string">"-disable-plugin"</span>).toString().replaceAll(<span class="jxr_string">" "</span>, <span class="jxr_string">""</span>).split(<span class="jxr_string">","</span>);
+<a name="476" href="#476">476</a>             String[] enabled = properties.getProperty(Analyzer.PLUGIN, <span class="jxr_string">""</span>).replaceAll(<span class="jxr_string">" "</span>, <span class="jxr_string">""</span>).split(<span class="jxr_string">","</span>);
+<a name="477" href="#477">477</a>             Set&lt;String&gt; plugin = <strong class="jxr_keyword">new</strong> LinkedHashSet&lt;String&gt;();
+<a name="478" href="#478">478</a>             plugin.addAll(Arrays.asList(enabled));
+<a name="479" href="#479">479</a>             plugin.removeAll(Arrays.asList(disabled));
+<a name="480" href="#480">480</a>             StringBuilder sb = <strong class="jxr_keyword">new</strong> StringBuilder();
+<a name="481" href="#481">481</a>             <strong class="jxr_keyword">for</strong> (String s : plugin)
+<a name="482" href="#482">482</a>             {
+<a name="483" href="#483">483</a>                 <strong class="jxr_keyword">if</strong> (sb.length() &gt; 0)
+<a name="484" href="#484">484</a>                 {
+<a name="485" href="#485">485</a>                     sb.append(<span class="jxr_string">","</span>);
+<a name="486" href="#486">486</a>                 }
+<a name="487" href="#487">487</a>                 sb.append(sb);
+<a name="488" href="#488">488</a>             }
+<a name="489" href="#489">489</a>             properties.setProperty(Analyzer.PLUGIN, sb.toString());
+<a name="490" href="#490">490</a>         }
 <a name="491" href="#491">491</a> 
-<a name="492" href="#492">492</a> 
-<a name="493" href="#493">493</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">static</strong> String sanitize( Object value )
-<a name="494" href="#494">494</a>     {
-<a name="495" href="#495">495</a>         <strong class="jxr_keyword">if</strong> ( value instanceof String )
-<a name="496" href="#496">496</a>         {
-<a name="497" href="#497">497</a>             <strong class="jxr_keyword">return</strong> ( String ) value;
-<a name="498" href="#498">498</a>         }
-<a name="499" href="#499">499</a>         <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> ( value instanceof Iterable )
-<a name="500" href="#500">500</a>         {
-<a name="501" href="#501">501</a>             String delim = <span class="jxr_string">""</span>;
-<a name="502" href="#502">502</a>             StringBuilder buf = <strong class="jxr_keyword">new</strong> StringBuilder();
-<a name="503" href="#503">503</a>             <strong class="jxr_keyword">for</strong> ( Object i : ( Iterable&lt;?&gt; ) value )
-<a name="504" href="#504">504</a>             {
-<a name="505" href="#505">505</a>                 buf.append( delim ).append( i );
-<a name="506" href="#506">506</a>                 delim = <span class="jxr_string">", "</span>;
-<a name="507" href="#507">507</a>             }
-<a name="508" href="#508">508</a>             <strong class="jxr_keyword">return</strong> buf.toString();
-<a name="509" href="#509">509</a>         }
-<a name="510" href="#510">510</a>         <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> ( value.getClass().isArray() )
-<a name="511" href="#511">511</a>         {
-<a name="512" href="#512">512</a>             String delim = <span class="jxr_string">""</span>;
-<a name="513" href="#513">513</a>             StringBuilder buf = <strong class="jxr_keyword">new</strong> StringBuilder();
-<a name="514" href="#514">514</a>             <strong class="jxr_keyword">for</strong> ( <strong class="jxr_keyword">int</strong> i = 0, len = Array.getLength( value ); i &lt; len; i++ )
+<a name="492" href="#492">492</a>         Builder builder = <strong class="jxr_keyword">new</strong> Builder();
+<a name="493" href="#493">493</a>         <strong class="jxr_keyword">synchronized</strong> ( BundlePlugin.<strong class="jxr_keyword">class</strong> ) <em class="jxr_comment">// protect setBase...getBndLastModified which uses static DateFormat </em>
+<a name="494" href="#494">494</a>         {
+<a name="495" href="#495">495</a>             builder.setBase( getBase( currentProject ) );
+<a name="496" href="#496">496</a>         }
+<a name="497" href="#497">497</a>         builder.setProperties( sanitize( properties ) );
+<a name="498" href="#498">498</a>         <strong class="jxr_keyword">if</strong> ( classpath != <strong class="jxr_keyword">null</strong> )
+<a name="499" href="#499">499</a>         {
+<a name="500" href="#500">500</a>             builder.setClasspath( classpath );
+<a name="501" href="#501">501</a>         }
+<a name="502" href="#502">502</a> 
+<a name="503" href="#503">503</a>         <strong class="jxr_keyword">return</strong> builder;
+<a name="504" href="#504">504</a>     }
+<a name="505" href="#505">505</a> 
+<a name="506" href="#506">506</a> 
+<a name="507" href="#507">507</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">static</strong> Properties sanitize( Properties properties )
+<a name="508" href="#508">508</a>     {
+<a name="509" href="#509">509</a>         <em class="jxr_comment">// convert any non-String keys/values to Strings</em>
+<a name="510" href="#510">510</a>         Properties sanitizedEntries = <strong class="jxr_keyword">new</strong> Properties();
+<a name="511" href="#511">511</a>         <strong class="jxr_keyword">for</strong> ( Iterator itr = properties.entrySet().iterator(); itr.hasNext(); )
+<a name="512" href="#512">512</a>         {
+<a name="513" href="#513">513</a>             Map.Entry entry = ( Map.Entry ) itr.next();
+<a name="514" href="#514">514</a>             <strong class="jxr_keyword">if</strong> ( entry.getKey() instanceof String == false )
 <a name="515" href="#515">515</a>             {
-<a name="516" href="#516">516</a>                 buf.append( delim ).append( Array.get( value, i ) );
-<a name="517" href="#517">517</a>                 delim = <span class="jxr_string">", "</span>;
-<a name="518" href="#518">518</a>             }
-<a name="519" href="#519">519</a>             <strong class="jxr_keyword">return</strong> buf.toString();
-<a name="520" href="#520">520</a>         }
-<a name="521" href="#521">521</a>         <strong class="jxr_keyword">else</strong>
-<a name="522" href="#522">522</a>         {
-<a name="523" href="#523">523</a>             <strong class="jxr_keyword">return</strong> String.valueOf( value );
-<a name="524" href="#524">524</a>         }
-<a name="525" href="#525">525</a>     }
-<a name="526" href="#526">526</a> 
-<a name="527" href="#527">527</a> 
-<a name="528" href="#528">528</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">void</strong> addMavenInstructions( MavenProject currentProject, Builder builder ) <strong class="jxr_keyword">throws</strong> Exception
-<a name="529" href="#529">529</a>     {
-<a name="530" href="#530">530</a>         <strong class="jxr_keyword">if</strong> ( currentProject.getBasedir() != <strong class="jxr_keyword">null</strong> )
-<a name="531" href="#531">531</a>         {
-<a name="532" href="#532">532</a>             <em class="jxr_comment">// update BND instructions to add included Maven resources</em>
-<a name="533" href="#533">533</a>             includeMavenResources( currentProject, builder, getLog() );
-<a name="534" href="#534">534</a> 
-<a name="535" href="#535">535</a>             <em class="jxr_comment">// calculate default export/private settings based on sources</em>
-<a name="536" href="#536">536</a>             addLocalPackages( outputDirectory, builder );
-<a name="537" href="#537">537</a> 
-<a name="538" href="#538">538</a>             <em class="jxr_comment">// tell BND where the current project source resides</em>
-<a name="539" href="#539">539</a>             addMavenSourcePath( currentProject, builder, getLog() );
-<a name="540" href="#540">540</a>         }
-<a name="541" href="#541">541</a> 
-<a name="542" href="#542">542</a>         <em class="jxr_comment">// update BND instructions to embed selected Maven dependencies</em>
-<a name="543" href="#543">543</a>         Collection embeddableArtifacts = getEmbeddableArtifacts( currentProject, builder );
-<a name="544" href="#544">544</a>         <strong class="jxr_keyword">new</strong> <a href="../../../../org/apache/felix/bundleplugin/DependencyEmbedder.html">DependencyEmbedder</a>( getLog(), embeddableArtifacts ).processHeaders( builder );
-<a name="545" href="#545">545</a> 
-<a name="546" href="#546">546</a>         <strong class="jxr_keyword">if</strong> ( dumpInstructions != <strong class="jxr_keyword">null</strong> || getLog().isDebugEnabled() )
-<a name="547" href="#547">547</a>         {
-<a name="548" href="#548">548</a>             StringBuilder buf = <strong class="jxr_keyword">new</strong> StringBuilder();
-<a name="549" href="#549">549</a>             getLog().debug( <span class="jxr_string">"BND Instructions:"</span> + NL + dumpInstructions( builder.getProperties(), buf ) );
-<a name="550" href="#550">550</a>             <strong class="jxr_keyword">if</strong> ( dumpInstructions != <strong class="jxr_keyword">null</strong> )
-<a name="551" href="#551">551</a>             {
-<a name="552" href="#552">552</a>                 getLog().info( <span class="jxr_string">"Writing BND instructions to "</span> + dumpInstructions );
-<a name="553" href="#553">553</a>                 dumpInstructions.getParentFile().mkdirs();
-<a name="554" href="#554">554</a>                 FileUtils.fileWrite( dumpInstructions, <span class="jxr_string">"# BND instructions"</span> + NL + buf );
-<a name="555" href="#555">555</a>             }
-<a name="556" href="#556">556</a>         }
-<a name="557" href="#557">557</a> 
-<a name="558" href="#558">558</a>         <strong class="jxr_keyword">if</strong> ( dumpClasspath != <strong class="jxr_keyword">null</strong> || getLog().isDebugEnabled() )
-<a name="559" href="#559">559</a>         {
-<a name="560" href="#560">560</a>             StringBuilder buf = <strong class="jxr_keyword">new</strong> StringBuilder();
-<a name="561" href="#561">561</a>             getLog().debug( <span class="jxr_string">"BND Classpath:"</span> + NL + dumpClasspath( builder.getClasspath(), buf ) );
-<a name="562" href="#562">562</a>             <strong class="jxr_keyword">if</strong> ( dumpClasspath != <strong class="jxr_keyword">null</strong> )
-<a name="563" href="#563">563</a>             {
-<a name="564" href="#564">564</a>                 getLog().info( <span class="jxr_string">"Writing BND classpath to "</span> + dumpClasspath );
-<a name="565" href="#565">565</a>                 dumpClasspath.getParentFile().mkdirs();
-<a name="566" href="#566">566</a>                 FileUtils.fileWrite( dumpClasspath, <span class="jxr_string">"# BND classpath"</span> + NL + buf );
-<a name="567" href="#567">567</a>             }
-<a name="568" href="#568">568</a>         }
-<a name="569" href="#569">569</a>     }
-<a name="570" href="#570">570</a> 
-<a name="571" href="#571">571</a> 
-<a name="572" href="#572">572</a>     <strong class="jxr_keyword">protected</strong> Builder buildOSGiBundle( MavenProject currentProject, Map originalInstructions, Properties properties,
-<a name="573" href="#573">573</a>         Jar[] classpath ) <strong class="jxr_keyword">throws</strong> Exception
-<a name="574" href="#574">574</a>     {
-<a name="575" href="#575">575</a>         Builder builder = getOSGiBuilder( currentProject, originalInstructions, properties, classpath );
-<a name="576" href="#576">576</a> 
-<a name="577" href="#577">577</a>         addMavenInstructions( currentProject, builder );
-<a name="578" href="#578">578</a> 
-<a name="579" href="#579">579</a>         builder.build();
-<a name="580" href="#580">580</a> 
-<a name="581" href="#581">581</a>         mergeMavenManifest( currentProject, builder );
-<a name="582" href="#582">582</a> 
-<a name="583" href="#583">583</a>         <strong class="jxr_keyword">return</strong> builder;
-<a name="584" href="#584">584</a>     }
+<a name="516" href="#516">516</a>                 String key = sanitize( entry.getKey() );
+<a name="517" href="#517">517</a>                 <strong class="jxr_keyword">if</strong> ( !properties.containsKey( key ) )
+<a name="518" href="#518">518</a>                 {
+<a name="519" href="#519">519</a>                     sanitizedEntries.setProperty( key, sanitize( entry.getValue() ) );
+<a name="520" href="#520">520</a>                 }
+<a name="521" href="#521">521</a>                 itr.remove();
+<a name="522" href="#522">522</a>             }
+<a name="523" href="#523">523</a>             <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> ( entry.getValue() instanceof String == false )
+<a name="524" href="#524">524</a>             {
+<a name="525" href="#525">525</a>                 entry.setValue( sanitize( entry.getValue() ) );
+<a name="526" href="#526">526</a>             }
+<a name="527" href="#527">527</a>         }
+<a name="528" href="#528">528</a>         properties.putAll( sanitizedEntries );
+<a name="529" href="#529">529</a>         <strong class="jxr_keyword">return</strong> properties;
+<a name="530" href="#530">530</a>     }
+<a name="531" href="#531">531</a> 
+<a name="532" href="#532">532</a> 
+<a name="533" href="#533">533</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">static</strong> String sanitize( Object value )
+<a name="534" href="#534">534</a>     {
+<a name="535" href="#535">535</a>         <strong class="jxr_keyword">if</strong> ( value instanceof String )
+<a name="536" href="#536">536</a>         {
+<a name="537" href="#537">537</a>             <strong class="jxr_keyword">return</strong> ( String ) value;
+<a name="538" href="#538">538</a>         }
+<a name="539" href="#539">539</a>         <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> ( value instanceof Iterable )
+<a name="540" href="#540">540</a>         {
+<a name="541" href="#541">541</a>             String delim = <span class="jxr_string">""</span>;
+<a name="542" href="#542">542</a>             StringBuilder buf = <strong class="jxr_keyword">new</strong> StringBuilder();
+<a name="543" href="#543">543</a>             <strong class="jxr_keyword">for</strong> ( Object i : ( Iterable&lt;?&gt; ) value )
+<a name="544" href="#544">544</a>             {
+<a name="545" href="#545">545</a>                 buf.append( delim ).append( i );
+<a name="546" href="#546">546</a>                 delim = <span class="jxr_string">", "</span>;
+<a name="547" href="#547">547</a>             }
+<a name="548" href="#548">548</a>             <strong class="jxr_keyword">return</strong> buf.toString();
+<a name="549" href="#549">549</a>         }
+<a name="550" href="#550">550</a>         <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> ( value.getClass().isArray() )
+<a name="551" href="#551">551</a>         {
+<a name="552" href="#552">552</a>             String delim = <span class="jxr_string">""</span>;
+<a name="553" href="#553">553</a>             StringBuilder buf = <strong class="jxr_keyword">new</strong> StringBuilder();
+<a name="554" href="#554">554</a>             <strong class="jxr_keyword">for</strong> ( <strong class="jxr_keyword">int</strong> i = 0, len = Array.getLength( value ); i &lt; len; i++ )
+<a name="555" href="#555">555</a>             {
+<a name="556" href="#556">556</a>                 buf.append( delim ).append( Array.get( value, i ) );
+<a name="557" href="#557">557</a>                 delim = <span class="jxr_string">", "</span>;
+<a name="558" href="#558">558</a>             }
+<a name="559" href="#559">559</a>             <strong class="jxr_keyword">return</strong> buf.toString();
+<a name="560" href="#560">560</a>         }
+<a name="561" href="#561">561</a>         <strong class="jxr_keyword">else</strong>
+<a name="562" href="#562">562</a>         {
+<a name="563" href="#563">563</a>             <strong class="jxr_keyword">return</strong> String.valueOf( value );
+<a name="564" href="#564">564</a>         }
+<a name="565" href="#565">565</a>     }
+<a name="566" href="#566">566</a> 
+<a name="567" href="#567">567</a> 
+<a name="568" href="#568">568</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">void</strong> addMavenInstructions( MavenProject currentProject, Builder builder ) <strong class="jxr_keyword">throws</strong> Exception
+<a name="569" href="#569">569</a>     {
+<a name="570" href="#570">570</a>         <strong class="jxr_keyword">if</strong> ( currentProject.getBasedir() != <strong class="jxr_keyword">null</strong> )
+<a name="571" href="#571">571</a>         {
+<a name="572" href="#572">572</a>             <em class="jxr_comment">// update BND instructions to add included Maven resources</em>
+<a name="573" href="#573">573</a>             includeMavenResources( currentProject, builder, getLog() );
+<a name="574" href="#574">574</a> 
+<a name="575" href="#575">575</a>             <em class="jxr_comment">// calculate default export/private settings based on sources</em>
+<a name="576" href="#576">576</a>             addLocalPackages( outputDirectory, builder );
+<a name="577" href="#577">577</a> 
+<a name="578" href="#578">578</a>             <em class="jxr_comment">// tell BND where the current project source resides</em>
+<a name="579" href="#579">579</a>             addMavenSourcePath( currentProject, builder, getLog() );
+<a name="580" href="#580">580</a>         }
+<a name="581" href="#581">581</a> 
+<a name="582" href="#582">582</a>         <em class="jxr_comment">// update BND instructions to embed selected Maven dependencies</em>
+<a name="583" href="#583">583</a>         Collection embeddableArtifacts = getEmbeddableArtifacts( currentProject, builder );
+<a name="584" href="#584">584</a>         <strong class="jxr_keyword">new</strong> <a href="../../../../org/apache/felix/bundleplugin/DependencyEmbedder.html">DependencyEmbedder</a>( getLog(), embeddableArtifacts ).processHeaders( builder );
 <a name="585" href="#585">585</a> 
-<a name="586" href="#586">586</a> 
-<a name="587" href="#587">587</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">static</strong> StringBuilder dumpInstructions( Properties properties, StringBuilder buf )
-<a name="588" href="#588">588</a>     {
-<a name="589" href="#589">589</a>         <strong class="jxr_keyword">try</strong>
-<a name="590" href="#590">590</a>         {
-<a name="591" href="#591">591</a>             buf.append( <span class="jxr_string">"#-----------------------------------------------------------------------"</span> + NL );
-<a name="592" href="#592">592</a>             Properties stringProperties = <strong class="jxr_keyword">new</strong> Properties();
-<a name="593" href="#593">593</a>             <strong class="jxr_keyword">for</strong> ( Enumeration e = properties.propertyNames(); e.hasMoreElements(); )
-<a name="594" href="#594">594</a>             {
-<a name="595" href="#595">595</a>                 <em class="jxr_comment">// we can only store String properties</em>
-<a name="596" href="#596">596</a>                 String key = ( String ) e.nextElement();
-<a name="597" href="#597">597</a>                 String value = properties.getProperty( key );
-<a name="598" href="#598">598</a>                 <strong class="jxr_keyword">if</strong> ( value != <strong class="jxr_keyword">null</strong> )
-<a name="599" href="#599">599</a>                 {
-<a name="600" href="#600">600</a>                     stringProperties.setProperty( key, value );
-<a name="601" href="#601">601</a>                 }
-<a name="602" href="#602">602</a>             }
-<a name="603" href="#603">603</a>             ByteArrayOutputStream out = <strong class="jxr_keyword">new</strong> ByteArrayOutputStream();
-<a name="604" href="#604">604</a>             stringProperties.store( out, <strong class="jxr_keyword">null</strong> ); <em class="jxr_comment">// properties encoding is 8859_1</em>
-<a name="605" href="#605">605</a>             buf.append( out.toString( <span class="jxr_string">"8859_1"</span> ) );
-<a name="606" href="#606">606</a>             buf.append( <span class="jxr_string">"#-----------------------------------------------------------------------"</span> + NL );
-<a name="607" href="#607">607</a>         }
-<a name="608" href="#608">608</a>         <strong class="jxr_keyword">catch</strong> ( Throwable e )
-<a name="609" href="#609">609</a>         {
-<a name="610" href="#610">610</a>             <em class="jxr_comment">// ignore...</em>
-<a name="611" href="#611">611</a>         }
-<a name="612" href="#612">612</a>         <strong class="jxr_keyword">return</strong> buf;
-<a name="613" href="#613">613</a>     }
-<a name="614" href="#614">614</a> 
-<a name="615" href="#615">615</a> 
-<a name="616" href="#616">616</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">static</strong> StringBuilder dumpClasspath( List classpath, StringBuilder buf )
-<a name="617" href="#617">617</a>     {
-<a name="618" href="#618">618</a>         <strong class="jxr_keyword">try</strong>
-<a name="619" href="#619">619</a>         {
-<a name="620" href="#620">620</a>             buf.append( <span class="jxr_string">"#-----------------------------------------------------------------------"</span> + NL );
-<a name="621" href="#621">621</a>             buf.append( <span class="jxr_string">"-classpath:&#92;&#92;"</span> + NL );
-<a name="622" href="#622">622</a>             <strong class="jxr_keyword">for</strong> ( Iterator i = classpath.iterator(); i.hasNext(); )
-<a name="623" href="#623">623</a>             {
-<a name="624" href="#624">624</a>                 File path = ( ( Jar ) i.next() ).getSource();
-<a name="625" href="#625">625</a>                 <strong class="jxr_keyword">if</strong> ( path != <strong class="jxr_keyword">null</strong> )
-<a name="626" href="#626">626</a>                 {
-<a name="627" href="#627">627</a>                     buf.append( ' ' + path.toString() + ( i.hasNext() ? <span class="jxr_string">",&#92;&#92;"</span> : <span class="jxr_string">""</span> ) + NL );
-<a name="628" href="#628">628</a>                 }
-<a name="629" href="#629">629</a>             }
-<a name="630" href="#630">630</a>             buf.append( <span class="jxr_string">"#-----------------------------------------------------------------------"</span> + NL );
-<a name="631" href="#631">631</a>         }
-<a name="632" href="#632">632</a>         <strong class="jxr_keyword">catch</strong> ( Throwable e )
-<a name="633" href="#633">633</a>         {
-<a name="634" href="#634">634</a>             <em class="jxr_comment">// ignore...</em>
-<a name="635" href="#635">635</a>         }
-<a name="636" href="#636">636</a>         <strong class="jxr_keyword">return</strong> buf;
-<a name="637" href="#637">637</a>     }
-<a name="638" href="#638">638</a> 
-<a name="639" href="#639">639</a> 
-<a name="640" href="#640">640</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">static</strong> StringBuilder dumpManifest( Manifest manifest, StringBuilder buf )
-<a name="641" href="#641">641</a>     {
-<a name="642" href="#642">642</a>         <strong class="jxr_keyword">try</strong>
-<a name="643" href="#643">643</a>         {
-<a name="644" href="#644">644</a>             buf.append( <span class="jxr_string">"#-----------------------------------------------------------------------"</span> + NL );
-<a name="645" href="#645">645</a>             ByteArrayOutputStream out = <strong class="jxr_keyword">new</strong> ByteArrayOutputStream();
-<a name="646" href="#646">646</a>             Jar.writeManifest( manifest, out ); <em class="jxr_comment">// manifest encoding is UTF8</em>
-<a name="647" href="#647">647</a>             buf.append( out.toString( <span class="jxr_string">"UTF8"</span> ) );
-<a name="648" href="#648">648</a>             buf.append( <span class="jxr_string">"#-----------------------------------------------------------------------"</span> + NL );
-<a name="649" href="#649">649</a>         }
-<a name="650" href="#650">650</a>         <strong class="jxr_keyword">catch</strong> ( Throwable e )
-<a name="651" href="#651">651</a>         {
-<a name="652" href="#652">652</a>             <em class="jxr_comment">// ignore...</em>
-<a name="653" href="#653">653</a>         }
-<a name="654" href="#654">654</a>         <strong class="jxr_keyword">return</strong> buf;
-<a name="655" href="#655">655</a>     }
-<a name="656" href="#656">656</a> 
-<a name="657" href="#657">657</a> 
-<a name="658" href="#658">658</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">void</strong> includeMavenResources( MavenProject currentProject, Analyzer analyzer, Log log )
-<a name="659" href="#659">659</a>     {
-<a name="660" href="#660">660</a>         <em class="jxr_comment">// pass maven resource paths onto BND analyzer</em>
-<a name="661" href="#661">661</a>         <strong class="jxr_keyword">final</strong> String mavenResourcePaths = getMavenResourcePaths( currentProject );
-<a name="662" href="#662">662</a>         <strong class="jxr_keyword">final</strong> String includeResource = ( String ) analyzer.getProperty( Analyzer.INCLUDE_RESOURCE );
-<a name="663" href="#663">663</a>         <strong class="jxr_keyword">if</strong> ( includeResource != <strong class="jxr_keyword">null</strong> )
-<a name="664" href="#664">664</a>         {
-<a name="665" href="#665">665</a>             <strong class="jxr_keyword">if</strong> ( includeResource.indexOf( MAVEN_RESOURCES ) &gt;= 0 )
-<a name="666" href="#666">666</a>             {
-<a name="667" href="#667">667</a>                 <em class="jxr_comment">// if there is no maven resource path, we do a special treatment and replace</em>
-<a name="668" href="#668">668</a>                 <em class="jxr_comment">// every occurance of MAVEN_RESOURCES and a following comma with an empty string</em>
-<a name="669" href="#669">669</a>                 <strong class="jxr_keyword">if</strong> ( mavenResourcePaths.length() == 0 )
-<a name="670" href="#670">670</a>                 {
-<a name="671" href="#671">671</a>                     String cleanedResource = removeTagFromInstruction( includeResource, MAVEN_RESOURCES );
-<a name="672" href="#672">672</a>                     <strong class="jxr_keyword">if</strong> ( cleanedResource.length() &gt; 0 )
-<a name="673" href="#673">673</a>                     {
-<a name="674" href="#674">674</a>                         analyzer.setProperty( Analyzer.INCLUDE_RESOURCE, cleanedResource );
-<a name="675" href="#675">675</a>                     }
-<a name="676" href="#676">676</a>                     <strong class="jxr_keyword">else</strong>
-<a name="677" href="#677">677</a>                     {
-<a name="678" href="#678">678</a>                         analyzer.unsetProperty( Analyzer.INCLUDE_RESOURCE );
-<a name="679" href="#679">679</a>                     }
-<a name="680" href="#680">680</a>                 }
-<a name="681" href="#681">681</a>                 <strong class="jxr_keyword">else</strong>
-<a name="682" href="#682">682</a>                 {
-<a name="683" href="#683">683</a>                     String combinedResource = StringUtils
-<a name="684" href="#684">684</a>                         .replace( includeResource, MAVEN_RESOURCES, mavenResourcePaths );
-<a name="685" href="#685">685</a>                     analyzer.setProperty( Analyzer.INCLUDE_RESOURCE, combinedResource );
-<a name="686" href="#686">686</a>                 }
-<a name="687" href="#687">687</a>             }
-<a name="688" href="#688">688</a>             <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> ( mavenResourcePaths.length() &gt; 0 )
-<a name="689" href="#689">689</a>             {
-<a name="690" href="#690">690</a>                 log.warn( Analyzer.INCLUDE_RESOURCE + <span class="jxr_string">": overriding "</span> + mavenResourcePaths + <span class="jxr_string">" with "</span> + includeResource
-<a name="691" href="#691">691</a>                     + <span class="jxr_string">" (add "</span> + MAVEN_RESOURCES + <span class="jxr_string">" if you want to include the maven resources)"</span> );
-<a name="692" href="#692">692</a>             }
+<a name="586" href="#586">586</a>         <strong class="jxr_keyword">if</strong> ( dumpInstructions != <strong class="jxr_keyword">null</strong> || getLog().isDebugEnabled() )
+<a name="587" href="#587">587</a>         {
+<a name="588" href="#588">588</a>             StringBuilder buf = <strong class="jxr_keyword">new</strong> StringBuilder();
+<a name="589" href="#589">589</a>             getLog().debug( <span class="jxr_string">"BND Instructions:"</span> + NL + dumpInstructions( builder.getProperties(), buf ) );
+<a name="590" href="#590">590</a>             <strong class="jxr_keyword">if</strong> ( dumpInstructions != <strong class="jxr_keyword">null</strong> )
+<a name="591" href="#591">591</a>             {
+<a name="592" href="#592">592</a>                 getLog().info( <span class="jxr_string">"Writing BND instructions to "</span> + dumpInstructions );
+<a name="593" href="#593">593</a>                 dumpInstructions.getParentFile().mkdirs();
+<a name="594" href="#594">594</a>                 FileUtils.fileWrite( dumpInstructions, <span class="jxr_string">"# BND instructions"</span> + NL + buf );
+<a name="595" href="#595">595</a>             }
+<a name="596" href="#596">596</a>         }
+<a name="597" href="#597">597</a> 
+<a name="598" href="#598">598</a>         <strong class="jxr_keyword">if</strong> ( dumpClasspath != <strong class="jxr_keyword">null</strong> || getLog().isDebugEnabled() )
+<a name="599" href="#599">599</a>         {
+<a name="600" href="#600">600</a>             StringBuilder buf = <strong class="jxr_keyword">new</strong> StringBuilder();
+<a name="601" href="#601">601</a>             getLog().debug( <span class="jxr_string">"BND Classpath:"</span> + NL + dumpClasspath( builder.getClasspath(), buf ) );
+<a name="602" href="#602">602</a>             <strong class="jxr_keyword">if</strong> ( dumpClasspath != <strong class="jxr_keyword">null</strong> )
+<a name="603" href="#603">603</a>             {
+<a name="604" href="#604">604</a>                 getLog().info( <span class="jxr_string">"Writing BND classpath to "</span> + dumpClasspath );
+<a name="605" href="#605">605</a>                 dumpClasspath.getParentFile().mkdirs();
+<a name="606" href="#606">606</a>                 FileUtils.fileWrite( dumpClasspath, <span class="jxr_string">"# BND classpath"</span> + NL + buf );
+<a name="607" href="#607">607</a>             }
+<a name="608" href="#608">608</a>         }
+<a name="609" href="#609">609</a>     }
+<a name="610" href="#610">610</a> 
+<a name="611" href="#611">611</a> 
+<a name="612" href="#612">612</a>     <strong class="jxr_keyword">protected</strong> Builder buildOSGiBundle( MavenProject currentProject, Map originalInstructions, Properties properties,
+<a name="613" href="#613">613</a>         Jar[] classpath ) <strong class="jxr_keyword">throws</strong> Exception
+<a name="614" href="#614">614</a>     {
+<a name="615" href="#615">615</a>         Builder builder = getOSGiBuilder( currentProject, originalInstructions, properties, classpath );
+<a name="616" href="#616">616</a> 
+<a name="617" href="#617">617</a>         addMavenInstructions( currentProject, builder );
+<a name="618" href="#618">618</a> 
+<a name="619" href="#619">619</a>         builder.build();
+<a name="620" href="#620">620</a> 
+<a name="621" href="#621">621</a>         mergeMavenManifest( currentProject, builder );
+<a name="622" href="#622">622</a> 
+<a name="623" href="#623">623</a>         <strong class="jxr_keyword">return</strong> builder;
+<a name="624" href="#624">624</a>     }
+<a name="625" href="#625">625</a> 
+<a name="626" href="#626">626</a> 
+<a name="627" href="#627">627</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">static</strong> StringBuilder dumpInstructions( Properties properties, StringBuilder buf )
+<a name="628" href="#628">628</a>     {
+<a name="629" href="#629">629</a>         <strong class="jxr_keyword">try</strong>
+<a name="630" href="#630">630</a>         {
+<a name="631" href="#631">631</a>             buf.append( <span class="jxr_string">"#-----------------------------------------------------------------------"</span> + NL );
+<a name="632" href="#632">632</a>             Properties stringProperties = <strong class="jxr_keyword">new</strong> Properties();
+<a name="633" href="#633">633</a>             <strong class="jxr_keyword">for</strong> ( Enumeration e = properties.propertyNames(); e.hasMoreElements(); )
+<a name="634" href="#634">634</a>             {
+<a name="635" href="#635">635</a>                 <em class="jxr_comment">// we can only store String properties</em>
+<a name="636" href="#636">636</a>                 String key = ( String ) e.nextElement();
+<a name="637" href="#637">637</a>                 String value = properties.getProperty( key );
+<a name="638" href="#638">638</a>                 <strong class="jxr_keyword">if</strong> ( value != <strong class="jxr_keyword">null</strong> )
+<a name="639" href="#639">639</a>                 {
+<a name="640" href="#640">640</a>                     stringProperties.setProperty( key, value );
+<a name="641" href="#641">641</a>                 }
+<a name="642" href="#642">642</a>             }
+<a name="643" href="#643">643</a>             ByteArrayOutputStream out = <strong class="jxr_keyword">new</strong> ByteArrayOutputStream();
+<a name="644" href="#644">644</a>             stringProperties.store( out, <strong class="jxr_keyword">null</strong> ); <em class="jxr_comment">// properties encoding is 8859_1</em>
+<a name="645" href="#645">645</a>             buf.append( out.toString( <span class="jxr_string">"8859_1"</span> ) );
+<a name="646" href="#646">646</a>             buf.append( <span class="jxr_string">"#-----------------------------------------------------------------------"</span> + NL );
+<a name="647" href="#647">647</a>         }
+<a name="648" href="#648">648</a>         <strong class="jxr_keyword">catch</strong> ( Throwable e )
+<a name="649" href="#649">649</a>         {
+<a name="650" href="#650">650</a>             <em class="jxr_comment">// ignore...</em>
+<a name="651" href="#651">651</a>         }
+<a name="652" href="#652">652</a>         <strong class="jxr_keyword">return</strong> buf;
+<a name="653" href="#653">653</a>     }
+<a name="654" href="#654">654</a> 
+<a name="655" href="#655">655</a> 
+<a name="656" href="#656">656</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">static</strong> StringBuilder dumpClasspath( List classpath, StringBuilder buf )
+<a name="657" href="#657">657</a>     {
+<a name="658" href="#658">658</a>         <strong class="jxr_keyword">try</strong>
+<a name="659" href="#659">659</a>         {
+<a name="660" href="#660">660</a>             buf.append( <span class="jxr_string">"#-----------------------------------------------------------------------"</span> + NL );
+<a name="661" href="#661">661</a>             buf.append( <span class="jxr_string">"-classpath:&#92;&#92;"</span> + NL );
+<a name="662" href="#662">662</a>             <strong class="jxr_keyword">for</strong> ( Iterator i = classpath.iterator(); i.hasNext(); )
+<a name="663" href="#663">663</a>             {
+<a name="664" href="#664">664</a>                 File path = ( ( Jar ) i.next() ).getSource();
+<a name="665" href="#665">665</a>                 <strong class="jxr_keyword">if</strong> ( path != <strong class="jxr_keyword">null</strong> )
+<a name="666" href="#666">666</a>                 {
+<a name="667" href="#667">667</a>                     buf.append( ' ' + path.toString() + ( i.hasNext() ? <span class="jxr_string">",&#92;&#92;"</span> : <span class="jxr_string">""</span> ) + NL );
+<a name="668" href="#668">668</a>                 }
+<a name="669" href="#669">669</a>             }
+<a name="670" href="#670">670</a>             buf.append( <span class="jxr_string">"#-----------------------------------------------------------------------"</span> + NL );
+<a name="671" href="#671">671</a>         }
+<a name="672" href="#672">672</a>         <strong class="jxr_keyword">catch</strong> ( Throwable e )
+<a name="673" href="#673">673</a>         {
+<a name="674" href="#674">674</a>             <em class="jxr_comment">// ignore...</em>
+<a name="675" href="#675">675</a>         }
+<a name="676" href="#676">676</a>         <strong class="jxr_keyword">return</strong> buf;
+<a name="677" href="#677">677</a>     }
+<a name="678" href="#678">678</a> 
+<a name="679" href="#679">679</a> 
+<a name="680" href="#680">680</a>     <strong class="jxr_keyword">protected</strong> StringBuilder dumpManifest( Manifest manifest, StringBuilder buf )
+<a name="681" href="#681">681</a>     {
+<a name="682" href="#682">682</a>         <strong class="jxr_keyword">try</strong>
+<a name="683" href="#683">683</a>         {
+<a name="684" href="#684">684</a>             buf.append( <span class="jxr_string">"#-----------------------------------------------------------------------"</span> + NL );
+<a name="685" href="#685">685</a>             ByteArrayOutputStream out = <strong class="jxr_keyword">new</strong> ByteArrayOutputStream();
+<a name="686" href="#686">686</a>             ManifestWriter.outputManifest( manifest, out, false ); <em class="jxr_comment">// manifest encoding is UTF8</em>
+<a name="687" href="#687">687</a>             buf.append( out.toString( <span class="jxr_string">"UTF8"</span> ) );
+<a name="688" href="#688">688</a>             buf.append( <span class="jxr_string">"#-----------------------------------------------------------------------"</span> + NL );
+<a name="689" href="#689">689</a>         }
+<a name="690" href="#690">690</a>         <strong class="jxr_keyword">catch</strong> ( Throwable e )
+<a name="691" href="#691">691</a>         {
+<a name="692" href="#692">692</a>             <em class="jxr_comment">// ignore...</em>
 <a name="693" href="#693">693</a>         }
-<a name="694" href="#694">694</a>         <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> ( mavenResourcePaths.length() &gt; 0 )
-<a name="695" href="#695">695</a>         {
-<a name="696" href="#696">696</a>             analyzer.setProperty( Analyzer.INCLUDE_RESOURCE, mavenResourcePaths );
-<a name="697" href="#697">697</a>         }
-<a name="698" href="#698">698</a>     }
-<a name="699" href="#699">699</a> 
-<a name="700" href="#700">700</a> 
-<a name="701" href="#701">701</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">void</strong> mergeMavenManifest( MavenProject currentProject, Builder builder ) <strong class="jxr_keyword">throws</strong> Exception
-<a name="702" href="#702">702</a>     {
-<a name="703" href="#703">703</a>         Jar jar = builder.getJar();
-<a name="704" href="#704">704</a> 
-<a name="705" href="#705">705</a>         <strong class="jxr_keyword">if</strong> ( getLog().isDebugEnabled() )
-<a name="706" href="#706">706</a>         {
-<a name="707" href="#707">707</a>             getLog().debug( <span class="jxr_string">"BND Manifest:"</span> + NL + dumpManifest( jar.getManifest(), <strong class="jxr_keyword">new</strong> StringBuilder() ) );
-<a name="708" href="#708">708</a>         }
-<a name="709" href="#709">709</a> 
-<a name="710" href="#710">710</a>         <strong class="jxr_keyword">boolean</strong> addMavenDescriptor = currentProject.getBasedir() != <strong class="jxr_keyword">null</strong>;
-<a name="711" href="#711">711</a> 
-<a name="712" href="#712">712</a>         <strong class="jxr_keyword">try</strong>
-<a name="713" href="#713">713</a>         {
-<a name="714" href="#714">714</a>             <em class="jxr_comment">/*</em>
-<a name="715" href="#715">715</a> <em class="jxr_comment">             * Grab customized manifest entries from the maven-jar-plugin configuration</em>
-<a name="716" href="#716">716</a> <em class="jxr_comment">             */</em>
-<a name="717" href="#717">717</a>             MavenArchiveConfiguration archiveConfig = JarPluginConfiguration.getArchiveConfiguration( currentProject );
-<a name="718" href="#718">718</a>             String mavenManifestText = <strong class="jxr_keyword">new</strong> MavenArchiver().getManifest( currentProject, archiveConfig ).toString();
-<a name="719" href="#719">719</a>             addMavenDescriptor = addMavenDescriptor &amp;&amp; archiveConfig.isAddMavenDescriptor();
-<a name="720" href="#720">720</a> 
-<a name="721" href="#721">721</a>             Manifest mavenManifest = <strong class="jxr_keyword">new</strong> Manifest();
-<a name="722" href="#722">722</a> 
-<a name="723" href="#723">723</a>             <em class="jxr_comment">// First grab the external manifest file (if specified and different to target location)</em>
-<a name="724" href="#724">724</a>             File externalManifestFile = archiveConfig.getManifestFile();
-<a name="725" href="#725">725</a>             <strong class="jxr_keyword">if</strong> ( <strong class="jxr_keyword">null</strong> != externalManifestFile )
-<a name="726" href="#726">726</a>             {
-<a name="727" href="#727">727</a>                 <strong class="jxr_keyword">if</strong> ( !externalManifestFile.isAbsolute() )
-<a name="728" href="#728">728</a>                 {
-<a name="729" href="#729">729</a>                     externalManifestFile = <strong class="jxr_keyword">new</strong> File( currentProject.getBasedir(), externalManifestFile.getPath() );
-<a name="730" href="#730">730</a>                 }
-<a name="731" href="#731">731</a>                 <strong class="jxr_keyword">if</strong> ( externalManifestFile.exists() &amp;&amp; !externalManifestFile.equals( <strong class="jxr_keyword">new</strong> File( manifestLocation, <span class="jxr_string">"MANIFEST.MF"</span> ) ) )
-<a name="732" href="#732">732</a>                 {
-<a name="733" href="#733">733</a>                     InputStream mis = <strong class="jxr_keyword">new</strong> FileInputStream( externalManifestFile );
-<a name="734" href="#734">734</a>                     mavenManifest.read( mis );
-<a name="735" href="#735">735</a>                     mis.close();
-<a name="736" href="#736">736</a>                 }
-<a name="737" href="#737">737</a>             }
-<a name="738" href="#738">738</a> 
-<a name="739" href="#739">739</a>             <em class="jxr_comment">// Then apply customized entries from the jar plugin; note: manifest encoding is UTF8</em>
-<a name="740" href="#740">740</a>             mavenManifest.read( <strong class="jxr_keyword">new</strong> ByteArrayInputStream( mavenManifestText.getBytes( <span class="jxr_string">"UTF8"</span> ) ) );
-<a name="741" href="#741">741</a> 
-<a name="742" href="#742">742</a>             <strong class="jxr_keyword">if</strong> ( !archiveConfig.isManifestSectionsEmpty() )
-<a name="743" href="#743">743</a>             {
-<a name="744" href="#744">744</a>                 <em class="jxr_comment">/*</em>
-<a name="745" href="#745">745</a> <em class="jxr_comment">                 * Add customized manifest sections (for some reason MavenArchiver doesn't do this for us)</em>
-<a name="746" href="#746">746</a> <em class="jxr_comment">                 */</em>
-<a name="747" href="#747">747</a>                 List sections = archiveConfig.getManifestSections();
-<a name="748" href="#748">748</a>                 <strong class="jxr_keyword">for</strong> ( Iterator i = sections.iterator(); i.hasNext(); )
-<a name="749" href="#749">749</a>                 {
-<a name="750" href="#750">750</a>                     ManifestSection section = ( ManifestSection ) i.next();
-<a name="751" href="#751">751</a>                     Attributes attributes = <strong class="jxr_keyword">new</strong> Attributes();
-<a name="752" href="#752">752</a> 
-<a name="753" href="#753">753</a>                     <strong class="jxr_keyword">if</strong> ( !section.isManifestEntriesEmpty() )
-<a name="754" href="#754">754</a>                     {
-<a name="755" href="#755">755</a>                         Map entries = section.getManifestEntries();
-<a name="756" href="#756">756</a>                         <strong class="jxr_keyword">for</strong> ( Iterator j = entries.entrySet().iterator(); j.hasNext(); )
-<a name="757" href="#757">757</a>                         {
-<a name="758" href="#758">758</a>                             Map.Entry entry = ( Map.Entry ) j.next();
-<a name="759" href="#759">759</a>                             attributes.putValue( ( String ) entry.getKey(), ( String ) entry.getValue() );
-<a name="760" href="#760">760</a>                         }
-<a name="761" href="#761">761</a>                     }
-<a name="762" href="#762">762</a> 
-<a name="763" href="#763">763</a>                     mavenManifest.getEntries().put( section.getName(), attributes );
-<a name="764" href="#764">764</a>                 }
-<a name="765" href="#765">765</a>             }
-<a name="766" href="#766">766</a> 
-<a name="767" href="#767">767</a>             Attributes mainMavenAttributes = mavenManifest.getMainAttributes();
-<a name="768" href="#768">768</a>             mainMavenAttributes.putValue( <span class="jxr_string">"Created-By"</span>, <span class="jxr_string">"Apache Maven Bundle Plugin"</span> );
+<a name="694" href="#694">694</a>         <strong class="jxr_keyword">return</strong> buf;
+<a name="695" href="#695">695</a>     }
+<a name="696" href="#696">696</a> 
+<a name="697" href="#697">697</a> 
+<a name="698" href="#698">698</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">void</strong> includeMavenResources( MavenProject currentProject, Analyzer analyzer, Log log )
+<a name="699" href="#699">699</a>     {
+<a name="700" href="#700">700</a>         <em class="jxr_comment">// pass maven resource paths onto BND analyzer</em>
+<a name="701" href="#701">701</a>         <strong class="jxr_keyword">final</strong> String mavenResourcePaths = getMavenResourcePaths( currentProject, false );
+<a name="702" href="#702">702</a>         <strong class="jxr_keyword">final</strong> String mavenTestResourcePaths = getMavenResourcePaths( currentProject, <strong class="jxr_keyword">true</strong> );
+<a name="703" href="#703">703</a>         <strong class="jxr_keyword">final</strong> String includeResource = analyzer.getProperty( Analyzer.INCLUDE_RESOURCE );
+<a name="704" href="#704">704</a>         <strong class="jxr_keyword">if</strong> ( includeResource != <strong class="jxr_keyword">null</strong> )
+<a name="705" href="#705">705</a>         {
+<a name="706" href="#706">706</a>             <strong class="jxr_keyword">if</strong> ( includeResource.contains( MAVEN_RESOURCES ) || includeResource.contains( MAVEN_TEST_RESOURCES ) )
+<a name="707" href="#707">707</a>             {
+<a name="708" href="#708">708</a>                 String combinedResource = StringUtils.replace( includeResource, MAVEN_RESOURCES, mavenResourcePaths );
+<a name="709" href="#709">709</a>                 combinedResource = StringUtils.replace( combinedResource, MAVEN_TEST_RESOURCES, mavenTestResourcePaths );
+<a name="710" href="#710">710</a>                 <strong class="jxr_keyword">if</strong> ( combinedResource.length() &gt; 0 )
+<a name="711" href="#711">711</a>                 {
+<a name="712" href="#712">712</a>                     analyzer.setProperty( Analyzer.INCLUDE_RESOURCE, combinedResource );
+<a name="713" href="#713">713</a>                 }
+<a name="714" href="#714">714</a>                 <strong class="jxr_keyword">else</strong>
+<a name="715" href="#715">715</a>                 {
+<a name="716" href="#716">716</a>                     analyzer.unsetProperty( Analyzer.INCLUDE_RESOURCE );
+<a name="717" href="#717">717</a>                 }
+<a name="718" href="#718">718</a>             }
+<a name="719" href="#719">719</a>             <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> ( mavenResourcePaths.length() &gt; 0 )
+<a name="720" href="#720">720</a>             {
+<a name="721" href="#721">721</a>                 log.warn( Analyzer.INCLUDE_RESOURCE + <span class="jxr_string">": overriding "</span> + mavenResourcePaths + <span class="jxr_string">" with "</span> + includeResource
+<a name="722" href="#722">722</a>                         + <span class="jxr_string">" (add "</span> + MAVEN_RESOURCES + <span class="jxr_string">" if you want to include the maven resources)"</span> );
+<a name="723" href="#723">723</a>             }
+<a name="724" href="#724">724</a>         }
+<a name="725" href="#725">725</a>         <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> ( mavenResourcePaths.length() &gt; 0 )
+<a name="726" href="#726">726</a>         {
+<a name="727" href="#727">727</a>             analyzer.setProperty( Analyzer.INCLUDE_RESOURCE, mavenResourcePaths );
+<a name="728" href="#728">728</a>         }
+<a name="729" href="#729">729</a>     }
+<a name="730" href="#730">730</a> 
+<a name="731" href="#731">731</a> 
+<a name="732" href="#732">732</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">void</strong> mergeMavenManifest( MavenProject currentProject, Builder builder ) <strong class="jxr_keyword">throws</strong> Exception
+<a name="733" href="#733">733</a>     {
+<a name="734" href="#734">734</a>         Jar jar = builder.getJar();
+<a name="735" href="#735">735</a> 
+<a name="736" href="#736">736</a>         <strong class="jxr_keyword">if</strong> ( getLog().isDebugEnabled() )
+<a name="737" href="#737">737</a>         {
+<a name="738" href="#738">738</a>             getLog().debug( <span class="jxr_string">"BND Manifest:"</span> + NL + dumpManifest( jar.getManifest(), <strong class="jxr_keyword">new</strong> StringBuilder() ) );
+<a name="739" href="#739">739</a>         }
+<a name="740" href="#740">740</a> 
+<a name="741" href="#741">741</a>         <strong class="jxr_keyword">boolean</strong> addMavenDescriptor = currentProject.getBasedir() != <strong class="jxr_keyword">null</strong>;
+<a name="742" href="#742">742</a> 
+<a name="743" href="#743">743</a>         <strong class="jxr_keyword">try</strong>
+<a name="744" href="#744">744</a>         {
+<a name="745" href="#745">745</a>             <em class="jxr_comment">/*</em>
+<a name="746" href="#746">746</a> <em class="jxr_comment">             * Grab customized manifest entries from the maven-jar-plugin configuration</em>
+<a name="747" href="#747">747</a> <em class="jxr_comment">             */</em>
+<a name="748" href="#748">748</a>             MavenArchiveConfiguration archiveConfig = JarPluginConfiguration.getArchiveConfiguration( currentProject );
+<a name="749" href="#749">749</a>             String mavenManifestText = <strong class="jxr_keyword">new</strong> MavenArchiver().getManifest( currentProject, archiveConfig ).toString();
+<a name="750" href="#750">750</a>             addMavenDescriptor = addMavenDescriptor &amp;&amp; archiveConfig.isAddMavenDescriptor();
+<a name="751" href="#751">751</a> 
+<a name="752" href="#752">752</a>             Manifest mavenManifest = <strong class="jxr_keyword">new</strong> Manifest();
+<a name="753" href="#753">753</a> 
+<a name="754" href="#754">754</a>             <em class="jxr_comment">// First grab the external manifest file (if specified and different to target location)</em>
+<a name="755" href="#755">755</a>             File externalManifestFile = archiveConfig.getManifestFile();
+<a name="756" href="#756">756</a>             <strong class="jxr_keyword">if</strong> ( <strong class="jxr_keyword">null</strong> != externalManifestFile )
+<a name="757" href="#757">757</a>             {
+<a name="758" href="#758">758</a>                 <strong class="jxr_keyword">if</strong> ( !externalManifestFile.isAbsolute() )
+<a name="759" href="#759">759</a>                 {
+<a name="760" href="#760">760</a>                     externalManifestFile = <strong class="jxr_keyword">new</strong> File( currentProject.getBasedir(), externalManifestFile.getPath() );
+<a name="761" href="#761">761</a>                 }
+<a name="762" href="#762">762</a>                 <strong class="jxr_keyword">if</strong> ( externalManifestFile.exists() &amp;&amp; !externalManifestFile.equals( <strong class="jxr_keyword">new</strong> File( manifestLocation, <span class="jxr_string">"MANIFEST.MF"</span> ) ) )
+<a name="763" href="#763">763</a>                 {
+<a name="764" href="#764">764</a>                     InputStream mis = <strong class="jxr_keyword">new</strong> FileInputStream( externalManifestFile );
+<a name="765" href="#765">765</a>                     mavenManifest.read( mis );
+<a name="766" href="#766">766</a>                     mis.close();
+<a name="767" href="#767">767</a>                 }
+<a name="768" href="#768">768</a>             }
 <a name="769" href="#769">769</a> 
-<a name="770" href="#770">770</a>             String[] removeHeaders = builder.getProperty( Constants.REMOVEHEADERS, <span class="jxr_string">""</span> ).split( <span class="jxr_string">","</span> );
-<a name="771" href="#771">771</a> 
-<a name="772" href="#772">772</a>             <em class="jxr_comment">// apply -removeheaders to the custom manifest</em>
-<a name="773" href="#773">773</a>             <strong class="jxr_keyword">for</strong> ( <strong class="jxr_keyword">int</strong> i = 0; i &lt; removeHeaders.length; i++ )
+<a name="770" href="#770">770</a>             <em class="jxr_comment">// Then apply customized entries from the jar plugin; note: manifest encoding is UTF8</em>
+<a name="771" href="#771">771</a>             mavenManifest.read( <strong class="jxr_keyword">new</strong> ByteArrayInputStream( mavenManifestText.getBytes( <span class="jxr_string">"UTF8"</span> ) ) );
+<a name="772" href="#772">772</a> 
+<a name="773" href="#773">773</a>             <strong class="jxr_keyword">if</strong> ( !archiveConfig.isManifestSectionsEmpty() )
 <a name="774" href="#774">774</a>             {
-<a name="775" href="#775">775</a>                 <strong class="jxr_keyword">for</strong> ( Iterator j = mainMavenAttributes.keySet().iterator(); j.hasNext(); )
-<a name="776" href="#776">776</a>                 {
-<a name="777" href="#777">777</a>                     <strong class="jxr_keyword">if</strong> ( j.next().toString().matches( removeHeaders[i].trim() ) )
-<a name="778" href="#778">778</a>                     {
-<a name="779" href="#779">779</a>                         j.remove();
-<a name="780" href="#780">780</a>                     }
-<a name="781" href="#781">781</a>                 }
-<a name="782" href="#782">782</a>             }
+<a name="775" href="#775">775</a>                 <em class="jxr_comment">/*</em>
+<a name="776" href="#776">776</a> <em class="jxr_comment">                 * Add customized manifest sections (for some reason MavenArchiver doesn't do this for us)</em>
+<a name="777" href="#777">777</a> <em class="jxr_comment">                 */</em>
+<a name="778" href="#778">778</a>                 List sections = archiveConfig.getManifestSections();
+<a name="779" href="#779">779</a>                 <strong class="jxr_keyword">for</strong> ( Iterator i = sections.iterator(); i.hasNext(); )
+<a name="780" href="#780">780</a>                 {
+<a name="781" href="#781">781</a>                     ManifestSection section = ( ManifestSection ) i.next();
+<a name="782" href="#782">782</a>                     Attributes attributes = <strong class="jxr_keyword">new</strong> Attributes();
 <a name="783" href="#783">783</a> 
-<a name="784" href="#784">784</a>             <em class="jxr_comment">/*</em>
-<a name="785" href="#785">785</a> <em class="jxr_comment">             * Overlay generated bundle manifest with customized entries</em>
-<a name="786" href="#786">786</a> <em class="jxr_comment">             */</em>
-<a name="787" href="#787">787</a>             Manifest bundleManifest = jar.getManifest();
-<a name="788" href="#788">788</a>             bundleManifest.getMainAttributes().putAll( mainMavenAttributes );
-<a name="789" href="#789">789</a>             bundleManifest.getEntries().putAll( mavenManifest.getEntries() );
-<a name="790" href="#790">790</a> 
-<a name="791" href="#791">791</a>             <em class="jxr_comment">// adjust the import package attributes so that optional dependencies use</em>
-<a name="792" href="#792">792</a>             <em class="jxr_comment">// optional resolution.</em>
-<a name="793" href="#793">793</a>             String importPackages = bundleManifest.getMainAttributes().getValue( <span class="jxr_string">"Import-Package"</span> );
-<a name="794" href="#794">794</a>             <strong class="jxr_keyword">if</strong> ( importPackages != <strong class="jxr_keyword">null</strong> )
-<a name="795" href="#795">795</a>             {
-<a name="796" href="#796">796</a>                 Set optionalPackages = getOptionalPackages( currentProject );
+<a name="784" href="#784">784</a>                     <strong class="jxr_keyword">if</strong> ( !section.isManifestEntriesEmpty() )
+<a name="785" href="#785">785</a>                     {
+<a name="786" href="#786">786</a>                         Map entries = section.getManifestEntries();
+<a name="787" href="#787">787</a>                         <strong class="jxr_keyword">for</strong> ( Iterator j = entries.entrySet().iterator(); j.hasNext(); )
+<a name="788" href="#788">788</a>                         {
+<a name="789" href="#789">789</a>                             Map.Entry entry = ( Map.Entry ) j.next();
+<a name="790" href="#790">790</a>                             attributes.putValue( ( String ) entry.getKey(), ( String ) entry.getValue() );
+<a name="791" href="#791">791</a>                         }
+<a name="792" href="#792">792</a>                     }
+<a name="793" href="#793">793</a> 
+<a name="794" href="#794">794</a>                     mavenManifest.getEntries().put( section.getName(), attributes );
+<a name="795" href="#795">795</a>                 }
+<a name="796" href="#796">796</a>             }
 <a name="797" href="#797">797</a> 
-<a name="798" href="#798">798</a>                 Map&lt;String, ? <strong class="jxr_keyword">extends</strong> Map&lt;String, String&gt;&gt; values = <strong class="jxr_keyword">new</strong> Analyzer().parseHeader( importPackages );
-<a name="799" href="#799">799</a>                 <strong class="jxr_keyword">for</strong> ( Map.Entry&lt;String, ? <strong class="jxr_keyword">extends</strong> Map&lt;String, String&gt;&gt; entry : values.entrySet() )
-<a name="800" href="#800">800</a>                 {
-<a name="801" href="#801">801</a>                     String pkg = entry.getKey();
-<a name="802" href="#802">802</a>                     Map&lt;String, String&gt; options = entry.getValue();
-<a name="803" href="#803">803</a>                     <strong class="jxr_keyword">if</strong> ( !options.containsKey( <span class="jxr_string">"resolution:"</span> ) &amp;&amp; optionalPackages.contains( pkg ) )
-<a name="804" href="#804">804</a>                     {
-<a name="805" href="#805">805</a>                         options.put( <span class="jxr_string">"resolution:"</span>, <span class="jxr_string">"optional"</span> );
-<a name="806" href="#806">806</a>                     }
-<a name="807" href="#807">807</a>                 }
-<a name="808" href="#808">808</a>                 String result = Processor.printClauses( values );
-<a name="809" href="#809">809</a>                 bundleManifest.getMainAttributes().putValue( <span class="jxr_string">"Import-Package"</span>, result );
-<a name="810" href="#810">810</a>             }
-<a name="811" href="#811">811</a> 
-<a name="812" href="#812">812</a>             jar.setManifest( bundleManifest );
-<a name="813" href="#813">813</a>         }
-<a name="814" href="#814">814</a>         <strong class="jxr_keyword">catch</strong> ( Exception e )
-<a name="815" href="#815">815</a>         {
-<a name="816" href="#816">816</a>             getLog().warn( <span class="jxr_string">"Unable to merge Maven manifest: "</span> + e.getLocalizedMessage() );
-<a name="817" href="#817">817</a>         }
-<a name="818" href="#818">818</a> 
-<a name="819" href="#819">819</a>         <strong class="jxr_keyword">if</strong> ( addMavenDescriptor )
-<a name="820" href="#820">820</a>         {
-<a name="821" href="#821">821</a>             doMavenMetadata( currentProject, jar );
-<a name="822" href="#822">822</a>         }
-<a name="823" href="#823">823</a> 
-<a name="824" href="#824">824</a>         <strong class="jxr_keyword">if</strong> ( getLog().isDebugEnabled() )
-<a name="825" href="#825">825</a>         {
-<a name="826" href="#826">826</a>             getLog().debug( <span class="jxr_string">"Final Manifest:"</span> + NL + dumpManifest( jar.getManifest(), <strong class="jxr_keyword">new</strong> StringBuilder() ) );
-<a name="827" href="#827">827</a>         }
+<a name="798" href="#798">798</a>             Attributes mainMavenAttributes = mavenManifest.getMainAttributes();
+<a name="799" href="#799">799</a>             mainMavenAttributes.putValue( <span class="jxr_string">"Created-By"</span>, <span class="jxr_string">"Apache Maven Bundle Plugin"</span> );
+<a name="800" href="#800">800</a> 
+<a name="801" href="#801">801</a>             String[] removeHeaders = builder.getProperty( Constants.REMOVEHEADERS, <span class="jxr_string">""</span> ).split( <span class="jxr_string">","</span> );
+<a name="802" href="#802">802</a> 
+<a name="803" href="#803">803</a>             <em class="jxr_comment">// apply -removeheaders to the custom manifest</em>
+<a name="804" href="#804">804</a>             <strong class="jxr_keyword">for</strong> ( <strong class="jxr_keyword">int</strong> i = 0; i &lt; removeHeaders.length; i++ )
+<a name="805" href="#805">805</a>             {
+<a name="806" href="#806">806</a>                 <strong class="jxr_keyword">for</strong> ( Iterator j = mainMavenAttributes.keySet().iterator(); j.hasNext(); )
+<a name="807" href="#807">807</a>                 {
+<a name="808" href="#808">808</a>                     <strong class="jxr_keyword">if</strong> ( j.next().toString().matches( removeHeaders[i].trim() ) )
+<a name="809" href="#809">809</a>                     {
+<a name="810" href="#810">810</a>                         j.remove();
+<a name="811" href="#811">811</a>                     }
+<a name="812" href="#812">812</a>                 }
+<a name="813" href="#813">813</a>             }
+<a name="814" href="#814">814</a> 
+<a name="815" href="#815">815</a>             <em class="jxr_comment">/*</em>
+<a name="816" href="#816">816</a> <em class="jxr_comment">             * Overlay generated bundle manifest with customized entries</em>
+<a name="817" href="#817">817</a> <em class="jxr_comment">             */</em>
+<a name="818" href="#818">818</a>             Manifest bundleManifest = jar.getManifest();
+<a name="819" href="#819">819</a>             bundleManifest.getMainAttributes().putAll( mainMavenAttributes );
+<a name="820" href="#820">820</a>             bundleManifest.getEntries().putAll( mavenManifest.getEntries() );
+<a name="821" href="#821">821</a> 
+<a name="822" href="#822">822</a>             <em class="jxr_comment">// adjust the import package attributes so that optional dependencies use</em>
+<a name="823" href="#823">823</a>             <em class="jxr_comment">// optional resolution.</em>
+<a name="824" href="#824">824</a>             String importPackages = bundleManifest.getMainAttributes().getValue( <span class="jxr_string">"Import-Package"</span> );
+<a name="825" href="#825">825</a>             <strong class="jxr_keyword">if</strong> ( importPackages != <strong class="jxr_keyword">null</strong> )
+<a name="826" href="#826">826</a>             {
+<a name="827" href="#827">827</a>                 Set optionalPackages = getOptionalPackages( currentProject );
 <a name="828" href="#828">828</a> 
-<a name="829" href="#829">829</a>         builder.setJar( jar );
-<a name="830" href="#830">830</a>     }
-<a name="831" href="#831">831</a> 
-<a name="832" href="#832">832</a> 
-<a name="833" href="#833">833</a>     <strong class="jxr_keyword">protected</strong> Set getOptionalPackages( MavenProject currentProject ) <strong class="jxr_keyword">throws</strong> IOException, MojoExecutionException
-<a name="834" href="#834">834</a>     {
-<a name="835" href="#835">835</a>         ArrayList inscope = <strong class="jxr_keyword">new</strong> ArrayList();
-<a name="836" href="#836">836</a>         <strong class="jxr_keyword">final</strong> Collection artifacts = getSelectedDependencies( currentProject.getArtifacts() );
-<a name="837" href="#837">837</a>         <strong class="jxr_keyword">for</strong> ( Iterator it = artifacts.iterator(); it.hasNext(); )
-<a name="838" href="#838">838</a>         {
-<a name="839" href="#839">839</a>             Artifact artifact = ( Artifact ) it.next();
-<a name="840" href="#840">840</a>             <strong class="jxr_keyword">if</strong> ( artifact.getArtifactHandler().isAddedToClasspath() )
-<a name="841" href="#841">841</a>             {
-<a name="842" href="#842">842</a>                 <strong class="jxr_keyword">if</strong> ( !Artifact.SCOPE_TEST.equals( artifact.getScope() ) )
-<a name="843" href="#843">843</a>                 {
-<a name="844" href="#844">844</a>                     inscope.add( artifact );
-<a name="845" href="#845">845</a>                 }
-<a name="846" href="#846">846</a>             }
-<a name="847" href="#847">847</a>         }
-<a name="848" href="#848">848</a> 
-<a name="849" href="#849">849</a>         HashSet optionalArtifactIds = <strong class="jxr_keyword">new</strong> HashSet();
-<a name="850" href="#850">850</a>         <strong class="jxr_keyword">for</strong> ( Iterator it = inscope.iterator(); it.hasNext(); )
+<a name="829" href="#829">829</a>                 Map&lt;String, ? <strong class="jxr_keyword">extends</strong> Map&lt;String, String&gt;&gt; values = <strong class="jxr_keyword">new</strong> Analyzer().parseHeader( importPackages );
+<a name="830" href="#830">830</a>                 <strong class="jxr_keyword">for</strong> ( Map.Entry&lt;String, ? <strong class="jxr_keyword">extends</strong> Map&lt;String, String&gt;&gt; entry : values.entrySet() )
+<a name="831" href="#831">831</a>                 {
+<a name="832" href="#832">832</a>                     String pkg = entry.getKey();
+<a name="833" href="#833">833</a>                     Map&lt;String, String&gt; options = entry.getValue();
+<a name="834" href="#834">834</a>                     <strong class="jxr_keyword">if</strong> ( !options.containsKey( <span class="jxr_string">"resolution:"</span> ) &amp;&amp; optionalPackages.contains( pkg ) )
+<a name="835" href="#835">835</a>                     {
+<a name="836" href="#836">836</a>                         options.put( <span class="jxr_string">"resolution:"</span>, <span class="jxr_string">"optional"</span> );
+<a name="837" href="#837">837</a>                     }
+<a name="838" href="#838">838</a>                 }
+<a name="839" href="#839">839</a>                 String result = Processor.printClauses( values );
+<a name="840" href="#840">840</a>                 bundleManifest.getMainAttributes().putValue( <span class="jxr_string">"Import-Package"</span>, result );
+<a name="841" href="#841">841</a>             }
+<a name="842" href="#842">842</a> 
+<a name="843" href="#843">843</a>             jar.setManifest( bundleManifest );
+<a name="844" href="#844">844</a>         }
+<a name="845" href="#845">845</a>         <strong class="jxr_keyword">catch</strong> ( Exception e )
+<a name="846" href="#846">846</a>         {
+<a name="847" href="#847">847</a>             getLog().warn( <span class="jxr_string">"Unable to merge Maven manifest: "</span> + e.getLocalizedMessage() );
+<a name="848" href="#848">848</a>         }
+<a name="849" href="#849">849</a> 
+<a name="850" href="#850">850</a>         <strong class="jxr_keyword">if</strong> ( addMavenDescriptor )
 <a name="851" href="#851">851</a>         {
-<a name="852" href="#852">852</a>             Artifact artifact = ( Artifact ) it.next();
-<a name="853" href="#853">853</a>             <strong class="jxr_keyword">if</strong> ( artifact.isOptional() )
-<a name="854" href="#854">854</a>             {
-<a name="855" href="#855">855</a>                 String id = artifact.toString();
-<a name="856" href="#856">856</a>                 <strong class="jxr_keyword">if</strong> ( artifact.getScope() != <strong class="jxr_keyword">null</strong> )
-<a name="857" href="#857">857</a>                 {
-<a name="858" href="#858">858</a>                     <em class="jxr_comment">// strip the scope...</em>
-<a name="859" href="#859">859</a>                     id = id.replaceFirst( <span class="jxr_string">":[^:]*$"</span>, <span class="jxr_string">""</span> );
-<a name="860" href="#860">860</a>                 }
-<a name="861" href="#861">861</a>                 optionalArtifactIds.add( id );
-<a name="862" href="#862">862</a>             }
+<a name="852" href="#852">852</a>             doMavenMetadata( currentProject, jar );
+<a name="853" href="#853">853</a>         }
+<a name="854" href="#854">854</a> 
+<a name="855" href="#855">855</a>         <strong class="jxr_keyword">if</strong> ( getLog().isDebugEnabled() )
+<a name="856" href="#856">856</a>         {
+<a name="857" href="#857">857</a>             getLog().debug( <span class="jxr_string">"Final Manifest:"</span> + NL + dumpManifest( jar.getManifest(), <strong class="jxr_keyword">new</strong> StringBuilder() ) );
+<a name="858" href="#858">858</a>         }
+<a name="859" href="#859">859</a> 
+<a name="860" href="#860">860</a>         builder.setJar( jar );
+<a name="861" href="#861">861</a>     }
+<a name="862" href="#862">862</a> 
 <a name="863" href="#863">863</a> 
-<a name="864" href="#864">864</a>         }
-<a name="865" href="#865">865</a> 
-<a name="866" href="#866">866</a>         HashSet required = <strong class="jxr_keyword">new</strong> HashSet();
-<a name="867" href="#867">867</a>         HashSet optional = <strong class="jxr_keyword">new</strong> HashSet();
-<a name="868" href="#868">868</a>         <strong class="jxr_keyword">for</strong> ( Iterator it = inscope.iterator(); it.hasNext(); )
+<a name="864" href="#864">864</a>     <strong class="jxr_keyword">protected</strong> Set getOptionalPackages( MavenProject currentProject ) <strong class="jxr_keyword">throws</strong> IOException, MojoExecutionException
+<a name="865" href="#865">865</a>     {
+<a name="866" href="#866">866</a>         ArrayList inscope = <strong class="jxr_keyword">new</strong> ArrayList();
+<a name="867" href="#867">867</a>         <strong class="jxr_keyword">final</strong> Collection artifacts = getSelectedDependencies( currentProject.getArtifacts() );
+<a name="868" href="#868">868</a>         <strong class="jxr_keyword">for</strong> ( Iterator it = artifacts.iterator(); it.hasNext(); )
 <a name="869" href="#869">869</a>         {
 <a name="870" href="#870">870</a>             Artifact artifact = ( Artifact ) it.next();
-<a name="871" href="#871">871</a>             File file = getFile( artifact );
-<a name="872" href="#872">872</a>             <strong class="jxr_keyword">if</strong> ( file == <strong class="jxr_keyword">null</strong> )
-<a name="873" href="#873">873</a>             {
-<a name="874" href="#874">874</a>                 <strong class="jxr_keyword">continue</strong>;
-<a name="875" href="#875">875</a>             }
-<a name="876" href="#876">876</a> 
-<a name="877" href="#877">877</a>             Jar jar = <strong class="jxr_keyword">new</strong> Jar( artifact.getArtifactId(), file );
-<a name="878" href="#878">878</a>             <strong class="jxr_keyword">if</strong> ( isTransitivelyOptional( optionalArtifactIds, artifact ) )
-<a name="879" href="#879">879</a>             {
-<a name="880" href="#880">880</a>                 optional.addAll( jar.getPackages() );
-<a name="881" href="#881">881</a>             }
-<a name="882" href="#882">882</a>             <strong class="jxr_keyword">else</strong>
-<a name="883" href="#883">883</a>             {
-<a name="884" href="#884">884</a>                 required.addAll( jar.getPackages() );
-<a name="885" href="#885">885</a>             }
-<a name="886" href="#886">886</a>             jar.close();
-<a name="887" href="#887">887</a>         }
-<a name="888" href="#888">888</a> 
-<a name="889" href="#889">889</a>         optional.removeAll( required );
-<a name="890" href="#890">890</a>         <strong class="jxr_keyword">return</strong> optional;
-<a name="891" href="#891">891</a>     }
-<a name="892" href="#892">892</a> 
-<a name="893" href="#893">893</a> 
-<a name="894" href="#894">894</a>     <em class="jxr_javadoccomment">/**</em>
-<a name="895" href="#895">895</a> <em class="jxr_javadoccomment">     * Check to see if any dependency along the dependency trail of</em>
-<a name="896" href="#896">896</a> <em class="jxr_javadoccomment">     * the artifact is optional.</em>
-<a name="897" href="#897">897</a> <em class="jxr_javadoccomment">     *</em>
-<a name="898" href="#898">898</a> <em class="jxr_javadoccomment">     * @param artifact</em>
-<a name="899" href="#899">899</a> <em class="jxr_javadoccomment">     */</em>
-<a name="900" href="#900">900</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">boolean</strong> isTransitivelyOptional( HashSet optionalArtifactIds, Artifact artifact )
-<a name="901" href="#901">901</a>     {
-<a name="902" href="#902">902</a>         List trail = artifact.getDependencyTrail();
-<a name="903" href="#903">903</a>         <strong class="jxr_keyword">for</strong> ( Iterator iterator = trail.iterator(); iterator.hasNext(); )
-<a name="904" href="#904">904</a>         {
-<a name="905" href="#905">905</a>             String next = ( String ) iterator.next();
-<a name="906" href="#906">906</a>             <strong class="jxr_keyword">if</strong> ( optionalArtifactIds.contains( next ) )
-<a name="907" href="#907">907</a>             {
-<a name="908" href="#908">908</a>                 <strong class="jxr_keyword">return</strong> <strong class="jxr_keyword">true</strong>;
-<a name="909" href="#909">909</a>             }
-<a name="910" href="#910">910</a>         }
-<a name="911" href="#911">911</a>         <strong class="jxr_keyword">return</strong> false;
-<a name="912" href="#912">912</a>     }
-<a name="913" href="#913">913</a> 
-<a name="914" href="#914">914</a> 
-<a name="915" href="#915">915</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">void</strong> unpackBundle( File jarFile )
-<a name="916" href="#916">916</a>     {
-<a name="917" href="#917">917</a>         File outputDir = getOutputDirectory();
-<a name="918" href="#918">918</a>         <strong class="jxr_keyword">if</strong> ( <strong class="jxr_keyword">null</strong> == outputDir )
-<a name="919" href="#919">919</a>         {
-<a name="920" href="#920">920</a>             outputDir = <strong class="jxr_keyword">new</strong> File( getBuildDirectory(), <span class="jxr_string">"classes"</span> );
-<a name="921" href="#921">921</a>         }
-<a name="922" href="#922">922</a> 
-<a name="923" href="#923">923</a>         <strong class="jxr_keyword">try</strong>
-<a name="924" href="#924">924</a>         {
-<a name="925" href="#925">925</a>             <em class="jxr_comment">/*</em>
-<a name="926" href="#926">926</a> <em class="jxr_comment">             * this directory must exist before unpacking, otherwise the plexus</em>
-<a name="927" href="#927">927</a> <em class="jxr_comment">             * unarchiver decides to use the current working directory instead!</em>
-<a name="928" href="#928">928</a> <em class="jxr_comment">             */</em>
-<a name="929" href="#929">929</a>             <strong class="jxr_keyword">if</strong> ( !outputDir.exists() )
-<a name="930" href="#930">930</a>             {
-<a name="931" href="#931">931</a>                 outputDir.mkdirs();
-<a name="932" href="#932">932</a>             }
-<a name="933" href="#933">933</a> 
-<a name="934" href="#934">934</a>             UnArchiver unArchiver = m_archiverManager.getUnArchiver( <span class="jxr_string">"jar"</span> );
-<a name="935" href="#935">935</a>             unArchiver.setDestDirectory( outputDir );
-<a name="936" href="#936">936</a>             unArchiver.setSourceFile( jarFile );
-<a name="937" href="#937">937</a>             unArchiver.extract();
-<a name="938" href="#938">938</a>         }
-<a name="939" href="#939">939</a>         <strong class="jxr_keyword">catch</strong> ( Exception e )
-<a name="940" href="#940">940</a>         {
-<a name="941" href="#941">941</a>             getLog().error( <span class="jxr_string">"Problem unpacking "</span> + jarFile + <span class="jxr_string">" to "</span> + outputDir, e );
-<a name="942" href="#942">942</a>         }
+<a name="871" href="#871">871</a>             <strong class="jxr_keyword">if</strong> ( artifact.getArtifactHandler().isAddedToClasspath() )
+<a name="872" href="#872">872</a>             {
+<a name="873" href="#873">873</a>                 <strong class="jxr_keyword">if</strong> ( !Artifact.SCOPE_TEST.equals( artifact.getScope() ) )
+<a name="874" href="#874">874</a>                 {
+<a name="875" href="#875">875</a>                     inscope.add( artifact );
+<a name="876" href="#876">876</a>                 }
+<a name="877" href="#877">877</a>             }
+<a name="878" href="#878">878</a>         }
+<a name="879" href="#879">879</a> 
+<a name="880" href="#880">880</a>         HashSet optionalArtifactIds = <strong class="jxr_keyword">new</strong> HashSet();
+<a name="881" href="#881">881</a>         <strong class="jxr_keyword">for</strong> ( Iterator it = inscope.iterator(); it.hasNext(); )
+<a name="882" href="#882">882</a>         {
+<a name="883" href="#883">883</a>             Artifact artifact = ( Artifact ) it.next();
+<a name="884" href="#884">884</a>             <strong class="jxr_keyword">if</strong> ( artifact.isOptional() )
+<a name="885" href="#885">885</a>             {
+<a name="886" href="#886">886</a>                 String id = artifact.toString();
+<a name="887" href="#887">887</a>                 <strong class="jxr_keyword">if</strong> ( artifact.getScope() != <strong class="jxr_keyword">null</strong> )
+<a name="888" href="#888">888</a>                 {
+<a name="889" href="#889">889</a>                     <em class="jxr_comment">// strip the scope...</em>
+<a name="890" href="#890">890</a>                     id = id.replaceFirst( <span class="jxr_string">":[^:]*$"</span>, <span class="jxr_string">""</span> );
+<a name="891" href="#891">891</a>                 }
+<a name="892" href="#892">892</a>                 optionalArtifactIds.add( id );
+<a name="893" href="#893">893</a>             }
+<a name="894" href="#894">894</a> 
+<a name="895" href="#895">895</a>         }
+<a name="896" href="#896">896</a> 
+<a name="897" href="#897">897</a>         HashSet required = <strong class="jxr_keyword">new</strong> HashSet();
+<a name="898" href="#898">898</a>         HashSet optional = <strong class="jxr_keyword">new</strong> HashSet();
+<a name="899" href="#899">899</a>         <strong class="jxr_keyword">for</strong> ( Iterator it = inscope.iterator(); it.hasNext(); )
+<a name="900" href="#900">900</a>         {
+<a name="901" href="#901">901</a>             Artifact artifact = ( Artifact ) it.next();
+<a name="902" href="#902">902</a>             File file = getFile( artifact );
+<a name="903" href="#903">903</a>             <strong class="jxr_keyword">if</strong> ( file == <strong class="jxr_keyword">null</strong> )
+<a name="904" href="#904">904</a>             {
+<a name="905" href="#905">905</a>                 <strong class="jxr_keyword">continue</strong>;
+<a name="906" href="#906">906</a>             }
+<a name="907" href="#907">907</a> 
+<a name="908" href="#908">908</a>             Jar jar = <strong class="jxr_keyword">new</strong> Jar( artifact.getArtifactId(), file );
+<a name="909" href="#909">909</a>             <strong class="jxr_keyword">if</strong> ( isTransitivelyOptional( optionalArtifactIds, artifact ) )
+<a name="910" href="#910">910</a>             {
+<a name="911" href="#911">911</a>                 optional.addAll( jar.getPackages() );
+<a name="912" href="#912">912</a>             }
+<a name="913" href="#913">913</a>             <strong class="jxr_keyword">else</strong>
+<a name="914" href="#914">914</a>             {
+<a name="915" href="#915">915</a>                 required.addAll( jar.getPackages() );
+<a name="916" href="#916">916</a>             }
+<a name="917" href="#917">917</a>             jar.close();
+<a name="918" href="#918">918</a>         }
+<a name="919" href="#919">919</a> 
+<a name="920" href="#920">920</a>         optional.removeAll( required );
+<a name="921" href="#921">921</a>         <strong class="jxr_keyword">return</strong> optional;
+<a name="922" href="#922">922</a>     }
+<a name="923" href="#923">923</a> 
+<a name="924" href="#924">924</a> 
+<a name="925" href="#925">925</a>     <em class="jxr_javadoccomment">/**</em>
+<a name="926" href="#926">926</a> <em class="jxr_javadoccomment">     * Check to see if any dependency along the dependency trail of</em>
+<a name="927" href="#927">927</a> <em class="jxr_javadoccomment">     * the artifact is optional.</em>
+<a name="928" href="#928">928</a> <em class="jxr_javadoccomment">     *</em>
+<a name="929" href="#929">929</a> <em class="jxr_javadoccomment">     * @param artifact</em>
+<a name="930" href="#930">930</a> <em class="jxr_javadoccomment">     */</em>
+<a name="931" href="#931">931</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">boolean</strong> isTransitivelyOptional( HashSet optionalArtifactIds, Artifact artifact )
+<a name="932" href="#932">932</a>     {
+<a name="933" href="#933">933</a>         List trail = artifact.getDependencyTrail();
+<a name="934" href="#934">934</a>         <strong class="jxr_keyword">for</strong> ( Iterator iterator = trail.iterator(); iterator.hasNext(); )
+<a name="935" href="#935">935</a>         {
+<a name="936" href="#936">936</a>             String next = ( String ) iterator.next();
+<a name="937" href="#937">937</a>             <strong class="jxr_keyword">if</strong> ( optionalArtifactIds.contains( next ) )
+<a name="938" href="#938">938</a>             {
+<a name="939" href="#939">939</a>                 <strong class="jxr_keyword">return</strong> <strong class="jxr_keyword">true</strong>;
+<a name="940" href="#940">940</a>             }
+<a name="941" href="#941">941</a>         }
+<a name="942" href="#942">942</a>         <strong class="jxr_keyword">return</strong> false;
 <a name="943" href="#943">943</a>     }
 <a name="944" href="#944">944</a> 
 <a name="945" href="#945">945</a> 
-<a name="946" href="#946">946</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">static</strong> String removeTagFromInstruction( String instruction, String tag )
+<a name="946" href="#946">946</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">void</strong> unpackBundle( File jarFile )
 <a name="947" href="#947">947</a>     {
-<a name="948" href="#948">948</a>         StringBuffer buf = <strong class="jxr_keyword">new</strong> StringBuffer();
-<a name="949" href="#949">949</a> 
-<a name="950" href="#950">950</a>         String[] clauses = instruction.split( <span class="jxr_string">","</span> );
-<a name="951" href="#951">951</a>         <strong class="jxr_keyword">for</strong> ( <strong class="jxr_keyword">int</strong> i = 0; i &lt; clauses.length; i++ )
-<a name="952" href="#952">952</a>         {
-<a name="953" href="#953">953</a>             String clause = clauses[i].trim();
-<a name="954" href="#954">954</a>             <strong class="jxr_keyword">if</strong> ( !tag.equals( clause ) )
-<a name="955" href="#955">955</a>             {
-<a name="956" href="#956">956</a>                 <strong class="jxr_keyword">if</strong> ( buf.length() &gt; 0 )
-<a name="957" href="#957">957</a>                 {
-<a name="958" href="#958">958</a>                     buf.append( ',' );
-<a name="959" href="#959">959</a>                 }
-<a name="960" href="#960">960</a>                 buf.append( clause );
-<a name="961" href="#961">961</a>             }
-<a name="962" href="#962">962</a>         }
-<a name="963" href="#963">963</a> 
-<a name="964" href="#964">964</a>         <strong class="jxr_keyword">return</strong> buf.toString();
-<a name="965" href="#965">965</a>     }
-<a name="966" href="#966">966</a> 
-<a name="967" href="#967">967</a> 
-<a name="968" href="#968">968</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> Map getProperties( Model projectModel, String prefix )
-<a name="969" href="#969">969</a>     {
-<a name="970" href="#970">970</a>         Map properties = <strong class="jxr_keyword">new</strong> LinkedHashMap();
-<a name="971" href="#971">971</a>         Method methods[] = Model.<strong class="jxr_keyword">class</strong>.getDeclaredMethods();
-<a name="972" href="#972">972</a>         <strong class="jxr_keyword">for</strong> ( <strong class="jxr_keyword">int</strong> i = 0; i &lt; methods.length; i++ )
-<a name="973" href="#973">973</a>         {
-<a name="974" href="#974">974</a>             String name = methods[i].getName();
-<a name="975" href="#975">975</a>             <strong class="jxr_keyword">if</strong> ( name.startsWith( <span class="jxr_string">"get"</span> ) )
-<a name="976" href="#976">976</a>             {
-<a name="977" href="#977">977</a>                 <strong class="jxr_keyword">try</strong>
-<a name="978" href="#978">978</a>                 {
-<a name="979" href="#979">979</a>                     Object v = methods[i].invoke( projectModel, <strong class="jxr_keyword">null</strong> );
-<a name="980" href="#980">980</a>                     <strong class="jxr_keyword">if</strong> ( v != <strong class="jxr_keyword">null</strong> )
-<a name="981" href="#981">981</a>                     {
-<a name="982" href="#982">982</a>                         name = prefix + Character.toLowerCase( name.charAt( 3 ) ) + name.substring( 4 );
-<a name="983" href="#983">983</a>                         <strong class="jxr_keyword">if</strong> ( v.getClass().isArray() )
-<a name="984" href="#984">984</a>                             properties.put( name, Arrays.asList( ( Object[] ) v ).toString() );
-<a name="985" href="#985">985</a>                         <strong class="jxr_keyword">else</strong>
-<a name="986" href="#986">986</a>                             properties.put( name, v );
-<a name="987" href="#987">987</a> 
-<a name="988" href="#988">988</a>                     }
-<a name="989" href="#989">989</a>                 }
-<a name="990" href="#990">990</a>                 <strong class="jxr_keyword">catch</strong> ( Exception e )
-<a name="991" href="#991">991</a>                 {
-<a name="992" href="#992">992</a>                     <em class="jxr_comment">// too bad</em>
-<a name="993" href="#993">993</a>                 }
-<a name="994" href="#994">994</a>             }
-<a name="995" href="#995">995</a>         }
-<a name="996" href="#996">996</a>         <strong class="jxr_keyword">return</strong> properties;
-<a name="997" href="#997">997</a>     }
+<a name="948" href="#948">948</a>         File outputDir = getOutputDirectory();
+<a name="949" href="#949">949</a>         <strong class="jxr_keyword">if</strong> ( <strong class="jxr_keyword">null</strong> == outputDir )
+<a name="950" href="#950">950</a>         {
+<a name="951" href="#951">951</a>             outputDir = <strong class="jxr_keyword">new</strong> File( getBuildDirectory(), <span class="jxr_string">"classes"</span> );
+<a name="952" href="#952">952</a>         }
+<a name="953" href="#953">953</a> 
+<a name="954" href="#954">954</a>         <strong class="jxr_keyword">try</strong>
+<a name="955" href="#955">955</a>         {
+<a name="956" href="#956">956</a>             <em class="jxr_comment">/*</em>
+<a name="957" href="#957">957</a> <em class="jxr_comment">             * this directory must exist before unpacking, otherwise the plexus</em>
+<a name="958" href="#958">958</a> <em class="jxr_comment">             * unarchiver decides to use the current working directory instead!</em>
+<a name="959" href="#959">959</a> <em class="jxr_comment">             */</em>
+<a name="960" href="#960">960</a>             <strong class="jxr_keyword">if</strong> ( !outputDir.exists() )
+<a name="961" href="#961">961</a>             {
+<a name="962" href="#962">962</a>                 outputDir.mkdirs();
+<a name="963" href="#963">963</a>             }
+<a name="964" href="#964">964</a> 
+<a name="965" href="#965">965</a>             UnArchiver unArchiver = m_archiverManager.getUnArchiver( <span class="jxr_string">"jar"</span> );
+<a name="966" href="#966">966</a>             unArchiver.setDestDirectory( outputDir );
+<a name="967" href="#967">967</a>             unArchiver.setSourceFile( jarFile );
+<a name="968" href="#968">968</a>             unArchiver.extract();
+<a name="969" href="#969">969</a>         }
+<a name="970" href="#970">970</a>         <strong class="jxr_keyword">catch</strong> ( Exception e )
+<a name="971" href="#971">971</a>         {
+<a name="972" href="#972">972</a>             getLog().error( <span class="jxr_string">"Problem unpacking "</span> + jarFile + <span class="jxr_string">" to "</span> + outputDir, e );
+<a name="973" href="#973">973</a>         }
+<a name="974" href="#974">974</a>     }
+<a name="975" href="#975">975</a> 
+<a name="976" href="#976">976</a> 
+<a name="977" href="#977">977</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">static</strong> String removeTagFromInstruction( String instruction, String tag )
+<a name="978" href="#978">978</a>     {
+<a name="979" href="#979">979</a>         StringBuffer buf = <strong class="jxr_keyword">new</strong> StringBuffer();
+<a name="980" href="#980">980</a> 
+<a name="981" href="#981">981</a>         String[] clauses = instruction.split( <span class="jxr_string">","</span> );
+<a name="982" href="#982">982</a>         <strong class="jxr_keyword">for</strong> ( <strong class="jxr_keyword">int</strong> i = 0; i &lt; clauses.length; i++ )
+<a name="983" href="#983">983</a>         {
+<a name="984" href="#984">984</a>             String clause = clauses[i].trim();
+<a name="985" href="#985">985</a>             <strong class="jxr_keyword">if</strong> ( !tag.equals( clause ) )
+<a name="986" href="#986">986</a>             {
+<a name="987" href="#987">987</a>                 <strong class="jxr_keyword">if</strong> ( buf.length() &gt; 0 )
+<a name="988" href="#988">988</a>                 {
+<a name="989" href="#989">989</a>                     buf.append( ',' );
+<a name="990" href="#990">990</a>                 }
+<a name="991" href="#991">991</a>                 buf.append( clause );
+<a name="992" href="#992">992</a>             }
+<a name="993" href="#993">993</a>         }
+<a name="994" href="#994">994</a> 
+<a name="995" href="#995">995</a>         <strong class="jxr_keyword">return</strong> buf.toString();
+<a name="996" href="#996">996</a>     }
+<a name="997" href="#997">997</a> 
 <a name="998" href="#998">998</a> 
-<a name="999" href="#999">999</a> 
-<a name="1000" href="#1000">1000</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> StringBuffer printLicenses( List licenses )
-<a name="1001" href="#1001">1001</a>     {
-<a name="1002" href="#1002">1002</a>         <strong class="jxr_keyword">if</strong> ( licenses == <strong class="jxr_keyword">null</strong> || licenses.size() == 0 )
-<a name="1003" href="#1003">1003</a>             <strong class="jxr_keyword">return</strong> <strong class="jxr_keyword">null</strong>;
-<a name="1004" href="#1004">1004</a>         StringBuffer sb = <strong class="jxr_keyword">new</strong> StringBuffer();
-<a name="1005" href="#1005">1005</a>         String del = <span class="jxr_string">""</span>;
-<a name="1006" href="#1006">1006</a>         <strong class="jxr_keyword">for</strong> ( Iterator i = licenses.iterator(); i.hasNext(); )
-<a name="1007" href="#1007">1007</a>         {
-<a name="1008" href="#1008">1008</a>             License l = ( License ) i.next();
-<a name="1009" href="#1009">1009</a>             String url = l.getUrl();
-<a name="1010" href="#1010">1010</a>             <strong class="jxr_keyword">if</strong> ( url == <strong class="jxr_keyword">null</strong> )
-<a name="1011" href="#1011">1011</a>                 <strong class="jxr_keyword">continue</strong>;
-<a name="1012" href="#1012">1012</a>             sb.append( del );
-<a name="1013" href="#1013">1013</a>             sb.append( url );
-<a name="1014" href="#1014">1014</a>             del = <span class="jxr_string">", "</span>;
-<a name="1015" href="#1015">1015</a>         }
-<a name="1016" href="#1016">1016</a>         <strong class="jxr_keyword">if</strong> ( sb.length() == 0 )
-<a name="1017" href="#1017">1017</a>             <strong class="jxr_keyword">return</strong> <strong class="jxr_keyword">null</strong>;
-<a name="1018" href="#1018">1018</a>         <strong class="jxr_keyword">return</strong> sb;
-<a name="1019" href="#1019">1019</a>     }
-<a name="1020" href="#1020">1020</a> 
-<a name="1021" href="#1021">1021</a> 
-<a name="1022" href="#1022">1022</a>     <em class="jxr_javadoccomment">/**</em>
-<a name="1023" href="#1023">1023</a> <em class="jxr_javadoccomment">     * @param jar</em>
-<a name="1024" href="#1024">1024</a> <em class="jxr_javadoccomment">     * @throws IOException</em>
-<a name="1025" href="#1025">1025</a> <em class="jxr_javadoccomment">     */</em>
-<a name="1026" href="#1026">1026</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">void</strong> doMavenMetadata( MavenProject currentProject, Jar jar ) <strong class="jxr_keyword">throws</strong> IOException
-<a name="1027" href="#1027">1027</a>     {
-<a name="1028" href="#1028">1028</a>         String path = <span class="jxr_string">"META-INF/maven/"</span> + currentProject.getGroupId() + <span class="jxr_string">"/"</span> + currentProject.getArtifactId();
-<a name="1029" href="#1029">1029</a>         File pomFile = <strong class="jxr_keyword">new</strong> File( currentProject.getBasedir(), <span class="jxr_string">"pom.xml"</span> );
-<a name="1030" href="#1030">1030</a>         jar.putResource( path + <span class="jxr_string">"/pom.xml"</span>, <strong class="jxr_keyword">new</strong> FileResource( pomFile ) );
-<a name="1031" href="#1031">1031</a> 
-<a name="1032" href="#1032">1032</a>         Properties p = <strong class="jxr_keyword">new</strong> Properties();
-<a name="1033" href="#1033">1033</a>         p.put( <span class="jxr_string">"version"</span>, currentProject.getVersion() );
-<a name="1034" href="#1034">1034</a>         p.put( <span class="jxr_string">"groupId"</span>, currentProject.getGroupId() );
-<a name="1035" href="#1035">1035</a>         p.put( <span class="jxr_string">"artifactId"</span>, currentProject.getArtifactId() );
-<a name="1036" href="#1036">1036</a>         ByteArrayOutputStream out = <strong class="jxr_keyword">new</strong> ByteArrayOutputStream();
-<a name="1037" href="#1037">1037</a>         p.store( out, <span class="jxr_string">"Generated by org.apache.felix.bundleplugin"</span> );
-<a name="1038" href="#1038">1038</a>         jar.putResource( path + <span class="jxr_string">"/pom.properties"</span>, <strong class="jxr_keyword">new</strong> EmbeddedResource( out.toByteArray(), System.currentTimeMillis() ) );
-<a name="1039" href="#1039">1039</a>     }
-<a name="1040" href="#1040">1040</a> 
-<a name="1041" href="#1041">1041</a> 
-<a name="1042" href="#1042">1042</a>     <strong class="jxr_keyword">protected</strong> Jar[] getClasspath( MavenProject currentProject ) <strong class="jxr_keyword">throws</strong> IOException, MojoExecutionException
-<a name="1043" href="#1043">1043</a>     {
-<a name="1044" href="#1044">1044</a>         List list = <strong class="jxr_keyword">new</strong> ArrayList();
-<a name="1045" href="#1045">1045</a> 
-<a name="1046" href="#1046">1046</a>         <strong class="jxr_keyword">if</strong> ( getOutputDirectory() != <strong class="jxr_keyword">null</strong> &amp;&amp; getOutputDirectory().exists() )
-<a name="1047" href="#1047">1047</a>         {
-<a name="1048" href="#1048">1048</a>             list.add( <strong class="jxr_keyword">new</strong> Jar( <span class="jxr_string">"."</span>, getOutputDirectory() ) );
-<a name="1049" href="#1049">1049</a>         }
-<a name="1050" href="#1050">1050</a> 
-<a name="1051" href="#1051">1051</a>         <strong class="jxr_keyword">final</strong> Collection artifacts = getSelectedDependencies( currentProject.getArtifacts() );
-<a name="1052" href="#1052">1052</a>         <strong class="jxr_keyword">for</strong> ( Iterator it = artifacts.iterator(); it.hasNext(); )
-<a name="1053" href="#1053">1053</a>         {
-<a name="1054" href="#1054">1054</a>             Artifact artifact = ( Artifact ) it.next();
-<a name="1055" href="#1055">1055</a>             <strong class="jxr_keyword">if</strong> ( artifact.getArtifactHandler().isAddedToClasspath() )
-<a name="1056" href="#1056">1056</a>             {
-<a name="1057" href="#1057">1057</a>                 <strong class="jxr_keyword">if</strong> ( !Artifact.SCOPE_TEST.equals( artifact.getScope() ) )
-<a name="1058" href="#1058">1058</a>                 {
-<a name="1059" href="#1059">1059</a>                     File file = getFile( artifact );
-<a name="1060" href="#1060">1060</a>                     <strong class="jxr_keyword">if</strong> ( file == <strong class="jxr_keyword">null</strong> )
-<a name="1061" href="#1061">1061</a>                     {
-<a name="1062" href="#1062">1062</a>                         getLog().warn(
-<a name="1063" href="#1063">1063</a>                             <span class="jxr_string">"File is not available for artifact "</span> + artifact + <span class="jxr_string">" in project "</span>
-<a name="1064" href="#1064">1064</a>                                 + currentProject.getArtifact() );
-<a name="1065" href="#1065">1065</a>                         <strong class="jxr_keyword">continue</strong>;
-<a name="1066" href="#1066">1066</a>                     }
-<a name="1067" href="#1067">1067</a>                     Jar jar = <strong class="jxr_keyword">new</strong> Jar( artifact.getArtifactId(), file );
-<a name="1068" href="#1068">1068</a>                     list.add( jar );
-<a name="1069" href="#1069">1069</a>                 }
-<a name="1070" href="#1070">1070</a>             }
-<a name="1071" href="#1071">1071</a>         }
-<a name="1072" href="#1072">1072</a>         Jar[] cp = <strong class="jxr_keyword">new</strong> Jar[list.size()];
-<a name="1073" href="#1073">1073</a>         list.toArray( cp );
-<a name="1074" href="#1074">1074</a>         <strong class="jxr_keyword">return</strong> cp;
-<a name="1075" href="#1075">1075</a>     }
+<a name="999" href="#999">999</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> Map getProperties( Model projectModel, String prefix )
+<a name="1000" href="#1000">1000</a>     {
+<a name="1001" href="#1001">1001</a>         Map properties = <strong class="jxr_keyword">new</strong> LinkedHashMap();
+<a name="1002" href="#1002">1002</a>         Method methods[] = Model.<strong class="jxr_keyword">class</strong>.getDeclaredMethods();
+<a name="1003" href="#1003">1003</a>         <strong class="jxr_keyword">for</strong> ( <strong class="jxr_keyword">int</strong> i = 0; i &lt; methods.length; i++ )
+<a name="1004" href="#1004">1004</a>         {
+<a name="1005" href="#1005">1005</a>             String name = methods[i].getName();
+<a name="1006" href="#1006">1006</a>             <strong class="jxr_keyword">if</strong> ( name.startsWith( <span class="jxr_string">"get"</span> ) )
+<a name="1007" href="#1007">1007</a>             {
+<a name="1008" href="#1008">1008</a>                 <strong class="jxr_keyword">try</strong>
+<a name="1009" href="#1009">1009</a>                 {
+<a name="1010" href="#1010">1010</a>                     Object v = methods[i].invoke( projectModel, <strong class="jxr_keyword">null</strong> );
+<a name="1011" href="#1011">1011</a>                     <strong class="jxr_keyword">if</strong> ( v != <strong class="jxr_keyword">null</strong> )
+<a name="1012" href="#1012">1012</a>                     {
+<a name="1013" href="#1013">1013</a>                         name = prefix + Character.toLowerCase( name.charAt( 3 ) ) + name.substring( 4 );
+<a name="1014" href="#1014">1014</a>                         <strong class="jxr_keyword">if</strong> ( v.getClass().isArray() )
+<a name="1015" href="#1015">1015</a>                             properties.put( name, Arrays.asList( ( Object[] ) v ).toString() );
+<a name="1016" href="#1016">1016</a>                         <strong class="jxr_keyword">else</strong>
+<a name="1017" href="#1017">1017</a>                             properties.put( name, v );
+<a name="1018" href="#1018">1018</a> 
+<a name="1019" href="#1019">1019</a>                     }
+<a name="1020" href="#1020">1020</a>                 }
+<a name="1021" href="#1021">1021</a>                 <strong class="jxr_keyword">catch</strong> ( Exception e )
+<a name="1022" href="#1022">1022</a>                 {
+<a name="1023" href="#1023">1023</a>                     <em class="jxr_comment">// too bad</em>
+<a name="1024" href="#1024">1024</a>                 }
+<a name="1025" href="#1025">1025</a>             }
+<a name="1026" href="#1026">1026</a>         }
+<a name="1027" href="#1027">1027</a>         <strong class="jxr_keyword">return</strong> properties;
+<a name="1028" href="#1028">1028</a>     }
+<a name="1029" href="#1029">1029</a> 
+<a name="1030" href="#1030">1030</a> 
+<a name="1031" href="#1031">1031</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> StringBuffer printLicenses( List licenses )
+<a name="1032" href="#1032">1032</a>     {
+<a name="1033" href="#1033">1033</a>         <strong class="jxr_keyword">if</strong> ( licenses == <strong class="jxr_keyword">null</strong> || licenses.size() == 0 )
+<a name="1034" href="#1034">1034</a>             <strong class="jxr_keyword">return</strong> <strong class="jxr_keyword">null</strong>;
+<a name="1035" href="#1035">1035</a>         StringBuffer sb = <strong class="jxr_keyword">new</strong> StringBuffer();
+<a name="1036" href="#1036">1036</a>         String del = <span class="jxr_string">""</span>;
+<a name="1037" href="#1037">1037</a>         <strong class="jxr_keyword">for</strong> ( Iterator i = licenses.iterator(); i.hasNext(); )
+<a name="1038" href="#1038">1038</a>         {
+<a name="1039" href="#1039">1039</a>             License l = ( License ) i.next();
+<a name="1040" href="#1040">1040</a>             String url = l.getUrl();
+<a name="1041" href="#1041">1041</a>             <strong class="jxr_keyword">if</strong> ( url == <strong class="jxr_keyword">null</strong> )
+<a name="1042" href="#1042">1042</a>                 <strong class="jxr_keyword">continue</strong>;
+<a name="1043" href="#1043">1043</a>             sb.append( del );
+<a name="1044" href="#1044">1044</a>             sb.append( url );
+<a name="1045" href="#1045">1045</a>             del = <span class="jxr_string">", "</span>;
+<a name="1046" href="#1046">1046</a>         }
+<a name="1047" href="#1047">1047</a>         <strong class="jxr_keyword">if</strong> ( sb.length() == 0 )
+<a name="1048" href="#1048">1048</a>             <strong class="jxr_keyword">return</strong> <strong class="jxr_keyword">null</strong>;
+<a name="1049" href="#1049">1049</a>         <strong class="jxr_keyword">return</strong> sb;
+<a name="1050" href="#1050">1050</a>     }
+<a name="1051" href="#1051">1051</a> 
+<a name="1052" href="#1052">1052</a> 
+<a name="1053" href="#1053">1053</a>     <em class="jxr_javadoccomment">/**</em>
+<a name="1054" href="#1054">1054</a> <em class="jxr_javadoccomment">     * @param jar</em>
+<a name="1055" href="#1055">1055</a> <em class="jxr_javadoccomment">     * @throws IOException</em>
+<a name="1056" href="#1056">1056</a> <em class="jxr_javadoccomment">     */</em>
+<a name="1057" href="#1057">1057</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">void</strong> doMavenMetadata( MavenProject currentProject, Jar jar ) <strong class="jxr_keyword">throws</strong> IOException
+<a name="1058" href="#1058">1058</a>     {
+<a name="1059" href="#1059">1059</a>         String path = <span class="jxr_string">"META-INF/maven/"</span> + currentProject.getGroupId() + <span class="jxr_string">"/"</span> + currentProject.getArtifactId();
+<a name="1060" href="#1060">1060</a>         File pomFile = <strong class="jxr_keyword">new</strong> File( currentProject.getBasedir(), <span class="jxr_string">"pom.xml"</span> );
+<a name="1061" href="#1061">1061</a>         jar.putResource( path + <span class="jxr_string">"/pom.xml"</span>, <strong class="jxr_keyword">new</strong> FileResource( pomFile ) );
+<a name="1062" href="#1062">1062</a> 
+<a name="1063" href="#1063">1063</a>         Properties p = <strong class="jxr_keyword">new</strong> Properties();
+<a name="1064" href="#1064">1064</a>         p.put( <span class="jxr_string">"version"</span>, currentProject.getVersion() );
+<a name="1065" href="#1065">1065</a>         p.put( <span class="jxr_string">"groupId"</span>, currentProject.getGroupId() );
+<a name="1066" href="#1066">1066</a>         p.put( <span class="jxr_string">"artifactId"</span>, currentProject.getArtifactId() );
+<a name="1067" href="#1067">1067</a>         ByteArrayOutputStream out = <strong class="jxr_keyword">new</strong> ByteArrayOutputStream();
+<a name="1068" href="#1068">1068</a>         p.store( out, <span class="jxr_string">"Generated by org.apache.felix.bundleplugin"</span> );
+<a name="1069" href="#1069">1069</a>         jar.putResource( path + <span class="jxr_string">"/pom.properties"</span>, <strong class="jxr_keyword">new</strong> EmbeddedResource( out.toByteArray(), System.currentTimeMillis() ) );
+<a name="1070" href="#1070">1070</a>     }
+<a name="1071" href="#1071">1071</a> 
+<a name="1072" href="#1072">1072</a> 
+<a name="1073" href="#1073">1073</a>     <strong class="jxr_keyword">protected</strong> Jar[] getClasspath( MavenProject currentProject ) <strong class="jxr_keyword">throws</strong> IOException, MojoExecutionException
+<a name="1074" href="#1074">1074</a>     {
+<a name="1075" href="#1075">1075</a>         List list = <strong class="jxr_keyword">new</strong> ArrayList();
 <a name="1076" href="#1076">1076</a> 
-<a name="1077" href="#1077">1077</a> 
-<a name="1078" href="#1078">1078</a>     <strong class="jxr_keyword">private</strong> Collection getSelectedDependencies( Collection artifacts ) <strong class="jxr_keyword">throws</strong> MojoExecutionException
-<a name="1079" href="#1079">1079</a>     {
-<a name="1080" href="#1080">1080</a>         <strong class="jxr_keyword">if</strong> ( <strong class="jxr_keyword">null</strong> == excludeDependencies || excludeDependencies.length() == 0 )
-<a name="1081" href="#1081">1081</a>         {
-<a name="1082" href="#1082">1082</a>             <strong class="jxr_keyword">return</strong> artifacts;
-<a name="1083" href="#1083">1083</a>         }
-<a name="1084" href="#1084">1084</a>         <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> ( <span class="jxr_string">"true"</span>.equalsIgnoreCase( excludeDependencies ) )
-<a name="1085" href="#1085">1085</a>         {
-<a name="1086" href="#1086">1086</a>             <strong class="jxr_keyword">return</strong> Collections.EMPTY_LIST;
-<a name="1087" href="#1087">1087</a>         }
-<a name="1088" href="#1088">1088</a> 
-<a name="1089" href="#1089">1089</a>         Collection selectedDependencies = <strong class="jxr_keyword">new</strong> LinkedHashSet( artifacts );
-<a name="1090" href="#1090">1090</a>         <a href="../../../../org/apache/felix/bundleplugin/DependencyExcluder.html">DependencyExcluder</a> excluder = <strong class="jxr_keyword">new</strong> <a href="../../../../org/apache/felix/bundleplugin/DependencyExcluder.html">DependencyExcluder</a>( artifacts );
-<a name="1091" href="#1091">1091</a>         excluder.processHeaders( excludeDependencies );
-<a name="1092" href="#1092">1092</a>         selectedDependencies.removeAll( excluder.getExcludedArtifacts() );
-<a name="1093" href="#1093">1093</a> 
-<a name="1094" href="#1094">1094</a>         <strong class="jxr_keyword">return</strong> selectedDependencies;
-<a name="1095" href="#1095">1095</a>     }
-<a name="1096" href="#1096">1096</a> 
-<a name="1097" href="#1097">1097</a> 
-<a name="1098" href="#1098">1098</a>     <em class="jxr_javadoccomment">/**</em>
-<a name="1099" href="#1099">1099</a> <em class="jxr_javadoccomment">     * Get the file for an Artifact</em>
-<a name="1100" href="#1100">1100</a> <em class="jxr_javadoccomment">     *</em>
-<a name="1101" href="#1101">1101</a> <em class="jxr_javadoccomment">     * @param artifact</em>
-<a name="1102" href="#1102">1102</a> <em class="jxr_javadoccomment">     */</em>
-<a name="1103" href="#1103">1103</a>     <strong class="jxr_keyword">protected</strong> File getFile( Artifact artifact )
-<a name="1104" href="#1104">1104</a>     {
-<a name="1105" href="#1105">1105</a>         <strong class="jxr_keyword">return</strong> artifact.getFile();
+<a name="1077" href="#1077">1077</a>         <strong class="jxr_keyword">if</strong> ( getOutputDirectory() != <strong class="jxr_keyword">null</strong> &amp;&amp; getOutputDirectory().exists() )
+<a name="1078" href="#1078">1078</a>         {
+<a name="1079" href="#1079">1079</a>             list.add( <strong class="jxr_keyword">new</strong> Jar( <span class="jxr_string">"."</span>, getOutputDirectory() ) );
+<a name="1080" href="#1080">1080</a>         }
+<a name="1081" href="#1081">1081</a> 
+<a name="1082" href="#1082">1082</a>         <strong class="jxr_keyword">final</strong> Collection artifacts = getSelectedDependencies( currentProject.getArtifacts() );
+<a name="1083" href="#1083">1083</a>         <strong class="jxr_keyword">for</strong> ( Iterator it = artifacts.iterator(); it.hasNext(); )
+<a name="1084" href="#1084">1084</a>         {
+<a name="1085" href="#1085">1085</a>             Artifact artifact = ( Artifact ) it.next();
+<a name="1086" href="#1086">1086</a>             <strong class="jxr_keyword">if</strong> ( artifact.getArtifactHandler().isAddedToClasspath() )
+<a name="1087" href="#1087">1087</a>             {
+<a name="1088" href="#1088">1088</a>                 <strong class="jxr_keyword">if</strong> ( !Artifact.SCOPE_TEST.equals( artifact.getScope() ) )
+<a name="1089" href="#1089">1089</a>                 {
+<a name="1090" href="#1090">1090</a>                     File file = getFile( artifact );
+<a name="1091" href="#1091">1091</a>                     <strong class="jxr_keyword">if</strong> ( file == <strong class="jxr_keyword">null</strong> )
+<a name="1092" href="#1092">1092</a>                     {
+<a name="1093" href="#1093">1093</a>                         getLog().warn(
+<a name="1094" href="#1094">1094</a>                             <span class="jxr_string">"File is not available for artifact "</span> + artifact + <span class="jxr_string">" in project "</span>
+<a name="1095" href="#1095">1095</a>                                 + currentProject.getArtifact() );
+<a name="1096" href="#1096">1096</a>                         <strong class="jxr_keyword">continue</strong>;
+<a name="1097" href="#1097">1097</a>                     }
+<a name="1098" href="#1098">1098</a>                     Jar jar = <strong class="jxr_keyword">new</strong> Jar( artifact.getArtifactId(), file );
+<a name="1099" href="#1099">1099</a>                     list.add( jar );
+<a name="1100" href="#1100">1100</a>                 }
+<a name="1101" href="#1101">1101</a>             }
+<a name="1102" href="#1102">1102</a>         }
+<a name="1103" href="#1103">1103</a>         Jar[] cp = <strong class="jxr_keyword">new</strong> Jar[list.size()];
+<a name="1104" href="#1104">1104</a>         list.toArray( cp );
+<a name="1105" href="#1105">1105</a>         <strong class="jxr_keyword">return</strong> cp;
 <a name="1106" href="#1106">1106</a>     }
 <a name="1107" href="#1107">1107</a> 
 <a name="1108" href="#1108">1108</a> 
-<a name="1109" href="#1109">1109</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">void</strong> header( Properties properties, String key, Object value )
+<a name="1109" href="#1109">1109</a>     <strong class="jxr_keyword">private</strong> Collection getSelectedDependencies( Collection artifacts ) <strong class="jxr_keyword">throws</strong> MojoExecutionException
 <a name="1110" href="#1110">1110</a>     {
-<a name="1111" href="#1111">1111</a>         <strong class="jxr_keyword">if</strong> ( value == <strong class="jxr_keyword">null</strong> )
-<a name="1112" href="#1112">1112</a>             <strong class="jxr_keyword">return</strong>;
-<a name="1113" href="#1113">1113</a> 
-<a name="1114" href="#1114">1114</a>         <strong class="jxr_keyword">if</strong> ( value instanceof Collection &amp;&amp; ( ( Collection ) value ).isEmpty() )
-<a name="1115" href="#1115">1115</a>             <strong class="jxr_keyword">return</strong>;
-<a name="1116" href="#1116">1116</a> 
-<a name="1117" href="#1117">1117</a>         properties.put( key, value.toString().replaceAll( <span class="jxr_string">"[\r\n]"</span>, <span class="jxr_string">""</span> ) );
-<a name="1118" href="#1118">1118</a>     }
+<a name="1111" href="#1111">1111</a>         <strong class="jxr_keyword">if</strong> ( <strong class="jxr_keyword">null</strong> == excludeDependencies || excludeDependencies.length() == 0 )
+<a name="1112" href="#1112">1112</a>         {
+<a name="1113" href="#1113">1113</a>             <strong class="jxr_keyword">return</strong> artifacts;
+<a name="1114" href="#1114">1114</a>         }
+<a name="1115" href="#1115">1115</a>         <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> ( <span class="jxr_string">"true"</span>.equalsIgnoreCase( excludeDependencies ) )
+<a name="1116" href="#1116">1116</a>         {
+<a name="1117" href="#1117">1117</a>             <strong class="jxr_keyword">return</strong> Collections.EMPTY_LIST;
+<a name="1118" href="#1118">1118</a>         }
 <a name="1119" href="#1119">1119</a> 
-<a name="1120" href="#1120">1120</a> 
-<a name="1121" href="#1121">1121</a>     <em class="jxr_javadoccomment">/**</em>
-<a name="1122" href="#1122">1122</a> <em class="jxr_javadoccomment">     * Convert a Maven version into an OSGi compliant version</em>
-<a name="1123" href="#1123">1123</a> <em class="jxr_javadoccomment">     *</em>
-<a name="1124" href="#1124">1124</a> <em class="jxr_javadoccomment">     * @param version Maven version</em>
-<a name="1125" href="#1125">1125</a> <em class="jxr_javadoccomment">     * @return the OSGi version</em>
-<a name="1126" href="#1126">1126</a> <em class="jxr_javadoccomment">     */</em>
-<a name="1127" href="#1127">1127</a>     <strong class="jxr_keyword">protected</strong> String convertVersionToOsgi( String version )
-<a name="1128" href="#1128">1128</a>     {
-<a name="1129" href="#1129">1129</a>         <strong class="jxr_keyword">return</strong> getMaven2OsgiConverter().getVersion( version );
-<a name="1130" href="#1130">1130</a>     }
-<a name="1131" href="#1131">1131</a> 
-<a name="1132" href="#1132">1132</a> 
-<a name="1133" href="#1133">1133</a>     <em class="jxr_javadoccomment">/**</em>
-<a name="1134" href="#1134">1134</a> <em class="jxr_javadoccomment">     * TODO this should return getMaven2Osgi().getBundleFileName( project.getArtifact() )</em>
-<a name="1135" href="#1135">1135</a> <em class="jxr_javadoccomment">     */</em>
-<a name="1136" href="#1136">1136</a>     <strong class="jxr_keyword">protected</strong> String getBundleName( MavenProject currentProject )
-<a name="1137" href="#1137">1137</a>     {
-<a name="1138" href="#1138">1138</a>         String extension;
-<a name="1139" href="#1139">1139</a>         <strong class="jxr_keyword">try</strong>
-<a name="1140" href="#1140">1140</a>         {
-<a name="1141" href="#1141">1141</a>             extension = currentProject.getArtifact().getArtifactHandler().getExtension();
-<a name="1142" href="#1142">1142</a>         }
-<a name="1143" href="#1143">1143</a>         <strong class="jxr_keyword">catch</strong> ( Throwable e )
-<a name="1144" href="#1144">1144</a>         {
-<a name="1145" href="#1145">1145</a>             extension = currentProject.getArtifact().getType();
-<a name="1146" href="#1146">1146</a>         }
-<a name="1147" href="#1147">1147</a>         <strong class="jxr_keyword">if</strong> ( StringUtils.isEmpty( extension ) || <span class="jxr_string">"bundle"</span>.equals( extension ) || <span class="jxr_string">"pom"</span>.equals( extension ) )
-<a name="1148" href="#1148">1148</a>         {
-<a name="1149" href="#1149">1149</a>             extension = <span class="jxr_string">"jar"</span>; <em class="jxr_comment">// just in case maven gets confused</em>
-<a name="1150" href="#1150">1150</a>         }
-<a name="1151" href="#1151">1151</a>         <strong class="jxr_keyword">if</strong> ( <strong class="jxr_keyword">null</strong> != classifier &amp;&amp; classifier.trim().length() &gt; 0 )
-<a name="1152" href="#1152">1152</a>         {
-<a name="1153" href="#1153">1153</a>             <strong class="jxr_keyword">return</strong> finalName + '-' + classifier + '.' + extension;
-<a name="1154" href="#1154">1154</a>         }
-<a name="1155" href="#1155">1155</a>         <strong class="jxr_keyword">return</strong> finalName + '.' + extension;
-<a name="1156" href="#1156">1156</a>     }
-<a name="1157" href="#1157">1157</a> 
-<a name="1158" href="#1158">1158</a> 
-<a name="1159" href="#1159">1159</a>     <strong class="jxr_keyword">protected</strong> String getBuildDirectory()
-<a name="1160" href="#1160">1160</a>     {
-<a name="1161" href="#1161">1161</a>         <strong class="jxr_keyword">return</strong> buildDirectory;
-<a name="1162" href="#1162">1162</a>     }
+<a name="1120" href="#1120">1120</a>         Collection selectedDependencies = <strong class="jxr_keyword">new</strong> LinkedHashSet( artifacts );
+<a name="1121" href="#1121">1121</a>         <a href="../../../../org/apache/felix/bundleplugin/DependencyExcluder.html">DependencyExcluder</a> excluder = <strong class="jxr_keyword">new</strong> <a href="../../../../org/apache/felix/bundleplugin/DependencyExcluder.html">DependencyExcluder</a>( artifacts );
+<a name="1122" href="#1122">1122</a>         excluder.processHeaders( excludeDependencies );
+<a name="1123" href="#1123">1123</a>         selectedDependencies.removeAll( excluder.getExcludedArtifacts() );
+<a name="1124" href="#1124">1124</a> 
+<a name="1125" href="#1125">1125</a>         <strong class="jxr_keyword">return</strong> selectedDependencies;
+<a name="1126" href="#1126">1126</a>     }
+<a name="1127" href="#1127">1127</a> 
+<a name="1128" href="#1128">1128</a> 
+<a name="1129" href="#1129">1129</a>     <em class="jxr_javadoccomment">/**</em>
+<a name="1130" href="#1130">1130</a> <em class="jxr_javadoccomment">     * Get the file for an Artifact</em>
+<a name="1131" href="#1131">1131</a> <em class="jxr_javadoccomment">     *</em>
+<a name="1132" href="#1132">1132</a> <em class="jxr_javadoccomment">     * @param artifact</em>
+<a name="1133" href="#1133">1133</a> <em class="jxr_javadoccomment">     */</em>
+<a name="1134" href="#1134">1134</a>     <strong class="jxr_keyword">protected</strong> File getFile( Artifact artifact )
+<a name="1135" href="#1135">1135</a>     {
+<a name="1136" href="#1136">1136</a>         <strong class="jxr_keyword">return</strong> artifact.getFile();
+<a name="1137" href="#1137">1137</a>     }
+<a name="1138" href="#1138">1138</a> 
+<a name="1139" href="#1139">1139</a> 
+<a name="1140" href="#1140">1140</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">void</strong> header( Properties properties, String key, Object value )
+<a name="1141" href="#1141">1141</a>     {
+<a name="1142" href="#1142">1142</a>         <strong class="jxr_keyword">if</strong> ( value == <strong class="jxr_keyword">null</strong> )
+<a name="1143" href="#1143">1143</a>             <strong class="jxr_keyword">return</strong>;
+<a name="1144" href="#1144">1144</a> 
+<a name="1145" href="#1145">1145</a>         <strong class="jxr_keyword">if</strong> ( value instanceof Collection &amp;&amp; ( ( Collection ) value ).isEmpty() )
+<a name="1146" href="#1146">1146</a>             <strong class="jxr_keyword">return</strong>;
+<a name="1147" href="#1147">1147</a> 
+<a name="1148" href="#1148">1148</a>         properties.put( key, value.toString().replaceAll( <span class="jxr_string">"[\r\n]"</span>, <span class="jxr_string">""</span> ) );
+<a name="1149" href="#1149">1149</a>     }
+<a name="1150" href="#1150">1150</a> 
+<a name="1151" href="#1151">1151</a> 
+<a name="1152" href="#1152">1152</a>     <em class="jxr_javadoccomment">/**</em>
+<a name="1153" href="#1153">1153</a> <em class="jxr_javadoccomment">     * Convert a Maven version into an OSGi compliant version</em>
+<a name="1154" href="#1154">1154</a> <em class="jxr_javadoccomment">     *</em>
+<a name="1155" href="#1155">1155</a> <em class="jxr_javadoccomment">     * @param version Maven version</em>
+<a name="1156" href="#1156">1156</a> <em class="jxr_javadoccomment">     * @return the OSGi version</em>
+<a name="1157" href="#1157">1157</a> <em class="jxr_javadoccomment">     */</em>
+<a name="1158" href="#1158">1158</a>     <strong class="jxr_keyword">protected</strong> String convertVersionToOsgi( String version )
+<a name="1159" href="#1159">1159</a>     {
+<a name="1160" href="#1160">1160</a>         <strong class="jxr_keyword">return</strong> getMaven2OsgiConverter().getVersion( version );
+<a name="1161" href="#1161">1161</a>     }
+<a name="1162" href="#1162">1162</a> 
 <a name="1163" href="#1163">1163</a> 
-<a name="1164" href="#1164">1164</a> 
-<a name="1165" href="#1165">1165</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">void</strong> setBuildDirectory( String _buildirectory )
-<a name="1166" href="#1166">1166</a>     {
-<a name="1167" href="#1167">1167</a>         buildDirectory = _buildirectory;
-<a name="1168" href="#1168">1168</a>     }
-<a name="1169" href="#1169">1169</a> 
-<a name="1170" href="#1170">1170</a> 
-<a name="1171" href="#1171">1171</a>     <strong class="jxr_keyword">protected</strong> Properties getDefaultProperties( MavenProject currentProject )
-<a name="1172" href="#1172">1172</a>     {
-<a name="1173" href="#1173">1173</a>         Properties properties = <strong class="jxr_keyword">new</strong> Properties();
-<a name="1174" href="#1174">1174</a> 
-<a name="1175" href="#1175">1175</a>         String bsn;
-<a name="1176" href="#1176">1176</a>         <strong class="jxr_keyword">try</strong>
-<a name="1177" href="#1177">1177</a>         {
-<a name="1178" href="#1178">1178</a>             bsn = getMaven2OsgiConverter().getBundleSymbolicName( currentProject.getArtifact() );
-<a name="1179" href="#1179">1179</a>         }
-<a name="1180" href="#1180">1180</a>         <strong class="jxr_keyword">catch</strong> ( Exception e )
-<a name="1181" href="#1181">1181</a>         {
-<a name="1182" href="#1182">1182</a>             bsn = currentProject.getGroupId() + <span class="jxr_string">"."</span> + currentProject.getArtifactId();
-<a name="1183" href="#1183">1183</a>         }
-<a name="1184" href="#1184">1184</a> 
-<a name="1185" href="#1185">1185</a>         <em class="jxr_comment">// Setup defaults</em>
-<a name="1186" href="#1186">1186</a>         properties.put( MAVEN_SYMBOLICNAME, bsn );
-<a name="1187" href="#1187">1187</a>         properties.put( Analyzer.BUNDLE_SYMBOLICNAME, bsn );
-<a name="1188" href="#1188">1188</a>         properties.put( Analyzer.IMPORT_PACKAGE, <span class="jxr_string">"*"</span> );
-<a name="1189" href="#1189">1189</a>         properties.put( Analyzer.BUNDLE_VERSION, getMaven2OsgiConverter().getVersion( currentProject.getVersion() ) );
-<a name="1190" href="#1190">1190</a> 
-<a name="1191" href="#1191">1191</a>         <em class="jxr_comment">// remove the extraneous Include-Resource and Private-Package entries from generated manifest</em>
-<a name="1192" href="#1192">1192</a>         properties.put( Constants.REMOVEHEADERS, Analyzer.INCLUDE_RESOURCE + ',' + Analyzer.PRIVATE_PACKAGE );
-<a name="1193" href="#1193">1193</a> 
-<a name="1194" href="#1194">1194</a>         header( properties, Analyzer.BUNDLE_DESCRIPTION, currentProject.getDescription() );
-<a name="1195" href="#1195">1195</a>         StringBuffer licenseText = printLicenses( currentProject.getLicenses() );
-<a name="1196" href="#1196">1196</a>         <strong class="jxr_keyword">if</strong> ( licenseText != <strong class="jxr_keyword">null</strong> )
-<a name="1197" href="#1197">1197</a>         {
-<a name="1198" href="#1198">1198</a>             header( properties, Analyzer.BUNDLE_LICENSE, licenseText );
-<a name="1199" href="#1199">1199</a>         }
-<a name="1200" href="#1200">1200</a>         header( properties, Analyzer.BUNDLE_NAME, currentProject.getName() );
+<a name="1164" href="#1164">1164</a>     <em class="jxr_javadoccomment">/**</em>
+<a name="1165" href="#1165">1165</a> <em class="jxr_javadoccomment">     * TODO this should return getMaven2Osgi().getBundleFileName( project.getArtifact() )</em>
+<a name="1166" href="#1166">1166</a> <em class="jxr_javadoccomment">     */</em>
+<a name="1167" href="#1167">1167</a>     <strong class="jxr_keyword">protected</strong> String getBundleName( MavenProject currentProject )
+<a name="1168" href="#1168">1168</a>     {
+<a name="1169" href="#1169">1169</a>         String extension;
+<a name="1170" href="#1170">1170</a>         <strong class="jxr_keyword">try</strong>
+<a name="1171" href="#1171">1171</a>         {
+<a name="1172" href="#1172">1172</a>             extension = currentProject.getArtifact().getArtifactHandler().getExtension();
+<a name="1173" href="#1173">1173</a>         }
+<a name="1174" href="#1174">1174</a>         <strong class="jxr_keyword">catch</strong> ( Throwable e )
+<a name="1175" href="#1175">1175</a>         {
+<a name="1176" href="#1176">1176</a>             extension = currentProject.getArtifact().getType();
+<a name="1177" href="#1177">1177</a>         }
+<a name="1178" href="#1178">1178</a>         <strong class="jxr_keyword">if</strong> ( StringUtils.isEmpty( extension ) || <span class="jxr_string">"bundle"</span>.equals( extension ) || <span class="jxr_string">"pom"</span>.equals( extension ) )
+<a name="1179" href="#1179">1179</a>         {
+<a name="1180" href="#1180">1180</a>             extension = <span class="jxr_string">"jar"</span>; <em class="jxr_comment">// just in case maven gets confused</em>
+<a name="1181" href="#1181">1181</a>         }
+<a name="1182" href="#1182">1182</a>         <strong class="jxr_keyword">if</strong> ( <strong class="jxr_keyword">null</strong> != classifier &amp;&amp; classifier.trim().length() &gt; 0 )
+<a name="1183" href="#1183">1183</a>         {
+<a name="1184" href="#1184">1184</a>             <strong class="jxr_keyword">return</strong> finalName + '-' + classifier + '.' + extension;
+<a name="1185" href="#1185">1185</a>         }
+<a name="1186" href="#1186">1186</a>         <strong class="jxr_keyword">return</strong> finalName + '.' + extension;
+<a name="1187" href="#1187">1187</a>     }
+<a name="1188" href="#1188">1188</a> 
+<a name="1189" href="#1189">1189</a> 
+<a name="1190" href="#1190">1190</a>     <strong class="jxr_keyword">protected</strong> String getBuildDirectory()
+<a name="1191" href="#1191">1191</a>     {
+<a name="1192" href="#1192">1192</a>         <strong class="jxr_keyword">return</strong> buildDirectory;
+<a name="1193" href="#1193">1193</a>     }
+<a name="1194" href="#1194">1194</a> 
+<a name="1195" href="#1195">1195</a> 
+<a name="1196" href="#1196">1196</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">void</strong> setBuildDirectory( String _buildirectory )
+<a name="1197" href="#1197">1197</a>     {
+<a name="1198" href="#1198">1198</a>         buildDirectory = _buildirectory;
+<a name="1199" href="#1199">1199</a>     }
+<a name="1200" href="#1200">1200</a> 
 <a name="1201" href="#1201">1201</a> 
-<a name="1202" href="#1202">1202</a>         <strong class="jxr_keyword">if</strong> ( currentProject.getOrganization() != <strong class="jxr_keyword">null</strong> )
-<a name="1203" href="#1203">1203</a>         {
-<a name="1204" href="#1204">1204</a>             <strong class="jxr_keyword">if</strong> ( currentProject.getOrganization().getName() != <strong class="jxr_keyword">null</strong> )
-<a name="1205" href="#1205">1205</a>             {
-<a name="1206" href="#1206">1206</a>                 String organizationName = currentProject.getOrganization().getName();
-<a name="1207" href="#1207">1207</a>                 header( properties, Analyzer.BUNDLE_VENDOR, organizationName );
-<a name="1208" href="#1208">1208</a>                 properties.put( <span class="jxr_string">"project.organization.name"</span>, organizationName );
-<a name="1209" href="#1209">1209</a>                 properties.put( <span class="jxr_string">"pom.organization.name"</span>, organizationName );
-<a name="1210" href="#1210">1210</a>             }
-<a name="1211" href="#1211">1211</a>             <strong class="jxr_keyword">if</strong> ( currentProject.getOrganization().getUrl() != <strong class="jxr_keyword">null</strong> )
-<a name="1212" href="#1212">1212</a>             {
-<a name="1213" href="#1213">1213</a>                 String organizationUrl = currentProject.getOrganization().getUrl();
-<a name="1214" href="#1214">1214</a>                 header( properties, Analyzer.BUNDLE_DOCURL, organizationUrl );
-<a name="1215" href="#1215">1215</a>                 properties.put( <span class="jxr_string">"project.organization.url"</span>, organizationUrl );
-<a name="1216" href="#1216">1216</a>                 properties.put( <span class="jxr_string">"pom.organization.url"</span>, organizationUrl );
-<a name="1217" href="#1217">1217</a>             }
-<a name="1218" href="#1218">1218</a>         }
-<a name="1219" href="#1219">1219</a> 
-<a name="1220" href="#1220">1220</a>         properties.putAll( currentProject.getProperties() );
-<a name="1221" href="#1221">1221</a>         properties.putAll( currentProject.getModel().getProperties() );
-<a name="1222" href="#1222">1222</a> 
-<a name="1223" href="#1223">1223</a>         <strong class="jxr_keyword">for</strong> ( Iterator i = currentProject.getFilters().iterator(); i.hasNext(); )
-<a name="1224" href="#1224">1224</a>         {
-<a name="1225" href="#1225">1225</a>             File filterFile = <strong class="jxr_keyword">new</strong> File( ( String ) i.next() );
-<a name="1226" href="#1226">1226</a>             <strong class="jxr_keyword">if</strong> ( filterFile.isFile() )
-<a name="1227" href="#1227">1227</a>             {
-<a name="1228" href="#1228">1228</a>                 properties.putAll( PropertyUtils.loadProperties( filterFile ) );
-<a name="1229" href="#1229">1229</a>             }
+<a name="1202" href="#1202">1202</a>     <strong class="jxr_keyword">protected</strong> Properties getDefaultProperties( MavenProject currentProject )
+<a name="1203" href="#1203">1203</a>     {
+<a name="1204" href="#1204">1204</a>         Properties properties = <strong class="jxr_keyword">new</strong> Properties();
+<a name="1205" href="#1205">1205</a> 
+<a name="1206" href="#1206">1206</a>         String bsn;
+<a name="1207" href="#1207">1207</a>         <strong class="jxr_keyword">try</strong>
+<a name="1208" href="#1208">1208</a>         {
+<a name="1209" href="#1209">1209</a>             bsn = getMaven2OsgiConverter().getBundleSymbolicName( currentProject.getArtifact() );
+<a name="1210" href="#1210">1210</a>         }
+<a name="1211" href="#1211">1211</a>         <strong class="jxr_keyword">catch</strong> ( Exception e )
+<a name="1212" href="#1212">1212</a>         {
+<a name="1213" href="#1213">1213</a>             bsn = currentProject.getGroupId() + <span class="jxr_string">"."</span> + currentProject.getArtifactId();
+<a name="1214" href="#1214">1214</a>         }
+<a name="1215" href="#1215">1215</a> 
+<a name="1216" href="#1216">1216</a>         <em class="jxr_comment">// Setup defaults</em>
+<a name="1217" href="#1217">1217</a>         properties.put( MAVEN_SYMBOLICNAME, bsn );
+<a name="1218" href="#1218">1218</a>         properties.put( Analyzer.BUNDLE_SYMBOLICNAME, bsn );
+<a name="1219" href="#1219">1219</a>         properties.put( Analyzer.IMPORT_PACKAGE, <span class="jxr_string">"*"</span> );
+<a name="1220" href="#1220">1220</a>         properties.put( Analyzer.BUNDLE_VERSION, getMaven2OsgiConverter().getVersion( currentProject.getVersion() ) );
+<a name="1221" href="#1221">1221</a> 
+<a name="1222" href="#1222">1222</a>         <em class="jxr_comment">// remove the extraneous Include-Resource and Private-Package entries from generated manifest</em>
+<a name="1223" href="#1223">1223</a>         properties.put( Constants.REMOVEHEADERS, Analyzer.INCLUDE_RESOURCE + ',' + Analyzer.PRIVATE_PACKAGE );
+<a name="1224" href="#1224">1224</a> 
+<a name="1225" href="#1225">1225</a>         header( properties, Analyzer.BUNDLE_DESCRIPTION, currentProject.getDescription() );
+<a name="1226" href="#1226">1226</a>         StringBuffer licenseText = printLicenses( currentProject.getLicenses() );
+<a name="1227" href="#1227">1227</a>         <strong class="jxr_keyword">if</strong> ( licenseText != <strong class="jxr_keyword">null</strong> )
+<a name="1228" href="#1228">1228</a>         {
+<a name="1229" href="#1229">1229</a>             header( properties, Analyzer.BUNDLE_LICENSE, licenseText );
 <a name="1230" href="#1230">1230</a>         }
-<a name="1231" href="#1231">1231</a> 
-<a name="1232" href="#1232">1232</a>         <strong class="jxr_keyword">if</strong> ( m_mavenSession != <strong class="jxr_keyword">null</strong> )
-<a name="1233" href="#1233">1233</a>         {
-<a name="1234" href="#1234">1234</a>             <strong class="jxr_keyword">try</strong>
-<a name="1235" href="#1235">1235</a>             {
-<a name="1236" href="#1236">1236</a>                 <em class="jxr_comment">// don't pass upper-case session settings to bnd as they end up in the manifest</em>
-<a name="1237" href="#1237">1237</a>                 Properties sessionProperties = m_mavenSession.getExecutionProperties();
-<a name="1238" href="#1238">1238</a>                 <strong class="jxr_keyword">for</strong> ( Enumeration e = sessionProperties.propertyNames(); e.hasMoreElements(); )
-<a name="1239" href="#1239">1239</a>                 {
-<a name="1240" href="#1240">1240</a>                     String key = ( String ) e.nextElement();
-<a name="1241" href="#1241">1241</a>                     <strong class="jxr_keyword">if</strong> ( key.length() &gt; 0 &amp;&amp; !Character.isUpperCase( key.charAt( 0 ) ) )
-<a name="1242" href="#1242">1242</a>                     {
-<a name="1243" href="#1243">1243</a>                         properties.put( key, sessionProperties.getProperty( key ) );
-<a name="1244" href="#1244">1244</a>                     }
-<a name="1245" href="#1245">1245</a>                 }
-<a name="1246" href="#1246">1246</a>             }
-<a name="1247" href="#1247">1247</a>             <strong class="jxr_keyword">catch</strong> ( Exception e )
-<a name="1248" href="#1248">1248</a>             {
-<a name="1249" href="#1249">1249</a>                 getLog().warn( <span class="jxr_string">"Problem with Maven session properties: "</span> + e.getLocalizedMessage() );
-<a name="1250" href="#1250">1250</a>             }
-<a name="1251" href="#1251">1251</a>         }
-<a name="1252" href="#1252">1252</a> 
-<a name="1253" href="#1253">1253</a>         properties.putAll( getProperties( currentProject.getModel(), <span class="jxr_string">"project.build."</span> ) );
-<a name="1254" href="#1254">1254</a>         properties.putAll( getProperties( currentProject.getModel(), <span class="jxr_string">"pom."</span> ) );
-<a name="1255" href="#1255">1255</a>         properties.putAll( getProperties( currentProject.getModel(), <span class="jxr_string">"project."</span> ) );
-<a name="1256" href="#1256">1256</a> 
-<a name="1257" href="#1257">1257</a>         properties.put( <span class="jxr_string">"project.baseDir"</span>, getBase( currentProject ) );
-<a name="1258" href="#1258">1258</a>         properties.put( <span class="jxr_string">"project.build.directory"</span>, getBuildDirectory() );
-<a name="1259" href="#1259">1259</a>         properties.put( <span class="jxr_string">"project.build.outputdirectory"</span>, getOutputDirectory() );
-<a name="1260" href="#1260">1260</a> 
-<a name="1261" href="#1261">1261</a>         properties.put( <span class="jxr_string">"classifier"</span>, classifier == <strong class="jxr_keyword">null</strong> ? <span class="jxr_string">""</span> : classifier );
+<a name="1231" href="#1231">1231</a>         header( properties, Analyzer.BUNDLE_NAME, currentProject.getName() );
+<a name="1232" href="#1232">1232</a> 
+<a name="1233" href="#1233">1233</a>         <strong class="jxr_keyword">if</strong> ( currentProject.getOrganization() != <strong class="jxr_keyword">null</strong> )
+<a name="1234" href="#1234">1234</a>         {
+<a name="1235" href="#1235">1235</a>             <strong class="jxr_keyword">if</strong> ( currentProject.getOrganization().getName() != <strong class="jxr_keyword">null</strong> )
+<a name="1236" href="#1236">1236</a>             {
+<a name="1237" href="#1237">1237</a>                 String organizationName = currentProject.getOrganization().getName();
+<a name="1238" href="#1238">1238</a>                 header( properties, Analyzer.BUNDLE_VENDOR, organizationName );
+<a name="1239" href="#1239">1239</a>                 properties.put( <span class="jxr_string">"project.organization.name"</span>, organizationName );
+<a name="1240" href="#1240">1240</a>                 properties.put( <span class="jxr_string">"pom.organization.name"</span>, organizationName );
+<a name="1241" href="#1241">1241</a>             }
+<a name="1242" href="#1242">1242</a>             <strong class="jxr_keyword">if</strong> ( currentProject.getOrganization().getUrl() != <strong class="jxr_keyword">null</strong> )
+<a name="1243" href="#1243">1243</a>             {
+<a name="1244" href="#1244">1244</a>                 String organizationUrl = currentProject.getOrganization().getUrl();
+<a name="1245" href="#1245">1245</a>                 header( properties, Analyzer.BUNDLE_DOCURL, organizationUrl );
+<a name="1246" href="#1246">1246</a>                 properties.put( <span class="jxr_string">"project.organization.url"</span>, organizationUrl );
+<a name="1247" href="#1247">1247</a>                 properties.put( <span class="jxr_string">"pom.organization.url"</span>, organizationUrl );
+<a name="1248" href="#1248">1248</a>             }
+<a name="1249" href="#1249">1249</a>         }
+<a name="1250" href="#1250">1250</a> 
+<a name="1251" href="#1251">1251</a>         properties.putAll( currentProject.getProperties() );
+<a name="1252" href="#1252">1252</a>         properties.putAll( currentProject.getModel().getProperties() );
+<a name="1253" href="#1253">1253</a> 
+<a name="1254" href="#1254">1254</a>         <strong class="jxr_keyword">for</strong> ( Iterator i = currentProject.getFilters().iterator(); i.hasNext(); )
+<a name="1255" href="#1255">1255</a>         {
+<a name="1256" href="#1256">1256</a>             File filterFile = <strong class="jxr_keyword">new</strong> File( ( String ) i.next() );
+<a name="1257" href="#1257">1257</a>             <strong class="jxr_keyword">if</strong> ( filterFile.isFile() )
+<a name="1258" href="#1258">1258</a>             {
+<a name="1259" href="#1259">1259</a>                 properties.putAll( PropertyUtils.loadProperties( filterFile ) );
+<a name="1260" href="#1260">1260</a>             }
+<a name="1261" href="#1261">1261</a>         }
 <a name="1262" href="#1262">1262</a> 
-<a name="1263" href="#1263">1263</a>         <em class="jxr_comment">// Add default plugins</em>
-<a name="1264" href="#1264">1264</a>         header( properties, Analyzer.PLUGIN, BlueprintPlugin.<strong class="jxr_keyword">class</strong>.getName() + <span class="jxr_string">","</span> + SpringXMLType.<strong class="jxr_keyword">class</strong>.getName() );
-<a name="1265" href="#1265">1265</a> 
-<a name="1266" href="#1266">1266</a>         <strong class="jxr_keyword">return</strong> properties;
-<a name="1267" href="#1267">1267</a>     }
-<a name="1268" href="#1268">1268</a> 
-<a name="1269" href="#1269">1269</a> 
-<a name="1270" href="#1270">1270</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">static</strong> File getBase( MavenProject currentProject )
-<a name="1271" href="#1271">1271</a>     {
-<a name="1272" href="#1272">1272</a>         <strong class="jxr_keyword">return</strong> currentProject.getBasedir() != <strong class="jxr_keyword">null</strong> ? currentProject.getBasedir() : <strong class="jxr_keyword">new</strong> File( <span class="jxr_string">""</span> );
-<a name="1273" href="#1273">1273</a>     }
-<a name="1274" href="#1274">1274</a> 
-<a name="1275" href="#1275">1275</a> 
-<a name="1276" href="#1276">1276</a>     <strong class="jxr_keyword">protected</strong> File getOutputDirectory()
-<a name="1277" href="#1277">1277</a>     {
-<a name="1278" href="#1278">1278</a>         <strong class="jxr_keyword">return</strong> outputDirectory;
-<a name="1279" href="#1279">1279</a>     }
-<a name="1280" href="#1280">1280</a> 
-<a name="1281" href="#1281">1281</a> 
-<a name="1282" href="#1282">1282</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">void</strong> setOutputDirectory( File _outputDirectory )
-<a name="1283" href="#1283">1283</a>     {
-<a name="1284" href="#1284">1284</a>         outputDirectory = _outputDirectory;
-<a name="1285" href="#1285">1285</a>     }
-<a name="1286" href="#1286">1286</a> 
+<a name="1263" href="#1263">1263</a>         <strong class="jxr_keyword">if</strong> ( m_mavenSession != <strong class="jxr_keyword">null</strong> )
+<a name="1264" href="#1264">1264</a>         {
+<a name="1265" href="#1265">1265</a>             <strong class="jxr_keyword">try</strong>
+<a name="1266" href="#1266">1266</a>             {
+<a name="1267" href="#1267">1267</a>                 <em class="jxr_comment">// don't pass upper-case session settings to bnd as they end up in the manifest</em>
+<a name="1268" href="#1268">1268</a>                 Properties sessionProperties = m_mavenSession.getExecutionProperties();
+<a name="1269" href="#1269">1269</a>                 <strong class="jxr_keyword">for</strong> ( Enumeration e = sessionProperties.propertyNames(); e.hasMoreElements(); )
+<a name="1270" href="#1270">1270</a>                 {
+<a name="1271" href="#1271">1271</a>                     String key = ( String ) e.nextElement();
+<a name="1272" href="#1272">1272</a>                     <strong class="jxr_keyword">if</strong> ( key.length() &gt; 0 &amp;&amp; !Character.isUpperCase( key.charAt( 0 ) ) )
+<a name="1273" href="#1273">1273</a>                     {
+<a name="1274" href="#1274">1274</a>                         properties.put( key, sessionProperties.getProperty( key ) );
+<a name="1275" href="#1275">1275</a>                     }
+<a name="1276" href="#1276">1276</a>                 }
+<a name="1277" href="#1277">1277</a>             }
+<a name="1278" href="#1278">1278</a>             <strong class="jxr_keyword">catch</strong> ( Exception e )
+<a name="1279" href="#1279">1279</a>             {
+<a name="1280" href="#1280">1280</a>                 getLog().warn( <span class="jxr_string">"Problem with Maven session properties: "</span> + e.getLocalizedMessage() );
+<a name="1281" href="#1281">1281</a>             }
+<a name="1282" href="#1282">1282</a>         }
+<a name="1283" href="#1283">1283</a> 
+<a name="1284" href="#1284">1284</a>         properties.putAll( getProperties( currentProject.getModel(), <span class="jxr_string">"project.build."</span> ) );
+<a name="1285" href="#1285">1285</a>         properties.putAll( getProperties( currentProject.getModel(), <span class="jxr_string">"pom."</span> ) );
+<a name="1286" href="#1286">1286</a>         properties.putAll( getProperties( currentProject.getModel(), <span class="jxr_string">"project."</span> ) );
 <a name="1287" href="#1287">1287</a> 
-<a name="1288" href="#1288">1288</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">void</strong> addLocalPackages( File outputDirectory, Analyzer analyzer ) <strong class="jxr_keyword">throws</strong> IOException
-<a name="1289" href="#1289">1289</a>     {
-<a name="1290" href="#1290">1290</a>         Packages packages = <strong class="jxr_keyword">new</strong> Packages();
+<a name="1288" href="#1288">1288</a>         properties.put( <span class="jxr_string">"project.baseDir"</span>, getBase( currentProject ) );
+<a name="1289" href="#1289">1289</a>         properties.put( <span class="jxr_string">"project.build.directory"</span>, getBuildDirectory() );
+<a name="1290" href="#1290">1290</a>         properties.put( <span class="jxr_string">"project.build.outputdirectory"</span>, getOutputDirectory() );
 <a name="1291" href="#1291">1291</a> 
-<a name="1292" href="#1292">1292</a>         <strong class="jxr_keyword">if</strong> ( outputDirectory != <strong class="jxr_keyword">null</strong> &amp;&amp; outputDirectory.isDirectory() )
-<a name="1293" href="#1293">1293</a>         {
-<a name="1294" href="#1294">1294</a>             <em class="jxr_comment">// scan classes directory for potential packages</em>
-<a name="1295" href="#1295">1295</a>             DirectoryScanner scanner = <strong class="jxr_keyword">new</strong> DirectoryScanner();
-<a name="1296" href="#1296">1296</a>             scanner.setBasedir( outputDirectory );
-<a name="1297" href="#1297">1297</a>             scanner.setIncludes( <strong class="jxr_keyword">new</strong> String[]
-<a name="1298" href="#1298">1298</a>                 { <span class="jxr_string">"**/*.class"</span> } );
-<a name="1299" href="#1299">1299</a> 
-<a name="1300" href="#1300">1300</a>             scanner.addDefaultExcludes();
-<a name="1301" href="#1301">1301</a>             scanner.scan();
+<a name="1292" href="#1292">1292</a>         properties.put( <span class="jxr_string">"classifier"</span>, classifier == <strong class="jxr_keyword">null</strong> ? <span class="jxr_string">""</span> : classifier );
+<a name="1293" href="#1293">1293</a> 
+<a name="1294" href="#1294">1294</a>         <em class="jxr_comment">// Add default plugins</em>
+<a name="1295" href="#1295">1295</a>         header( properties, Analyzer.PLUGIN, ScrPlugin.<strong class="jxr_keyword">class</strong>.getName() + <span class="jxr_string">","</span>
+<a name="1296" href="#1296">1296</a>                                            + BlueprintPlugin.<strong class="jxr_keyword">class</strong>.getName() + <span class="jxr_string">","</span>
+<a name="1297" href="#1297">1297</a>                                            + SpringXMLType.<strong class="jxr_keyword">class</strong>.getName() );
+<a name="1298" href="#1298">1298</a> 
+<a name="1299" href="#1299">1299</a>         <strong class="jxr_keyword">return</strong> properties;
+<a name="1300" href="#1300">1300</a>     }
+<a name="1301" href="#1301">1301</a> 
 <a name="1302" href="#1302">1302</a> 
-<a name="1303" href="#1303">1303</a>             String[] paths = scanner.getIncludedFiles();
-<a name="1304" href="#1304">1304</a>             <strong class="jxr_keyword">for</strong> ( <strong class="jxr_keyword">int</strong> i = 0; i &lt; paths.length; i++ )
-<a name="1305" href="#1305">1305</a>             {
-<a name="1306" href="#1306">1306</a>                 packages.put( analyzer.getPackageRef( getPackageName( paths[i] ) ) );
-<a name="1307" href="#1307">1307</a>             }
-<a name="1308" href="#1308">1308</a>         }
-<a name="1309" href="#1309">1309</a> 
-<a name="1310" href="#1310">1310</a>         Packages exportedPkgs = <strong class="jxr_keyword">new</strong> Packages();
-<a name="1311" href="#1311">1311</a>         Packages privatePkgs = <strong class="jxr_keyword">new</strong> Packages();
-<a name="1312" href="#1312">1312</a> 
-<a name="1313" href="#1313">1313</a>         <strong class="jxr_keyword">boolean</strong> noprivatePackages = <span class="jxr_string">"!*"</span>.equals( analyzer.getProperty( Analyzer.PRIVATE_PACKAGE ) );
+<a name="1303" href="#1303">1303</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">static</strong> File getBase( MavenProject currentProject )
+<a name="1304" href="#1304">1304</a>     {
+<a name="1305" href="#1305">1305</a>         <strong class="jxr_keyword">return</strong> currentProject.getBasedir() != <strong class="jxr_keyword">null</strong> ? currentProject.getBasedir() : <strong class="jxr_keyword">new</strong> File( <span class="jxr_string">""</span> );
+<a name="1306" href="#1306">1306</a>     }
+<a name="1307" href="#1307">1307</a> 
+<a name="1308" href="#1308">1308</a> 
+<a name="1309" href="#1309">1309</a>     <strong class="jxr_keyword">protected</strong> File getOutputDirectory()
+<a name="1310" href="#1310">1310</a>     {
+<a name="1311" href="#1311">1311</a>         <strong class="jxr_keyword">return</strong> outputDirectory;
+<a name="1312" href="#1312">1312</a>     }
+<a name="1313" href="#1313">1313</a> 
 <a name="1314" href="#1314">1314</a> 
-<a name="1315" href="#1315">1315</a>         <strong class="jxr_keyword">for</strong> ( PackageRef pkg : packages.keySet() )
-<a name="1316" href="#1316">1316</a>         {
-<a name="1317" href="#1317">1317</a>             <em class="jxr_comment">// mark all source packages as private by default (can be overridden by export list)</em>
-<a name="1318" href="#1318">1318</a>             privatePkgs.put( pkg );
+<a name="1315" href="#1315">1315</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">void</strong> setOutputDirectory( File _outputDirectory )
+<a name="1316" href="#1316">1316</a>     {
+<a name="1317" href="#1317">1317</a>         outputDirectory = _outputDirectory;
+<a name="1318" href="#1318">1318</a>     }
 <a name="1319" href="#1319">1319</a> 
-<a name="1320" href="#1320">1320</a>             <em class="jxr_comment">// we can't export the default package (".") and we shouldn't export internal packages </em>
-<a name="1321" href="#1321">1321</a>             String fqn = pkg.getFQN();
-<a name="1322" href="#1322">1322</a>             <strong class="jxr_keyword">if</strong> ( noprivatePackages || !( <span class="jxr_string">"."</span>.equals( fqn ) || fqn.contains( <span class="jxr_string">".internal"</span> ) || fqn.contains( <span class="jxr_string">".impl"</span> ) ) )
-<a name="1323" href="#1323">1323</a>             {
-<a name="1324" href="#1324">1324</a>                 exportedPkgs.put( pkg );
-<a name="1325" href="#1325">1325</a>             }
-<a name="1326" href="#1326">1326</a>         }
-<a name="1327" href="#1327">1327</a> 
-<a name="1328" href="#1328">1328</a>         Properties properties = analyzer.getProperties();
-<a name="1329" href="#1329">1329</a>         String exported = properties.getProperty( Analyzer.EXPORT_PACKAGE );
-<a name="1330" href="#1330">1330</a>         <strong class="jxr_keyword">if</strong> ( exported == <strong class="jxr_keyword">null</strong> )
-<a name="1331" href="#1331">1331</a>         {
-<a name="1332" href="#1332">1332</a>             <strong class="jxr_keyword">if</strong> ( !properties.containsKey( Analyzer.EXPORT_CONTENTS ) )
-<a name="1333" href="#1333">1333</a>             {
-<a name="1334" href="#1334">1334</a>                 <em class="jxr_comment">// no -exportcontents overriding the exports, so use our computed list</em>
-<a name="1335" href="#1335">1335</a>                 <strong class="jxr_keyword">for</strong> ( Attrs attrs : exportedPkgs.values() )
-<a name="1336" href="#1336">1336</a>                 {
-<a name="1337" href="#1337">1337</a>                     attrs.put( Constants.SPLIT_PACKAGE_DIRECTIVE, <span class="jxr_string">"merge-first"</span> );
-<a name="1338" href="#1338">1338</a>                 }
-<a name="1339" href="#1339">1339</a>                 properties.setProperty( Analyzer.EXPORT_PACKAGE, Processor.printClauses( exportedPkgs ) );
+<a name="1320" href="#1320">1320</a> 
+<a name="1321" href="#1321">1321</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">void</strong> addLocalPackages( File outputDirectory, Analyzer analyzer ) <strong class="jxr_keyword">throws</strong> IOException
+<a name="1322" href="#1322">1322</a>     {
+<a name="1323" href="#1323">1323</a>         Packages packages = <strong class="jxr_keyword">new</strong> Packages();
+<a name="1324" href="#1324">1324</a> 
+<a name="1325" href="#1325">1325</a>         <strong class="jxr_keyword">if</strong> ( outputDirectory != <strong class="jxr_keyword">null</strong> &amp;&amp; outputDirectory.isDirectory() )
+<a name="1326" href="#1326">1326</a>         {
+<a name="1327" href="#1327">1327</a>             <em class="jxr_comment">// scan classes directory for potential packages</em>
+<a name="1328" href="#1328">1328</a>             DirectoryScanner scanner = <strong class="jxr_keyword">new</strong> DirectoryScanner();
+<a name="1329" href="#1329">1329</a>             scanner.setBasedir( outputDirectory );
+<a name="1330" href="#1330">1330</a>             scanner.setIncludes( <strong class="jxr_keyword">new</strong> String[]
+<a name="1331" href="#1331">1331</a>                 { <span class="jxr_string">"**/*.class"</span> } );
+<a name="1332" href="#1332">1332</a> 
+<a name="1333" href="#1333">1333</a>             scanner.addDefaultExcludes();
+<a name="1334" href="#1334">1334</a>             scanner.scan();
+<a name="1335" href="#1335">1335</a> 
+<a name="1336" href="#1336">1336</a>             String[] paths = scanner.getIncludedFiles();
+<a name="1337" href="#1337">1337</a>             <strong class="jxr_keyword">for</strong> ( <strong class="jxr_keyword">int</strong> i = 0; i &lt; paths.length; i++ )
+<a name="1338" href="#1338">1338</a>             {
+<a name="1339" href="#1339">1339</a>                 packages.put( analyzer.getPackageRef( getPackageName( paths[i] ) ) );
 <a name="1340" href="#1340">1340</a>             }
-<a name="1341" href="#1341">1341</a>             <strong class="jxr_keyword">else</strong>
-<a name="1342" href="#1342">1342</a>             {
-<a name="1343" href="#1343">1343</a>                 <em class="jxr_comment">// leave Export-Package empty (but non-null) as we have -exportcontents</em>
-<a name="1344" href="#1344">1344</a>                 properties.setProperty( Analyzer.EXPORT_PACKAGE, <span class="jxr_string">""</span> );
-<a name="1345" href="#1345">1345</a>             }
-<a name="1346" href="#1346">1346</a>         }
-<a name="1347" href="#1347">1347</a>         <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> ( exported.indexOf( LOCAL_PACKAGES ) &gt;= 0 )
-<a name="1348" href="#1348">1348</a>         {
-<a name="1349" href="#1349">1349</a>             String newExported = StringUtils.replace( exported, LOCAL_PACKAGES, Processor.printClauses( exportedPkgs ) );
-<a name="1350" href="#1350">1350</a>             properties.setProperty( Analyzer.EXPORT_PACKAGE, newExported );
-<a name="1351" href="#1351">1351</a>         }
+<a name="1341" href="#1341">1341</a>         }
+<a name="1342" href="#1342">1342</a> 
+<a name="1343" href="#1343">1343</a>         Packages exportedPkgs = <strong class="jxr_keyword">new</strong> Packages();
+<a name="1344" href="#1344">1344</a>         Packages privatePkgs = <strong class="jxr_keyword">new</strong> Packages();
+<a name="1345" href="#1345">1345</a> 
+<a name="1346" href="#1346">1346</a>         <strong class="jxr_keyword">boolean</strong> noprivatePackages = <span class="jxr_string">"!*"</span>.equals( analyzer.getProperty( Analyzer.PRIVATE_PACKAGE ) );
+<a name="1347" href="#1347">1347</a> 
+<a name="1348" href="#1348">1348</a>         <strong class="jxr_keyword">for</strong> ( PackageRef pkg : packages.keySet() )
+<a name="1349" href="#1349">1349</a>         {
+<a name="1350" href="#1350">1350</a>             <em class="jxr_comment">// mark all source packages as private by default (can be overridden by export list)</em>
+<a name="1351" href="#1351">1351</a>             privatePkgs.put( pkg );
 <a name="1352" href="#1352">1352</a> 
-<a name="1353" href="#1353">1353</a>         String internal = properties.getProperty( Analyzer.PRIVATE_PACKAGE );
-<a name="1354" href="#1354">1354</a>         <strong class="jxr_keyword">if</strong> ( internal == <strong class="jxr_keyword">null</strong> )
-<a name="1355" href="#1355">1355</a>         {
-<a name="1356" href="#1356">1356</a>             <strong class="jxr_keyword">if</strong> ( !privatePkgs.isEmpty() )
-<a name="1357" href="#1357">1357</a>             {
-<a name="1358" href="#1358">1358</a>                 <strong class="jxr_keyword">for</strong> ( Attrs attrs : privatePkgs.values() )
-<a name="1359" href="#1359">1359</a>                 {
-<a name="1360" href="#1360">1360</a>                     attrs.put( Constants.SPLIT_PACKAGE_DIRECTIVE, <span class="jxr_string">"merge-first"</span> );
-<a name="1361" href="#1361">1361</a>                 }
-<a name="1362" href="#1362">1362</a>                 properties.setProperty( Analyzer.PRIVATE_PACKAGE, Processor.printClauses( privatePkgs ) );
-<a name="1363" href="#1363">1363</a>             }
-<a name="1364" href="#1364">1364</a>             <strong class="jxr_keyword">else</strong>
-<a name="1365" href="#1365">1365</a>             {
-<a name="1366" href="#1366">1366</a>                 <em class="jxr_comment">// if there are really no private packages then use "!*" as this will keep the Bnd Tool happy</em>
-<a name="1367" href="#1367">1367</a>                 properties.setProperty( Analyzer.PRIVATE_PACKAGE, <span class="jxr_string">"!*"</span> );
-<a name="1368" href="#1368">1368</a>             }
-<a name="1369" href="#1369">1369</a>         }
-<a name="1370" href="#1370">1370</a>         <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> ( internal.indexOf( LOCAL_PACKAGES ) &gt;= 0 )
-<a name="1371" href="#1371">1371</a>         {
-<a name="1372" href="#1372">1372</a>             String newInternal = StringUtils.replace( internal, LOCAL_PACKAGES, Processor.printClauses( privatePkgs ) );
-<a name="1373" href="#1373">1373</a>             properties.setProperty( Analyzer.PRIVATE_PACKAGE, newInternal );
-<a name="1374" href="#1374">1374</a>         }
-<a name="1375" href="#1375">1375</a>     }
-<a name="1376" href="#1376">1376</a> 
-<a name="1377" href="#1377">1377</a> 
-<a name="1378" href="#1378">1378</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> String getPackageName( String filename )
-<a name="1379" href="#1379">1379</a>     {
-<a name="1380" href="#1380">1380</a>         <strong class="jxr_keyword">int</strong> n = filename.lastIndexOf( File.separatorChar );
-<a name="1381" href="#1381">1381</a>         <strong class="jxr_keyword">return</strong> n &lt; 0 ? <span class="jxr_string">"."</span> : filename.substring( 0, n ).replace( File.separatorChar, '.' );
-<a name="1382" href="#1382">1382</a>     }
-<a name="1383" href="#1383">1383</a> 
-<a name="1384" href="#1384">1384</a> 
-<a name="1385" href="#1385">1385</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> List getMavenResources( MavenProject currentProject )
-<a name="1386" href="#1386">1386</a>     {
-<a name="1387" href="#1387">1387</a>         List resources = <strong class="jxr_keyword">new</strong> ArrayList( currentProject.getResources() );
-<a name="1388" href="#1388">1388</a> 
-<a name="1389" href="#1389">1389</a>         <strong class="jxr_keyword">if</strong> ( currentProject.getCompileSourceRoots() != <strong class="jxr_keyword">null</strong> )
-<a name="1390" href="#1390">1390</a>         {
-<a name="1391" href="#1391">1391</a>             <em class="jxr_comment">// also scan for any "packageinfo" files lurking in the source folders</em>
-<a name="1392" href="#1392">1392</a>             List packageInfoIncludes = Collections.singletonList( <span class="jxr_string">"**/packageinfo"</span> );
-<a name="1393" href="#1393">1393</a>             <strong class="jxr_keyword">for</strong> ( Iterator i = currentProject.getCompileSourceRoots().iterator(); i.hasNext(); )
-<a name="1394" href="#1394">1394</a>             {
-<a name="1395" href="#1395">1395</a>                 String sourceRoot = ( String ) i.next();
-<a name="1396" href="#1396">1396</a>                 Resource packageInfoResource = <strong class="jxr_keyword">new</strong> Resource();
-<a name="1397" href="#1397">1397</a>                 packageInfoResource.setDirectory( sourceRoot );
-<a name="1398" href="#1398">1398</a>                 packageInfoResource.setIncludes( packageInfoIncludes );
-<a name="1399" href="#1399">1399</a>                 resources.add( packageInfoResource );
-<a name="1400" href="#1400">1400</a>             }
-<a name="1401" href="#1401">1401</a>         }
-<a name="1402" href="#1402">1402</a> 
-<a name="1403" href="#1403">1403</a>         <strong class="jxr_keyword">return</strong> resources;
-<a name="1404" href="#1404">1404</a>     }
-<a name="1405" href="#1405">1405</a> 
-<a name="1406" href="#1406">1406</a> 
-<a name="1407" href="#1407">1407</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">static</strong> String getMavenResourcePaths( MavenProject currentProject )
-<a name="1408" href="#1408">1408</a>     {
-<a name="1409" href="#1409">1409</a>         <strong class="jxr_keyword">final</strong> String basePath = currentProject.getBasedir().getAbsolutePath();
+<a name="1353" href="#1353">1353</a>             <em class="jxr_comment">// we can't export the default package (".") and we shouldn't export internal packages </em>
+<a name="1354" href="#1354">1354</a>             String fqn = pkg.getFQN();
+<a name="1355" href="#1355">1355</a>             <strong class="jxr_keyword">if</strong> ( noprivatePackages || !( <span class="jxr_string">"."</span>.equals( fqn ) || fqn.contains( <span class="jxr_string">".internal"</span> ) || fqn.contains( <span class="jxr_string">".impl"</span> ) ) )
+<a name="1356" href="#1356">1356</a>             {
+<a name="1357" href="#1357">1357</a>                 exportedPkgs.put( pkg );
+<a name="1358" href="#1358">1358</a>             }
+<a name="1359" href="#1359">1359</a>         }
+<a name="1360" href="#1360">1360</a> 
+<a name="1361" href="#1361">1361</a>         Properties properties = analyzer.getProperties();
+<a name="1362" href="#1362">1362</a>         String exported = properties.getProperty( Analyzer.EXPORT_PACKAGE );
+<a name="1363" href="#1363">1363</a>         <strong class="jxr_keyword">if</strong> ( exported == <strong class="jxr_keyword">null</strong> )
+<a name="1364" href="#1364">1364</a>         {
+<a name="1365" href="#1365">1365</a>             <strong class="jxr_keyword">if</strong> ( !properties.containsKey( Analyzer.EXPORT_CONTENTS ) )
+<a name="1366" href="#1366">1366</a>             {
+<a name="1367" href="#1367">1367</a>                 <em class="jxr_comment">// no -exportcontents overriding the exports, so use our computed list</em>
+<a name="1368" href="#1368">1368</a>                 <strong class="jxr_keyword">for</strong> ( Attrs attrs : exportedPkgs.values() )
+<a name="1369" href="#1369">1369</a>                 {
+<a name="1370" href="#1370">1370</a>                     attrs.put( Constants.SPLIT_PACKAGE_DIRECTIVE, <span class="jxr_string">"merge-first"</span> );
+<a name="1371" href="#1371">1371</a>                 }
+<a name="1372" href="#1372">1372</a>                 properties.setProperty( Analyzer.EXPORT_PACKAGE, Processor.printClauses( exportedPkgs ) );
+<a name="1373" href="#1373">1373</a>             }
+<a name="1374" href="#1374">1374</a>             <strong class="jxr_keyword">else</strong>
+<a name="1375" href="#1375">1375</a>             {
+<a name="1376" href="#1376">1376</a>                 <em class="jxr_comment">// leave Export-Package empty (but non-null) as we have -exportcontents</em>
+<a name="1377" href="#1377">1377</a>                 properties.setProperty( Analyzer.EXPORT_PACKAGE, <span class="jxr_string">""</span> );
+<a name="1378" href="#1378">1378</a>             }
+<a name="1379" href="#1379">1379</a>         }
+<a name="1380" href="#1380">1380</a>         <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> ( exported.indexOf( LOCAL_PACKAGES ) &gt;= 0 )
+<a name="1381" href="#1381">1381</a>         {
+<a name="1382" href="#1382">1382</a>             String newExported = StringUtils.replace( exported, LOCAL_PACKAGES, Processor.printClauses( exportedPkgs ) );
+<a name="1383" href="#1383">1383</a>             properties.setProperty( Analyzer.EXPORT_PACKAGE, newExported );
+<a name="1384" href="#1384">1384</a>         }
+<a name="1385" href="#1385">1385</a> 
+<a name="1386" href="#1386">1386</a>         String internal = properties.getProperty( Analyzer.PRIVATE_PACKAGE );
+<a name="1387" href="#1387">1387</a>         <strong class="jxr_keyword">if</strong> ( internal == <strong class="jxr_keyword">null</strong> )
+<a name="1388" href="#1388">1388</a>         {
+<a name="1389" href="#1389">1389</a>             <strong class="jxr_keyword">if</strong> ( !privatePkgs.isEmpty() )
+<a name="1390" href="#1390">1390</a>             {
+<a name="1391" href="#1391">1391</a>                 <strong class="jxr_keyword">for</strong> ( Attrs attrs : privatePkgs.values() )
+<a name="1392" href="#1392">1392</a>                 {
+<a name="1393" href="#1393">1393</a>                     attrs.put( Constants.SPLIT_PACKAGE_DIRECTIVE, <span class="jxr_string">"merge-first"</span> );
+<a name="1394" href="#1394">1394</a>                 }
+<a name="1395" href="#1395">1395</a>                 properties.setProperty( Analyzer.PRIVATE_PACKAGE, Processor.printClauses( privatePkgs ) );
+<a name="1396" href="#1396">1396</a>             }
+<a name="1397" href="#1397">1397</a>             <strong class="jxr_keyword">else</strong>
+<a name="1398" href="#1398">1398</a>             {
+<a name="1399" href="#1399">1399</a>                 <em class="jxr_comment">// if there are really no private packages then use "!*" as this will keep the Bnd Tool happy</em>
+<a name="1400" href="#1400">1400</a>                 properties.setProperty( Analyzer.PRIVATE_PACKAGE, <span class="jxr_string">"!*"</span> );
+<a name="1401" href="#1401">1401</a>             }
+<a name="1402" href="#1402">1402</a>         }
+<a name="1403" href="#1403">1403</a>         <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> ( internal.indexOf( LOCAL_PACKAGES ) &gt;= 0 )
+<a name="1404" href="#1404">1404</a>         {
+<a name="1405" href="#1405">1405</a>             String newInternal = StringUtils.replace( internal, LOCAL_PACKAGES, Processor.printClauses( privatePkgs ) );
+<a name="1406" href="#1406">1406</a>             properties.setProperty( Analyzer.PRIVATE_PACKAGE, newInternal );
+<a name="1407" href="#1407">1407</a>         }
+<a name="1408" href="#1408">1408</a>     }
+<a name="1409" href="#1409">1409</a> 
 <a name="1410" href="#1410">1410</a> 
-<a name="1411" href="#1411">1411</a>         Set pathSet = <strong class="jxr_keyword">new</strong> LinkedHashSet();
-<a name="1412" href="#1412">1412</a>         <strong class="jxr_keyword">for</strong> ( Iterator i = getMavenResources( currentProject ).iterator(); i.hasNext(); )
-<a name="1413" href="#1413">1413</a>         {
-<a name="1414" href="#1414">1414</a>             Resource resource = ( Resource ) i.next();
-<a name="1415" href="#1415">1415</a> 
-<a name="1416" href="#1416">1416</a>             <strong class="jxr_keyword">final</strong> String sourcePath = resource.getDirectory();
-<a name="1417" href="#1417">1417</a>             <strong class="jxr_keyword">final</strong> String targetPath = resource.getTargetPath();
-<a name="1418" href="#1418">1418</a> 
-<a name="1419" href="#1419">1419</a>             <em class="jxr_comment">// ignore empty or non-local resources</em>
-<a name="1420" href="#1420">1420</a>             <strong class="jxr_keyword">if</strong> ( <strong class="jxr_keyword">new</strong> File( sourcePath ).exists() &amp;&amp; ( ( targetPath == <strong class="jxr_keyword">null</strong> ) || ( targetPath.indexOf( <span class="jxr_string">".."</span> ) &lt; 0 ) ) )
-<a name="1421" href="#1421">1421</a>             {
-<a name="1422" href="#1422">1422</a>                 DirectoryScanner scanner = <strong class="jxr_keyword">new</strong> DirectoryScanner();
-<a name="1423" href="#1423">1423</a> 
-<a name="1424" href="#1424">1424</a>                 scanner.setBasedir( sourcePath );
-<a name="1425" href="#1425">1425</a>                 <strong class="jxr_keyword">if</strong> ( resource.getIncludes() != <strong class="jxr_keyword">null</strong> &amp;&amp; !resource.getIncludes().isEmpty() )
-<a name="1426" href="#1426">1426</a>                 {
-<a name="1427" href="#1427">1427</a>                     scanner.setIncludes( ( String[] ) resource.getIncludes().toArray( EMPTY_STRING_ARRAY ) );
-<a name="1428" href="#1428">1428</a>                 }
-<a name="1429" href="#1429">1429</a>                 <strong class="jxr_keyword">else</strong>
-<a name="1430" href="#1430">1430</a>                 {
-<a name="1431" href="#1431">1431</a>                     scanner.setIncludes( DEFAULT_INCLUDES );
-<a name="1432" href="#1432">1432</a>                 }
-<a name="1433" href="#1433">1433</a> 
-<a name="1434" href="#1434">1434</a>                 <strong class="jxr_keyword">if</strong> ( resource.getExcludes() != <strong class="jxr_keyword">null</strong> &amp;&amp; !resource.getExcludes().isEmpty() )
-<a name="1435" href="#1435">1435</a>                 {
-<a name="1436" href="#1436">1436</a>                     scanner.setExcludes( ( String[] ) resource.getExcludes().toArray( EMPTY_STRING_ARRAY ) );
-<a name="1437" href="#1437">1437</a>                 }
+<a name="1411" href="#1411">1411</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> String getPackageName( String filename )
+<a name="1412" href="#1412">1412</a>     {
+<a name="1413" href="#1413">1413</a>         <strong class="jxr_keyword">int</strong> n = filename.lastIndexOf( File.separatorChar );
+<a name="1414" href="#1414">1414</a>         <strong class="jxr_keyword">return</strong> n &lt; 0 ? <span class="jxr_string">"."</span> : filename.substring( 0, n ).replace( File.separatorChar, '.' );
+<a name="1415" href="#1415">1415</a>     }
+<a name="1416" href="#1416">1416</a> 
+<a name="1417" href="#1417">1417</a> 
+<a name="1418" href="#1418">1418</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> List getMavenResources( MavenProject currentProject, <strong class="jxr_keyword">boolean</strong> test )
+<a name="1419" href="#1419">1419</a>     {
+<a name="1420" href="#1420">1420</a>         List resources = <strong class="jxr_keyword">new</strong> ArrayList( test ? currentProject.getTestResources() : currentProject.getResources() );
+<a name="1421" href="#1421">1421</a> 
+<a name="1422" href="#1422">1422</a>         <strong class="jxr_keyword">if</strong> ( currentProject.getCompileSourceRoots() != <strong class="jxr_keyword">null</strong> )
+<a name="1423" href="#1423">1423</a>         {
+<a name="1424" href="#1424">1424</a>             <em class="jxr_comment">// also scan for any "packageinfo" files lurking in the source folders</em>
+<a name="1425" href="#1425">1425</a>             List packageInfoIncludes = Collections.singletonList( <span class="jxr_string">"**/packageinfo"</span> );
+<a name="1426" href="#1426">1426</a>             <strong class="jxr_keyword">for</strong> ( Iterator i = currentProject.getCompileSourceRoots().iterator(); i.hasNext(); )
+<a name="1427" href="#1427">1427</a>             {
+<a name="1428" href="#1428">1428</a>                 String sourceRoot = ( String ) i.next();
+<a name="1429" href="#1429">1429</a>                 Resource packageInfoResource = <strong class="jxr_keyword">new</strong> Resource();
+<a name="1430" href="#1430">1430</a>                 packageInfoResource.setDirectory( sourceRoot );
+<a name="1431" href="#1431">1431</a>                 packageInfoResource.setIncludes( packageInfoIncludes );
+<a name="1432" href="#1432">1432</a>                 resources.add( packageInfoResource );
+<a name="1433" href="#1433">1433</a>             }
+<a name="1434" href="#1434">1434</a>         }
+<a name="1435" href="#1435">1435</a> 
+<a name="1436" href="#1436">1436</a>         <strong class="jxr_keyword">return</strong> resources;
+<a name="1437" href="#1437">1437</a>     }
 <a name="1438" href="#1438">1438</a> 
-<a name="1439" href="#1439">1439</a>                 scanner.addDefaultExcludes();
-<a name="1440" href="#1440">1440</a>                 scanner.scan();
-<a name="1441" href="#1441">1441</a> 
-<a name="1442" href="#1442">1442</a>                 List includedFiles = Arrays.asList( scanner.getIncludedFiles() );
+<a name="1439" href="#1439">1439</a> 
+<a name="1440" href="#1440">1440</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">static</strong> String getMavenResourcePaths( MavenProject currentProject, <strong class="jxr_keyword">boolean</strong> test )
+<a name="1441" href="#1441">1441</a>     {
+<a name="1442" href="#1442">1442</a>         <strong class="jxr_keyword">final</strong> String basePath = currentProject.getBasedir().getAbsolutePath();
 <a name="1443" href="#1443">1443</a> 
-<a name="1444" href="#1444">1444</a>                 <strong class="jxr_keyword">for</strong> ( Iterator j = includedFiles.iterator(); j.hasNext(); )
-<a name="1445" href="#1445">1445</a>                 {
-<a name="1446" href="#1446">1446</a>                     String name = ( String ) j.next();
-<a name="1447" href="#1447">1447</a>                     String path = sourcePath + '/' + name;
+<a name="1444" href="#1444">1444</a>         Set pathSet = <strong class="jxr_keyword">new</strong> LinkedHashSet();
+<a name="1445" href="#1445">1445</a>         <strong class="jxr_keyword">for</strong> ( Iterator i = getMavenResources( currentProject, test ).iterator(); i.hasNext(); )
+<a name="1446" href="#1446">1446</a>         {
+<a name="1447" href="#1447">1447</a>             Resource resource = ( Resource ) i.next();
 <a name="1448" href="#1448">1448</a> 
-<a name="1449" href="#1449">1449</a>                     <em class="jxr_comment">// make relative to project</em>
-<a name="1450" href="#1450">1450</a>                     <strong class="jxr_keyword">if</strong> ( path.startsWith( basePath ) )
-<a name="1451" href="#1451">1451</a>                     {
-<a name="1452" href="#1452">1452</a>                         <strong class="jxr_keyword">if</strong> ( path.length() == basePath.length() )
-<a name="1453" href="#1453">1453</a>                         {
-<a name="1454" href="#1454">1454</a>                             path = <span class="jxr_string">"."</span>;
-<a name="1455" href="#1455">1455</a>                         }
-<a name="1456" href="#1456">1456</a>                         <strong class="jxr_keyword">else</strong>
-<a name="1457" href="#1457">1457</a>                         {
-<a name="1458" href="#1458">1458</a>                             path = path.substring( basePath.length() + 1 );
-<a name="1459" href="#1459">1459</a>                         }
-<a name="1460" href="#1460">1460</a>                     }
-<a name="1461" href="#1461">1461</a> 
-<a name="1462" href="#1462">1462</a>                     <em class="jxr_comment">// replace windows backslash with a slash</em>
-<a name="1463" href="#1463">1463</a>                     <em class="jxr_comment">// this is a workaround for a problem with bnd 0.0.189</em>
-<a name="1464" href="#1464">1464</a>                     <strong class="jxr_keyword">if</strong> ( File.separatorChar != '/' )
-<a name="1465" href="#1465">1465</a>                     {
-<a name="1466" href="#1466">1466</a>                         name = name.replace( File.separatorChar, '/' );
-<a name="1467" href="#1467">1467</a>                         path = path.replace( File.separatorChar, '/' );
-<a name="1468" href="#1468">1468</a>                     }
-<a name="1469" href="#1469">1469</a> 
-<a name="1470" href="#1470">1470</a>                     <em class="jxr_comment">// copy to correct place</em>
-<a name="1471" href="#1471">1471</a>                     path = name + '=' + path;
-<a name="1472" href="#1472">1472</a>                     <strong class="jxr_keyword">if</strong> ( targetPath != <strong class="jxr_keyword">null</strong> )
-<a name="1473" href="#1473">1473</a>                     {
-<a name="1474" href="#1474">1474</a>                         path = targetPath + '/' + path;
-<a name="1475" href="#1475">1475</a>                     }
+<a name="1449" href="#1449">1449</a>             <strong class="jxr_keyword">final</strong> String sourcePath = resource.getDirectory();
+<a name="1450" href="#1450">1450</a>             <strong class="jxr_keyword">final</strong> String targetPath = resource.getTargetPath();
+<a name="1451" href="#1451">1451</a> 
+<a name="1452" href="#1452">1452</a>             <em class="jxr_comment">// ignore empty or non-local resources</em>
+<a name="1453" href="#1453">1453</a>             <strong class="jxr_keyword">if</strong> ( <strong class="jxr_keyword">new</strong> File( sourcePath ).exists() &amp;&amp; ( ( targetPath == <strong class="jxr_keyword">null</strong> ) || ( targetPath.indexOf( <span class="jxr_string">".."</span> ) &lt; 0 ) ) )
+<a name="1454" href="#1454">1454</a>             {
+<a name="1455" href="#1455">1455</a>                 DirectoryScanner scanner = <strong class="jxr_keyword">new</strong> DirectoryScanner();
+<a name="1456" href="#1456">1456</a> 
+<a name="1457" href="#1457">1457</a>                 scanner.setBasedir( sourcePath );
+<a name="1458" href="#1458">1458</a>                 <strong class="jxr_keyword">if</strong> ( resource.getIncludes() != <strong class="jxr_keyword">null</strong> &amp;&amp; !resource.getIncludes().isEmpty() )
+<a name="1459" href="#1459">1459</a>                 {
+<a name="1460" href="#1460">1460</a>                     scanner.setIncludes( ( String[] ) resource.getIncludes().toArray( EMPTY_STRING_ARRAY ) );
+<a name="1461" href="#1461">1461</a>                 }
+<a name="1462" href="#1462">1462</a>                 <strong class="jxr_keyword">else</strong>
+<a name="1463" href="#1463">1463</a>                 {
+<a name="1464" href="#1464">1464</a>                     scanner.setIncludes( DEFAULT_INCLUDES );
+<a name="1465" href="#1465">1465</a>                 }
+<a name="1466" href="#1466">1466</a> 
+<a name="1467" href="#1467">1467</a>                 <strong class="jxr_keyword">if</strong> ( resource.getExcludes() != <strong class="jxr_keyword">null</strong> &amp;&amp; !resource.getExcludes().isEmpty() )
+<a name="1468" href="#1468">1468</a>                 {
+<a name="1469" href="#1469">1469</a>                     scanner.setExcludes( ( String[] ) resource.getExcludes().toArray( EMPTY_STRING_ARRAY ) );
+<a name="1470" href="#1470">1470</a>                 }
+<a name="1471" href="#1471">1471</a> 
+<a name="1472" href="#1472">1472</a>                 scanner.addDefaultExcludes();
+<a name="1473" href="#1473">1473</a>                 scanner.scan();
+<a name="1474" href="#1474">1474</a> 
+<a name="1475" href="#1475">1475</a>                 List includedFiles = Arrays.asList( scanner.getIncludedFiles() );
 <a name="1476" href="#1476">1476</a> 
-<a name="1477" href="#1477">1477</a>                     <em class="jxr_comment">// use Bnd filtering?</em>
-<a name="1478" href="#1478">1478</a>                     <strong class="jxr_keyword">if</strong> ( resource.isFiltering() )
-<a name="1479" href="#1479">1479</a>                     {
-<a name="1480" href="#1480">1480</a>                         path = '{' + path + '}';
-<a name="1481" href="#1481">1481</a>                     }
-<a name="1482" href="#1482">1482</a> 
-<a name="1483" href="#1483">1483</a>                     pathSet.add( path );
-<a name="1484" href="#1484">1484</a>                 }
-<a name="1485" href="#1485">1485</a>             }
-<a name="1486" href="#1486">1486</a>         }
-<a name="1487" href="#1487">1487</a> 
-<a name="1488" href="#1488">1488</a>         StringBuffer resourcePaths = <strong class="jxr_keyword">new</strong> StringBuffer();
-<a name="1489" href="#1489">1489</a>         <strong class="jxr_keyword">for</strong> ( Iterator i = pathSet.iterator(); i.hasNext(); )
-<a name="1490" href="#1490">1490</a>         {
-<a name="1491" href="#1491">1491</a>             resourcePaths.append( i.next() );
-<a name="1492" href="#1492">1492</a>             <strong class="jxr_keyword">if</strong> ( i.hasNext() )
-<a name="1493" href="#1493">1493</a>             {
-<a name="1494" href="#1494">1494</a>                 resourcePaths.append( ',' );
-<a name="1495" href="#1495">1495</a>             }
-<a name="1496" href="#1496">1496</a>         }
-<a name="1497" href="#1497">1497</a> 
-<a name="1498" href="#1498">1498</a>         <strong class="jxr_keyword">return</strong> resourcePaths.toString();
-<a name="1499" href="#1499">1499</a>     }
-<a name="1500" href="#1500">1500</a> 
-<a name="1501" href="#1501">1501</a> 
-<a name="1502" href="#1502">1502</a>     <strong class="jxr_keyword">protected</strong> Collection getEmbeddableArtifacts( MavenProject currentProject, Analyzer analyzer )
-<a name="1503" href="#1503">1503</a>         <strong class="jxr_keyword">throws</strong> MojoExecutionException
-<a name="1504" href="#1504">1504</a>     {
-<a name="1505" href="#1505">1505</a>         <strong class="jxr_keyword">final</strong> Collection artifacts;
-<a name="1506" href="#1506">1506</a> 
-<a name="1507" href="#1507">1507</a>         String embedTransitive = analyzer.getProperty( DependencyEmbedder.EMBED_TRANSITIVE );
-<a name="1508" href="#1508">1508</a>         <strong class="jxr_keyword">if</strong> ( Boolean.valueOf( embedTransitive ).booleanValue() )
-<a name="1509" href="#1509">1509</a>         {
-<a name="1510" href="#1510">1510</a>             <em class="jxr_comment">// includes transitive dependencies</em>
-<a name="1511" href="#1511">1511</a>             artifacts = currentProject.getArtifacts();
-<a name="1512" href="#1512">1512</a>         }
-<a name="1513" href="#1513">1513</a>         <strong class="jxr_keyword">else</strong>
-<a name="1514" href="#1514">1514</a>         {
-<a name="1515" href="#1515">1515</a>             <em class="jxr_comment">// only includes direct dependencies</em>
-<a name="1516" href="#1516">1516</a>             artifacts = currentProject.getDependencyArtifacts();
-<a name="1517" href="#1517">1517</a>         }
-<a name="1518" href="#1518">1518</a> 
-<a name="1519" href="#1519">1519</a>         <strong class="jxr_keyword">return</strong> getSelectedDependencies( artifacts );
-<a name="1520" href="#1520">1520</a>     }
-<a name="1521" href="#1521">1521</a> 
-<a name="1522" href="#1522">1522</a> 
-<a name="1523" href="#1523">1523</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">void</strong> addMavenSourcePath( MavenProject currentProject, Analyzer analyzer, Log log )
-<a name="1524" href="#1524">1524</a>     {
-<a name="1525" href="#1525">1525</a>         <em class="jxr_comment">// pass maven source paths onto BND analyzer</em>
-<a name="1526" href="#1526">1526</a>         StringBuilder mavenSourcePaths = <strong class="jxr_keyword">new</strong> StringBuilder();
-<a name="1527" href="#1527">1527</a>         <strong class="jxr_keyword">if</strong> ( currentProject.getCompileSourceRoots() != <strong class="jxr_keyword">null</strong> )
-<a name="1528" href="#1528">1528</a>         {
-<a name="1529" href="#1529">1529</a>             <strong class="jxr_keyword">for</strong> ( Iterator i = currentProject.getCompileSourceRoots().iterator(); i.hasNext(); )
-<a name="1530" href="#1530">1530</a>             {
-<a name="1531" href="#1531">1531</a>                 <strong class="jxr_keyword">if</strong> ( mavenSourcePaths.length() &gt; 0 )
-<a name="1532" href="#1532">1532</a>                 {
-<a name="1533" href="#1533">1533</a>                     mavenSourcePaths.append( ',' );
-<a name="1534" href="#1534">1534</a>                 }
-<a name="1535" href="#1535">1535</a>                 mavenSourcePaths.append( ( String ) i.next() );
-<a name="1536" href="#1536">1536</a>             }
-<a name="1537" href="#1537">1537</a>         }
-<a name="1538" href="#1538">1538</a>         <strong class="jxr_keyword">final</strong> String sourcePath = ( String ) analyzer.getProperty( Analyzer.SOURCEPATH );
-<a name="1539" href="#1539">1539</a>         <strong class="jxr_keyword">if</strong> ( sourcePath != <strong class="jxr_keyword">null</strong> )
-<a name="1540" href="#1540">1540</a>         {
-<a name="1541" href="#1541">1541</a>             <strong class="jxr_keyword">if</strong> ( sourcePath.indexOf( MAVEN_SOURCES ) &gt;= 0 )
-<a name="1542" href="#1542">1542</a>             {
-<a name="1543" href="#1543">1543</a>                 <em class="jxr_comment">// if there is no maven source path, we do a special treatment and replace</em>
-<a name="1544" href="#1544">1544</a>                 <em class="jxr_comment">// every occurance of MAVEN_SOURCES and a following comma with an empty string</em>
-<a name="1545" href="#1545">1545</a>                 <strong class="jxr_keyword">if</strong> ( mavenSourcePaths.length() == 0 )
-<a name="1546" href="#1546">1546</a>                 {
-<a name="1547" href="#1547">1547</a>                     String cleanedSource = removeTagFromInstruction( sourcePath, MAVEN_SOURCES );
-<a name="1548" href="#1548">1548</a>                     <strong class="jxr_keyword">if</strong> ( cleanedSource.length() &gt; 0 )
-<a name="1549" href="#1549">1549</a>                     {
-<a name="1550" href="#1550">1550</a>                         analyzer.setProperty( Analyzer.SOURCEPATH, cleanedSource );
-<a name="1551" href="#1551">1551</a>                     }
-<a name="1552" href="#1552">1552</a>                     <strong class="jxr_keyword">else</strong>
-<a name="1553" href="#1553">1553</a>                     {
-<a name="1554" href="#1554">1554</a>                         analyzer.unsetProperty( Analyzer.SOURCEPATH );
-<a name="1555" href="#1555">1555</a>                     }
-<a name="1556" href="#1556">1556</a>                 }
-<a name="1557" href="#1557">1557</a>                 <strong class="jxr_keyword">else</strong>
-<a name="1558" href="#1558">1558</a>                 {
-<a name="1559" href="#1559">1559</a>                     String combinedSource = StringUtils
-<a name="1560" href="#1560">1560</a>                         .replace( sourcePath, MAVEN_SOURCES, mavenSourcePaths.toString() );
-<a name="1561" href="#1561">1561</a>                     analyzer.setProperty( Analyzer.SOURCEPATH, combinedSource );
-<a name="1562" href="#1562">1562</a>                 }
-<a name="1563" href="#1563">1563</a>             }
-<a name="1564" href="#1564">1564</a>             <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> ( mavenSourcePaths.length() &gt; 0 )
-<a name="1565" href="#1565">1565</a>             {
-<a name="1566" href="#1566">1566</a>                 log.warn( Analyzer.SOURCEPATH + <span class="jxr_string">": overriding "</span> + mavenSourcePaths + <span class="jxr_string">" with "</span> + sourcePath + <span class="jxr_string">" (add "</span>
-<a name="1567" href="#1567">1567</a>                     + MAVEN_SOURCES + <span class="jxr_string">" if you want to include the maven sources)"</span> );
-<a name="1568" href="#1568">1568</a>             }
-<a name="1569" href="#1569">1569</a>         }
-<a name="1570" href="#1570">1570</a>         <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> ( mavenSourcePaths.length() &gt; 0 )
-<a name="1571" href="#1571">1571</a>         {
-<a name="1572" href="#1572">1572</a>             analyzer.setProperty( Analyzer.SOURCEPATH, mavenSourcePaths.toString() );
-<a name="1573" href="#1573">1573</a>         }
-<a name="1574" href="#1574">1574</a>     }
-<a name="1575" href="#1575">1575</a> }
+<a name="1477" href="#1477">1477</a>                 <strong class="jxr_keyword">for</strong> ( Iterator j = includedFiles.iterator(); j.hasNext(); )
+<a name="1478" href="#1478">1478</a>                 {
+<a name="1479" href="#1479">1479</a>                     String name = ( String ) j.next();
+<a name="1480" href="#1480">1480</a>                     String path = sourcePath + '/' + name;
+<a name="1481" href="#1481">1481</a> 
+<a name="1482" href="#1482">1482</a>                     <em class="jxr_comment">// make relative to project</em>
+<a name="1483" href="#1483">1483</a>                     <strong class="jxr_keyword">if</strong> ( path.startsWith( basePath ) )
+<a name="1484" href="#1484">1484</a>                     {
+<a name="1485" href="#1485">1485</a>                         <strong class="jxr_keyword">if</strong> ( path.length() == basePath.length() )
+<a name="1486" href="#1486">1486</a>                         {
+<a name="1487" href="#1487">1487</a>                             path = <span class="jxr_string">"."</span>;
+<a name="1488" href="#1488">1488</a>                         }
+<a name="1489" href="#1489">1489</a>                         <strong class="jxr_keyword">else</strong>
+<a name="1490" href="#1490">1490</a>                         {
+<a name="1491" href="#1491">1491</a>                             path = path.substring( basePath.length() + 1 );
+<a name="1492" href="#1492">1492</a>                         }
+<a name="1493" href="#1493">1493</a>                     }
+<a name="1494" href="#1494">1494</a> 
+<a name="1495" href="#1495">1495</a>                     <em class="jxr_comment">// replace windows backslash with a slash</em>
+<a name="1496" href="#1496">1496</a>                     <em class="jxr_comment">// this is a workaround for a problem with bnd 0.0.189</em>
+<a name="1497" href="#1497">1497</a>                     <strong class="jxr_keyword">if</strong> ( File.separatorChar != '/' )
+<a name="1498" href="#1498">1498</a>                     {
+<a name="1499" href="#1499">1499</a>                         name = name.replace( File.separatorChar, '/' );
+<a name="1500" href="#1500">1500</a>                         path = path.replace( File.separatorChar, '/' );
+<a name="1501" href="#1501">1501</a>                     }
+<a name="1502" href="#1502">1502</a> 
+<a name="1503" href="#1503">1503</a>                     <em class="jxr_comment">// copy to correct place</em>
+<a name="1504" href="#1504">1504</a>                     path = name + '=' + path;
+<a name="1505" href="#1505">1505</a>                     <strong class="jxr_keyword">if</strong> ( targetPath != <strong class="jxr_keyword">null</strong> )
+<a name="1506" href="#1506">1506</a>                     {
+<a name="1507" href="#1507">1507</a>                         path = targetPath + '/' + path;
+<a name="1508" href="#1508">1508</a>                     }
+<a name="1509" href="#1509">1509</a> 
+<a name="1510" href="#1510">1510</a>                     <em class="jxr_comment">// use Bnd filtering?</em>
+<a name="1511" href="#1511">1511</a>                     <strong class="jxr_keyword">if</strong> ( resource.isFiltering() )
+<a name="1512" href="#1512">1512</a>                     {
+<a name="1513" href="#1513">1513</a>                         path = '{' + path + '}';
+<a name="1514" href="#1514">1514</a>                     }
+<a name="1515" href="#1515">1515</a> 
+<a name="1516" href="#1516">1516</a>                     pathSet.add( path );
+<a name="1517" href="#1517">1517</a>                 }
+<a name="1518" href="#1518">1518</a>             }
+<a name="1519" href="#1519">1519</a>         }
+<a name="1520" href="#1520">1520</a> 
+<a name="1521" href="#1521">1521</a>         StringBuffer resourcePaths = <strong class="jxr_keyword">new</strong> StringBuffer();
+<a name="1522" href="#1522">1522</a>         <strong class="jxr_keyword">for</strong> ( Iterator i = pathSet.iterator(); i.hasNext(); )
+<a name="1523" href="#1523">1523</a>         {
+<a name="1524" href="#1524">1524</a>             resourcePaths.append( i.next() );
+<a name="1525" href="#1525">1525</a>             <strong class="jxr_keyword">if</strong> ( i.hasNext() )
+<a name="1526" href="#1526">1526</a>             {
+<a name="1527" href="#1527">1527</a>                 resourcePaths.append( ',' );
+<a name="1528" href="#1528">1528</a>             }
+<a name="1529" href="#1529">1529</a>         }
+<a name="1530" href="#1530">1530</a> 
+<a name="1531" href="#1531">1531</a>         <strong class="jxr_keyword">return</strong> resourcePaths.toString();
+<a name="1532" href="#1532">1532</a>     }
+<a name="1533" href="#1533">1533</a> 
+<a name="1534" href="#1534">1534</a> 
+<a name="1535" href="#1535">1535</a>     <strong class="jxr_keyword">protected</strong> Collection getEmbeddableArtifacts( MavenProject currentProject, Analyzer analyzer )
+<a name="1536" href="#1536">1536</a>         <strong class="jxr_keyword">throws</strong> MojoExecutionException
+<a name="1537" href="#1537">1537</a>     {
+<a name="1538" href="#1538">1538</a>         <strong class="jxr_keyword">final</strong> Collection artifacts;
+<a name="1539" href="#1539">1539</a> 
+<a name="1540" href="#1540">1540</a>         String embedTransitive = analyzer.getProperty( DependencyEmbedder.EMBED_TRANSITIVE );
+<a name="1541" href="#1541">1541</a>         <strong class="jxr_keyword">if</strong> ( Boolean.valueOf( embedTransitive ).booleanValue() )
+<a name="1542" href="#1542">1542</a>         {
+<a name="1543" href="#1543">1543</a>             <em class="jxr_comment">// includes transitive dependencies</em>
+<a name="1544" href="#1544">1544</a>             artifacts = currentProject.getArtifacts();
+<a name="1545" href="#1545">1545</a>         }
+<a name="1546" href="#1546">1546</a>         <strong class="jxr_keyword">else</strong>
+<a name="1547" href="#1547">1547</a>         {
+<a name="1548" href="#1548">1548</a>             <em class="jxr_comment">// only includes direct dependencies</em>
+<a name="1549" href="#1549">1549</a>             artifacts = currentProject.getDependencyArtifacts();
+<a name="1550" href="#1550">1550</a>         }
+<a name="1551" href="#1551">1551</a> 
+<a name="1552" href="#1552">1552</a>         <strong class="jxr_keyword">return</strong> getSelectedDependencies( artifacts );
+<a name="1553" href="#1553">1553</a>     }
+<a name="1554" href="#1554">1554</a> 
+<a name="1555" href="#1555">1555</a> 
+<a name="1556" href="#1556">1556</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">void</strong> addMavenSourcePath( MavenProject currentProject, Analyzer analyzer, Log log )
+<a name="1557" href="#1557">1557</a>     {
+<a name="1558" href="#1558">1558</a>         <em class="jxr_comment">// pass maven source paths onto BND analyzer</em>
+<a name="1559" href="#1559">1559</a>         StringBuilder mavenSourcePaths = <strong class="jxr_keyword">new</strong> StringBuilder();
+<a name="1560" href="#1560">1560</a>         StringBuilder mavenTestSourcePaths = <strong class="jxr_keyword">new</strong> StringBuilder();
+<a name="1561" href="#1561">1561</a>         Map&lt;StringBuilder, List&lt;?&gt;&gt; map = <strong class="jxr_keyword">new</strong> HashMap&lt;StringBuilder, List&lt;?&gt;&gt;(2);
+<a name="1562" href="#1562">1562</a>         map.put(mavenSourcePaths, currentProject.getCompileSourceRoots() );
+<a name="1563" href="#1563">1563</a>         map.put(mavenTestSourcePaths, currentProject.getTestCompileSourceRoots() );
+<a name="1564" href="#1564">1564</a>         <strong class="jxr_keyword">for</strong> ( Map.Entry&lt;StringBuilder, List&lt;?&gt;&gt; entry : map.entrySet() )
+<a name="1565" href="#1565">1565</a>         {
+<a name="1566" href="#1566">1566</a>             List&lt;?&gt; compileSourceRoots = entry.getValue();
+<a name="1567" href="#1567">1567</a>             <strong class="jxr_keyword">if</strong> ( compileSourceRoots != <strong class="jxr_keyword">null</strong> )
+<a name="1568" href="#1568">1568</a>             {
+<a name="1569" href="#1569">1569</a>                 StringBuilder sourcePaths = entry.getKey();
+<a name="1570" href="#1570">1570</a>                 <strong class="jxr_keyword">for</strong> ( Iterator i = compileSourceRoots.iterator(); i.hasNext(); )
+<a name="1571" href="#1571">1571</a>                 {
+<a name="1572" href="#1572">1572</a>                     <strong class="jxr_keyword">if</strong> ( sourcePaths.length() &gt; 0 )
+<a name="1573" href="#1573">1573</a>                     {
+<a name="1574" href="#1574">1574</a>                         sourcePaths.append( ',' );
+<a name="1575" href="#1575">1575</a>                     }
+<a name="1576" href="#1576">1576</a>                     sourcePaths.append( ( String ) i.next() );
+<a name="1577" href="#1577">1577</a>                 }
+<a name="1578" href="#1578">1578</a>             }
+<a name="1579" href="#1579">1579</a>         }
+<a name="1580" href="#1580">1580</a>         <strong class="jxr_keyword">final</strong> String sourcePath = analyzer.getProperty( Analyzer.SOURCEPATH );
+<a name="1581" href="#1581">1581</a>         <strong class="jxr_keyword">if</strong> ( sourcePath != <strong class="jxr_keyword">null</strong> )
+<a name="1582" href="#1582">1582</a>         {
+<a name="1583" href="#1583">1583</a>             <strong class="jxr_keyword">if</strong> ( sourcePath.contains(MAVEN_SOURCES) || sourcePath.contains(MAVEN_TEST_RESOURCES) )
+<a name="1584" href="#1584">1584</a>             {
+<a name="1585" href="#1585">1585</a>                 String combinedSource = StringUtils.replace( sourcePath, MAVEN_SOURCES, mavenSourcePaths.toString() );
+<a name="1586" href="#1586">1586</a>                 combinedSource = StringUtils.replace( combinedSource, MAVEN_TEST_SOURCES, mavenTestSourcePaths.toString() );
+<a name="1587" href="#1587">1587</a>                 <strong class="jxr_keyword">if</strong> ( combinedSource.length() &gt; 0 )
+<a name="1588" href="#1588">1588</a>                 {
+<a name="1589" href="#1589">1589</a>                     analyzer.setProperty( Analyzer.SOURCEPATH, combinedSource );
+<a name="1590" href="#1590">1590</a>                 }
+<a name="1591" href="#1591">1591</a>                 <strong class="jxr_keyword">else</strong>
+<a name="1592" href="#1592">1592</a>                 {
+<a name="1593" href="#1593">1593</a>                     analyzer.unsetProperty( Analyzer.SOURCEPATH );
+<a name="1594" href="#1594">1594</a>                 }
+<a name="1595" href="#1595">1595</a>             }
+<a name="1596" href="#1596">1596</a>             <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> ( mavenSourcePaths.length() &gt; 0 )
+<a name="1597" href="#1597">1597</a>             {
+<a name="1598" href="#1598">1598</a>                 log.warn( Analyzer.SOURCEPATH + <span class="jxr_string">": overriding "</span> + mavenSourcePaths + <span class="jxr_string">" with "</span> + sourcePath + <span class="jxr_string">" (add "</span>
+<a name="1599" href="#1599">1599</a>                     + MAVEN_SOURCES + <span class="jxr_string">" if you want to include the maven sources)"</span> );
+<a name="1600" href="#1600">1600</a>             }
+<a name="1601" href="#1601">1601</a>             <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> ( mavenTestSourcePaths.length() &gt; 0 )
+<a name="1602" href="#1602">1602</a>             {
+<a name="1603" href="#1603">1603</a>                 log.warn( Analyzer.SOURCEPATH + <span class="jxr_string">": overriding "</span> + mavenTestSourcePaths + <span class="jxr_string">" with "</span> + sourcePath + <span class="jxr_string">" (add "</span>
+<a name="1604" href="#1604">1604</a>                         + MAVEN_TEST_SOURCES + <span class="jxr_string">" if you want to include the maven sources)"</span> );
+<a name="1605" href="#1605">1605</a>             }
+<a name="1606" href="#1606">1606</a>         }
+<a name="1607" href="#1607">1607</a>         <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> ( mavenSourcePaths.length() &gt; 0 )
+<a name="1608" href="#1608">1608</a>         {
+<a name="1609" href="#1609">1609</a>             analyzer.setProperty( Analyzer.SOURCEPATH, mavenSourcePaths.toString() );
+<a name="1610" href="#1610">1610</a>         }
+<a name="1611" href="#1611">1611</a>     }
+<a name="1612" href="#1612">1612</a> }
 </pre>
 <hr/><div id="footer">This page was automatically generated by <a href="http://maven.apache.org/">Maven</a></div></body>
 </html>
diff --git a/bundleplugin/doc/site/xref/org/apache/felix/bundleplugin/ManifestPlugin.html b/bundleplugin/doc/site/xref/org/apache/felix/bundleplugin/ManifestPlugin.html
index f213940..05d9ac4 100644
--- a/bundleplugin/doc/site/xref/org/apache/felix/bundleplugin/ManifestPlugin.html
+++ b/bundleplugin/doc/site/xref/org/apache/felix/bundleplugin/ManifestPlugin.html
@@ -174,10 +174,10 @@
 <a name="164" href="#164">164</a>             <strong class="jxr_keyword">return</strong> buildOSGiBundle( project, instructions, properties, classpath );
 <a name="165" href="#165">165</a>         }
 <a name="166" href="#166">166</a> 
-<a name="167" href="#167">167</a>         File file = project.getArtifact().getFile();
+<a name="167" href="#167">167</a>         File file = getOutputDirectory();
 <a name="168" href="#168">168</a>         <strong class="jxr_keyword">if</strong> ( file == <strong class="jxr_keyword">null</strong> )
 <a name="169" href="#169">169</a>         {
-<a name="170" href="#170">170</a>             file = getOutputDirectory();
+<a name="170" href="#170">170</a>             file = project.getArtifact().getFile();
 <a name="171" href="#171">171</a>         }
 <a name="172" href="#172">172</a> 
 <a name="173" href="#173">173</a>         <strong class="jxr_keyword">if</strong> ( !file.exists() )
diff --git a/bundleplugin/doc/site/xref/org/apache/felix/bundleplugin/package-frame.html b/bundleplugin/doc/site/xref/org/apache/felix/bundleplugin/package-frame.html
index 61bac60..23358d6 100644
--- a/bundleplugin/doc/site/xref/org/apache/felix/bundleplugin/package-frame.html
+++ b/bundleplugin/doc/site/xref/org/apache/felix/bundleplugin/package-frame.html
@@ -3,7 +3,7 @@
 <html xml:lang="en" lang="en">
 	<head>
 		<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
-		<title>Maven Bundle Plugin 2.4.0-SNAPSHOT Reference Package org.apache.felix.bundleplugin</title>
+		<title>Maven Bundle Plugin 2.5.0 Reference Package org.apache.felix.bundleplugin</title>
 		<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="style" />
 	</head>
 	<body>
@@ -22,9 +22,6 @@
             	<a href="AntPlugin.html" target="classFrame">AntPlugin</a>
           	</li>
           	          	<li>
-            	<a href="BlueprintPlugin.html" target="classFrame">Attribute</a>
-          	</li>
-          	          	<li>
             	<a href="BlueprintPlugin.html" target="classFrame">BlueprintPlugin</a>
           	</li>
           	          	<li>
@@ -55,6 +52,12 @@
             	<a href="ManifestPlugin.html" target="classFrame">ManifestPlugin</a>
           	</li>
           	          	<li>
+            	<a href="ManifestWriter.html" target="classFrame">ManifestWriter</a>
+          	</li>
+          	          	<li>
+            	<a href="ScrPlugin.html" target="classFrame">ScrPlugin</a>
+          	</li>
+          	          	<li>
             	<a href="VersionCleanerPlugin.html" target="classFrame">VersionCleanerPlugin</a>
           	</li>
           	          	<li>
diff --git a/bundleplugin/doc/site/xref/org/apache/felix/bundleplugin/package-summary.html b/bundleplugin/doc/site/xref/org/apache/felix/bundleplugin/package-summary.html
index ca96ffb..5f37bc9 100644
--- a/bundleplugin/doc/site/xref/org/apache/felix/bundleplugin/package-summary.html
+++ b/bundleplugin/doc/site/xref/org/apache/felix/bundleplugin/package-summary.html
@@ -3,7 +3,7 @@
 <html xml:lang="en" lang="en">
 	<head>
 		<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
-		<title>Maven Bundle Plugin 2.4.0-SNAPSHOT Reference Package org.apache.felix.bundleplugin</title>
+		<title>Maven Bundle Plugin 2.5.0 Reference Package org.apache.felix.bundleplugin</title>
 		<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="style" />
 	</head>
 	<body>
@@ -47,11 +47,6 @@
             	</tr>
 				            	<tr>
               		<td>
-                		<a href="BlueprintPlugin.html" target="classFrame">Attribute</a>
-              		</td>
-            	</tr>
-				            	<tr>
-              		<td>
                 		<a href="BlueprintPlugin.html" target="classFrame">BlueprintPlugin</a>
               		</td>
             	</tr>
@@ -102,6 +97,16 @@
             	</tr>
 				            	<tr>
               		<td>
+                		<a href="ManifestWriter.html" target="classFrame">ManifestWriter</a>
+              		</td>
+            	</tr>
+				            	<tr>
+              		<td>
+                		<a href="ScrPlugin.html" target="classFrame">ScrPlugin</a>
+              		</td>
+            	</tr>
+				            	<tr>
+              		<td>
                 		<a href="VersionCleanerPlugin.html" target="classFrame">VersionCleanerPlugin</a>
               		</td>
             	</tr>
@@ -132,6 +137,6 @@
         	</ul>
       	</div>
 				<hr />
-		Copyright &copy; 2006-2013 The Apache Software Foundation. All Rights Reserved.
+		Copyright &copy; 2006-2014 The Apache Software Foundation. All Rights Reserved.
 	</body>
 </html>
\ No newline at end of file
diff --git a/bundleplugin/doc/site/xref/org/apache/felix/obrplugin/package-frame.html b/bundleplugin/doc/site/xref/org/apache/felix/obrplugin/package-frame.html
index 0a42ba9..3d80c6e 100644
--- a/bundleplugin/doc/site/xref/org/apache/felix/obrplugin/package-frame.html
+++ b/bundleplugin/doc/site/xref/org/apache/felix/obrplugin/package-frame.html
@@ -3,7 +3,7 @@
 <html xml:lang="en" lang="en">
 	<head>
 		<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
-		<title>Maven Bundle Plugin 2.4.0-SNAPSHOT Reference Package org.apache.felix.obrplugin</title>
+		<title>Maven Bundle Plugin 2.5.0 Reference Package org.apache.felix.obrplugin</title>
 		<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="style" />
 	</head>
 	<body>
diff --git a/bundleplugin/doc/site/xref/org/apache/felix/obrplugin/package-summary.html b/bundleplugin/doc/site/xref/org/apache/felix/obrplugin/package-summary.html
index cc61bef..1eabd51 100644
--- a/bundleplugin/doc/site/xref/org/apache/felix/obrplugin/package-summary.html
+++ b/bundleplugin/doc/site/xref/org/apache/felix/obrplugin/package-summary.html
@@ -3,7 +3,7 @@
 <html xml:lang="en" lang="en">
 	<head>
 		<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
-		<title>Maven Bundle Plugin 2.4.0-SNAPSHOT Reference Package org.apache.felix.obrplugin</title>
+		<title>Maven Bundle Plugin 2.5.0 Reference Package org.apache.felix.obrplugin</title>
 		<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="style" />
 	</head>
 	<body>
@@ -127,6 +127,6 @@
         	</ul>
       	</div>
 				<hr />
-		Copyright &copy; 2006-2013 The Apache Software Foundation. All Rights Reserved.
+		Copyright &copy; 2006-2014 The Apache Software Foundation. All Rights Reserved.
 	</body>
 </html>
\ No newline at end of file
diff --git a/bundleplugin/doc/site/xref/org/apache/maven/shared/dependency/tree/package-frame.html b/bundleplugin/doc/site/xref/org/apache/maven/shared/dependency/tree/package-frame.html
index a417e01..b8535c3 100644
--- a/bundleplugin/doc/site/xref/org/apache/maven/shared/dependency/tree/package-frame.html
+++ b/bundleplugin/doc/site/xref/org/apache/maven/shared/dependency/tree/package-frame.html
@@ -3,7 +3,7 @@
 <html xml:lang="en" lang="en">
 	<head>
 		<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
-		<title>Maven Bundle Plugin 2.4.0-SNAPSHOT Reference Package org.apache.maven.shared.dependency.tree</title>
+		<title>Maven Bundle Plugin 2.5.0 Reference Package org.apache.maven.shared.dependency.tree</title>
 		<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="style" />
 	</head>
 	<body>
diff --git a/bundleplugin/doc/site/xref/org/apache/maven/shared/dependency/tree/package-summary.html b/bundleplugin/doc/site/xref/org/apache/maven/shared/dependency/tree/package-summary.html
index 35a062c..0356460 100644
--- a/bundleplugin/doc/site/xref/org/apache/maven/shared/dependency/tree/package-summary.html
+++ b/bundleplugin/doc/site/xref/org/apache/maven/shared/dependency/tree/package-summary.html
@@ -3,7 +3,7 @@
 <html xml:lang="en" lang="en">
 	<head>
 		<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
-		<title>Maven Bundle Plugin 2.4.0-SNAPSHOT Reference Package org.apache.maven.shared.dependency.tree</title>
+		<title>Maven Bundle Plugin 2.5.0 Reference Package org.apache.maven.shared.dependency.tree</title>
 		<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="style" />
 	</head>
 	<body>
@@ -62,6 +62,6 @@
         	</ul>
       	</div>
 				<hr />
-		Copyright &copy; 2006-2013 The Apache Software Foundation. All Rights Reserved.
+		Copyright &copy; 2006-2014 The Apache Software Foundation. All Rights Reserved.
 	</body>
 </html>
\ No newline at end of file
diff --git a/bundleplugin/doc/site/xref/org/apache/maven/shared/osgi/package-frame.html b/bundleplugin/doc/site/xref/org/apache/maven/shared/osgi/package-frame.html
index dbc9a7c..4b48423 100644
--- a/bundleplugin/doc/site/xref/org/apache/maven/shared/osgi/package-frame.html
+++ b/bundleplugin/doc/site/xref/org/apache/maven/shared/osgi/package-frame.html
@@ -3,7 +3,7 @@
 <html xml:lang="en" lang="en">
 	<head>
 		<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
-		<title>Maven Bundle Plugin 2.4.0-SNAPSHOT Reference Package org.apache.maven.shared.osgi</title>
+		<title>Maven Bundle Plugin 2.5.0 Reference Package org.apache.maven.shared.osgi</title>
 		<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="style" />
 	</head>
 	<body>
diff --git a/bundleplugin/doc/site/xref/org/apache/maven/shared/osgi/package-summary.html b/bundleplugin/doc/site/xref/org/apache/maven/shared/osgi/package-summary.html
index a444a61..58b87bd 100644
--- a/bundleplugin/doc/site/xref/org/apache/maven/shared/osgi/package-summary.html
+++ b/bundleplugin/doc/site/xref/org/apache/maven/shared/osgi/package-summary.html
@@ -3,7 +3,7 @@
 <html xml:lang="en" lang="en">
 	<head>
 		<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
-		<title>Maven Bundle Plugin 2.4.0-SNAPSHOT Reference Package org.apache.maven.shared.osgi</title>
+		<title>Maven Bundle Plugin 2.5.0 Reference Package org.apache.maven.shared.osgi</title>
 		<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="style" />
 	</head>
 	<body>
@@ -72,6 +72,6 @@
         	</ul>
       	</div>
 				<hr />
-		Copyright &copy; 2006-2013 The Apache Software Foundation. All Rights Reserved.
+		Copyright &copy; 2006-2014 The Apache Software Foundation. All Rights Reserved.
 	</body>
 </html>
\ No newline at end of file
diff --git a/bundleplugin/doc/site/xref/overview-frame.html b/bundleplugin/doc/site/xref/overview-frame.html
index 793d6a7..5050dcd 100644
--- a/bundleplugin/doc/site/xref/overview-frame.html
+++ b/bundleplugin/doc/site/xref/overview-frame.html
@@ -3,7 +3,7 @@
 <html xml:lang="en" lang="en">
 	<head>
 		<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
-		<title>Maven Bundle Plugin 2.4.0-SNAPSHOT Reference</title>
+		<title>Maven Bundle Plugin 2.5.0 Reference</title>
 		<link rel="stylesheet" type="text/css" href="stylesheet.css" title="style" />
 	</head>
 	<body>
@@ -16,9 +16,15 @@
 
 		<ul>
 						<li>
+				<a href="aQute/bnd/osgi/package-frame.html" target="packageFrame">aQute.bnd.osgi</a>
+			</li>
+						<li>
 				<a href="org/apache/felix/bundleplugin/package-frame.html" target="packageFrame">org.apache.felix.bundleplugin</a>
 			</li>
 						<li>
+				<a href="org/apache/felix/bundleplugin/baseline/package-frame.html" target="packageFrame">org.apache.felix.bundleplugin.baseline</a>
+			</li>
+						<li>
 				<a href="org/apache/felix/obrplugin/package-frame.html" target="packageFrame">org.apache.felix.obrplugin</a>
 			</li>
 						<li>
diff --git a/bundleplugin/doc/site/xref/overview-summary.html b/bundleplugin/doc/site/xref/overview-summary.html
index d69f514..08e1302 100644
--- a/bundleplugin/doc/site/xref/overview-summary.html
+++ b/bundleplugin/doc/site/xref/overview-summary.html
@@ -3,7 +3,7 @@
 <html xml:lang="en" lang="en">
 	<head>
 		<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
-		<title>Maven Bundle Plugin 2.4.0-SNAPSHOT Reference</title>
+		<title>Maven Bundle Plugin 2.5.0 Reference</title>
 		<link rel="stylesheet" type="text/css" href="stylesheet.css" title="style" />
 	</head>
 	<body>
@@ -24,7 +24,7 @@
 	        </ul>
       	</div>
 		
-		      	<h2>Maven Bundle Plugin 2.4.0-SNAPSHOT Reference</h2>
+		      	<h2>Maven Bundle Plugin 2.5.0 Reference</h2>
 
 		<table class="summary">
         	<thead>
@@ -35,11 +35,21 @@
         	<tbody>
     	    	            	<tr>
               		<td>
+                		<a href="aQute/bnd/osgi/package-summary.html">aQute.bnd.osgi</a>
+              		</td>
+            	</tr>
+	          	            	<tr>
+              		<td>
                 		<a href="org/apache/felix/bundleplugin/package-summary.html">org.apache.felix.bundleplugin</a>
               		</td>
             	</tr>
 	          	            	<tr>
               		<td>
+                		<a href="org/apache/felix/bundleplugin/baseline/package-summary.html">org.apache.felix.bundleplugin.baseline</a>
+              		</td>
+            	</tr>
+	          	            	<tr>
+              		<td>
                 		<a href="org/apache/felix/obrplugin/package-summary.html">org.apache.felix.obrplugin</a>
               		</td>
             	</tr>
@@ -74,6 +84,6 @@
       	</div>
 		
 		<hr />
-		Copyright &copy; 2006-2013 The Apache Software Foundation. All Rights Reserved.
+		Copyright &copy; 2006-2014 The Apache Software Foundation. All Rights Reserved.
 	</body>
 </html>
\ No newline at end of file