Rollback to use 1.0.2 parent pom, update docs and copyright dates
git-svn-id: https://svn.apache.org/repos/asf/felix/trunk@748316 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/bundleplugin/doc/apache-felix-maven-bundle-plugin-bnd.html b/bundleplugin/doc/apache-felix-maven-bundle-plugin-bnd.html
index 8746ffe..39e6390 100644
--- a/bundleplugin/doc/apache-felix-maven-bundle-plugin-bnd.html
+++ b/bundleplugin/doc/apache-felix-maven-bundle-plugin-bnd.html
@@ -12,13 +12,13 @@
<ul>
<li><a href="http://felix.apache.org/site/news.html" title="news">news</a></li>
<li><a href="http://felix.apache.org/site/license.html" title="license">license</a></li>
- <li><span class="nobr"><a href="http://felix.apache.org/site/downloads.cgi" title="Visit page outside Confluence" rel="nofollow">downloads<sup><img class="rendericon" src="apache-felix-maven-bundle-plugin-bnd_files/linkext7.gif" alt="" align="absmiddle" border="0" width="7" height="7"></sup></a></span></li>
+ <li><span class="nobr"><a href="http://felix.apache.org/site/downloads.cgi" title="Visit page outside Confluence" rel="nofollow">downloads<sup><img class="rendericon" src="apache-felix-maven-bundle-plugin-bnd_files/linkext7.gif" alt="" width="7" align="absmiddle" border="0" height="7"></sup></a></span></li>
<li><a href="http://felix.apache.org/site/documentation.html" title="documentation">documentation</a></li>
<li><a href="http://felix.apache.org/site/mailinglists.html" title="mailinglists">mailing lists</a></li>
<li><a href="http://felix.apache.org/site/contributing.html" title="Contributing">contributing</a></li>
- <li><span class="nobr"><a href="http://www.apache.org/" title="Visit page outside Confluence" rel="nofollow">asf<sup><img class="rendericon" src="apache-felix-maven-bundle-plugin-bnd_files/linkext7.gif" alt="" align="absmiddle" border="0" width="7" height="7"></sup></a></span></li>
- <li><span class="nobr"><a href="http://www.apache.org/foundation/sponsorship.html" title="Visit page outside Confluence" rel="nofollow">sponsorship<sup><img class="rendericon" src="apache-felix-maven-bundle-plugin-bnd_files/linkext7.gif" alt="" align="absmiddle" border="0" width="7" height="7"></sup></a></span></li>
- <li><span class="nobr"><a href="http://www.apache.org/foundation/thanks.html" title="Visit page outside Confluence" rel="nofollow">sponsors<sup><img class="rendericon" src="apache-felix-maven-bundle-plugin-bnd_files/linkext7.gif" alt="" align="absmiddle" border="0" width="7" height="7"></sup></a></span>
+ <li><span class="nobr"><a href="http://www.apache.org/" title="Visit page outside Confluence" rel="nofollow">asf<sup><img class="rendericon" src="apache-felix-maven-bundle-plugin-bnd_files/linkext7.gif" alt="" width="7" align="absmiddle" border="0" height="7"></sup></a></span></li>
+ <li><span class="nobr"><a href="http://www.apache.org/foundation/sponsorship.html" title="Visit page outside Confluence" rel="nofollow">sponsorship<sup><img class="rendericon" src="apache-felix-maven-bundle-plugin-bnd_files/linkext7.gif" alt="" width="7" align="absmiddle" border="0" height="7"></sup></a></span></li>
+ <li><span class="nobr"><a href="http://www.apache.org/foundation/thanks.html" title="Visit page outside Confluence" rel="nofollow">sponsors<sup><img class="rendericon" src="apache-felix-maven-bundle-plugin-bnd_files/linkext7.gif" alt="" width="7" align="absmiddle" border="0" height="7"></sup></a></span>
<!-- ApacheCon Ad -->
<iframe src="apache-felix-maven-bundle-plugin-bnd_files/button.html" style="border-width: 0pt; float: left; display: none;" scrolling="no" width="135" frameborder="0" height="135"></iframe>
<p style="height: 100px;">
@@ -27,7 +27,7 @@
<div class="main">
<h1><a name="ApacheFelixMavenBundlePlugin(BND)-BundlePluginforMaven"></a>Bundle Plugin for Maven</h1>
-<p>This plugin for Maven 2 is based on the <span class="nobr"><a href="http://www.aqute.biz/Code/Bnd" title="Visit page outside Confluence" rel="nofollow">BND<sup><img class="rendericon" src="apache-felix-maven-bundle-plugin-bnd_files/linkext7.gif" alt="" align="absmiddle" border="0" width="7" height="7"></sup></a></span>
+<p>This plugin for Maven 2 is based on the <span class="nobr"><a href="http://www.aqute.biz/Code/Bnd" title="Visit page outside Confluence" rel="nofollow">BND<sup><img class="rendericon" src="apache-felix-maven-bundle-plugin-bnd_files/linkext7.gif" alt="" width="7" align="absmiddle" border="0" height="7"></sup></a></span>
tool from Peter Kriens. The way BND works is by treating your project
as a big collection of classes (e.g., project code, dependencies, and
the class path). The way you create a bundle with BND is to tell it the
@@ -112,7 +112,7 @@
</ol>
-<p>The remainder of this section covers the most important aspects of BND's instructions; for complete details refer to the <span class="nobr"><a href="http://www.aqute.biz/Code/Bnd" title="Visit page outside Confluence" rel="nofollow">BND documentation<sup><img class="rendericon" src="apache-felix-maven-bundle-plugin-bnd_files/linkext7.gif" alt="" align="absmiddle" border="0" width="7" height="7"></sup></a></span>.</p>
+<p>The remainder of this section covers the most important aspects of BND's instructions; for complete details refer to the <span class="nobr"><a href="http://www.aqute.biz/Code/Bnd" title="Visit page outside Confluence" rel="nofollow">BND documentation<sup><img class="rendericon" src="apache-felix-maven-bundle-plugin-bnd_files/linkext7.gif" alt="" width="7" align="absmiddle" border="0" height="7"></sup></a></span>.</p>
<p><a name="ApacheFelixMavenBundlePlugin(BND)-instructions"></a></p>
@@ -196,7 +196,7 @@
defaults for various instructions. For example:</p>
<ul>
- <li><tt><Bundle-SymbolicName></tt> is computed using the shared <span class="nobr"><a href="http://svn.apache.org/repos/asf/maven/shared/trunk/maven-osgi/src/main/java/org/apache/maven/shared/osgi/DefaultMaven2OsgiConverter.java" title="Visit page outside Confluence" rel="nofollow">Maven2OsgiConverter<sup><img class="rendericon" src="apache-felix-maven-bundle-plugin-bnd_files/linkext7.gif" alt="" align="absmiddle" border="0" width="7" height="7"></sup></a></span> component, which uses the following algorithm:<br>
+ <li><tt><Bundle-SymbolicName></tt> is computed using the shared <span class="nobr"><a href="http://svn.apache.org/repos/asf/maven/shared/trunk/maven-osgi/src/main/java/org/apache/maven/shared/osgi/DefaultMaven2OsgiConverter.java" title="Visit page outside Confluence" rel="nofollow">Maven2OsgiConverter<sup><img class="rendericon" src="apache-felix-maven-bundle-plugin-bnd_files/linkext7.gif" alt="" width="7" align="absmiddle" border="0" height="7"></sup></a></span> component, which uses the following algorithm:<br>
Get the symbolic name as groupId + "." + artifactId, with the following exceptions:
<ul>
<li>if
@@ -242,7 +242,7 @@
<p>The first step in the process of using the plugin is downloading and
installing the latest version of the Maven2 runtime. The latest Maven2
release and instuctions for getting started with Maven2 can be found at
-the <span class="nobr"><a href="http://maven.apache.org/index.html" title="Visit page outside Confluence" rel="nofollow">Maven website<sup><img class="rendericon" src="apache-felix-maven-bundle-plugin-bnd_files/linkext7.gif" alt="" align="absmiddle" border="0" width="7" height="7"></sup></a></span>.</p>
+the <span class="nobr"><a href="http://maven.apache.org/index.html" title="Visit page outside Confluence" rel="nofollow">Maven website<sup><img class="rendericon" src="apache-felix-maven-bundle-plugin-bnd_files/linkext7.gif" alt="" width="7" align="absmiddle" border="0" height="7"></sup></a></span>.</p>
<h2><a name="ApacheFelixMavenBundlePlugin(BND)-UsingthePlugin"></a>Using the Plugin</h2>
@@ -448,6 +448,35 @@
<span class="code-tag"></plugin></span></pre>
</div></div>
+<p>If you want to use packaging types other than "jar" and "bundle" then you also need to enable support<br>
+for them in the bundleplugin configuration, for example if you want to use the plugin with WAR files:</p>
+
+<div class="code"><div class="codeContent">
+<pre class="code-xml"><span class="code-tag"><plugin></span>
+ <span class="code-tag"><groupId></span>org.apache.felix<span class="code-tag"></groupId></span>
+ <span class="code-tag"><artifactId></span>maven-bundle-plugin<span class="code-tag"></artifactId></span>
+ <span class="code-tag"><executions></span>
+ <span class="code-tag"><execution></span>
+ <span class="code-tag"><id></span>bundle-manifest<span class="code-tag"></id></span>
+ <span class="code-tag"><phase></span>process-classes<span class="code-tag"></phase></span>
+ <span class="code-tag"><goals></span>
+ <span class="code-tag"><goal></span>manifest<span class="code-tag"></goal></span>
+ <span class="code-tag"></goals></span>
+ <span class="code-tag"></execution></span>
+ <span class="code-tag"></executions></span>
+ <span class="code-tag"><configuration></span>
+ <span class="code-tag"><supportedProjectTypes></span>
+ <span class="code-tag"><supportedProjectType></span>jar<span class="code-tag"></supportedProjectType></span>
+ <span class="code-tag"><supportedProjectType></span>bundle<span class="code-tag"></supportedProjectType></span>
+ <span class="code-tag"><supportedProjectType></span>war<span class="code-tag"></supportedProjectType></span>
+ <span class="code-tag"></supportedProjectTypes></span>
+ <span class="code-tag"><instructions></span>
+ <span class="code-tag"><span class="code-comment"><!-- ...etc... --></span></span>
+ <span class="code-tag"></instructions></span>
+ <span class="code-tag"></configuration></span>
+<span class="code-tag"></plugin></span></pre>
+</div></div>
+
<h2><a name="ApacheFelixMavenBundlePlugin(BND)-BuildingthePlugin"></a>Building the Plugin</h2>
<p>The plugin is hosted at the Apache Felix project. The following
@@ -490,8 +519,8 @@
<li><em><tt>manifestLocation</tt></em> defaults to ${project.build.outputDirectory}/META-INF</li>
<li><em><tt>unpackBundle</tt></em> unpack bundle contents to output directory, defaults to false</li>
<li><em><tt>excludeDependencies</tt></em> comma-separated list of dependency artifactIds to exclude from the classpath passed to Bnd (use "true" to exclude everything)</li>
- <li><em><tt>supportedProjectTypes</tt></em> defaults to "jar","bundle"</li>
<li><em><tt>classifier</tt></em> attach bundle to the project using the given classifier</li>
+ <li><em><tt>supportedProjectTypes</tt></em> defaults to "jar","bundle"</li>
</ul>
</li>
</ul>
@@ -501,8 +530,8 @@
<li><b><tt>bundleall</tt></b> - build OSGi bundle jars for all transitive dependencies<br>
configuration options:
<ul>
- <li><em><tt>supportedProjectTypes</tt></em> defaults to "jar","bundle"</li>
<li><em><tt>wrapImportPackage</tt></em> defaults to "*"</li>
+ <li><em><tt>supportedProjectTypes</tt></em> defaults to "jar","bundle"</li>
</ul>
</li>
</ul>
@@ -512,8 +541,8 @@
<li><b><tt>wrap</tt></b> - as above, but limited to the first level of dependencies<br>
configuration options:
<ul>
- <li><em><tt>supportedProjectTypes</tt></em> defaults to "jar","bundle"</li>
<li><em><tt>wrapImportPackage</tt></em> defaults to "*"</li>
+ <li><em><tt>supportedProjectTypes</tt></em> defaults to "jar","bundle"</li>
</ul>
</li>
</ul>
@@ -535,6 +564,7 @@
configuration options:
<ul>
<li><em><tt>obrRepository</tt></em> path to local OBR, defaults to <em><local-maven-repository></em><tt>/repository.xml</tt></li>
+ <li><em><tt>supportedProjectTypes</tt></em> defaults to "jar","bundle"</li>
</ul>
</li>
</ul>
@@ -571,8 +601,12 @@
<ul>
<li><em><tt>remoteOBR</tt></em> name of remote OBR, defaults to NONE (which means no remote OBR deployment)</li>
<li><em><tt>obrRepository</tt></em> used when the remoteOBR name is blank, defaults to <tt>repository.xml</tt></li>
+ <li><em><tt>prefixUrl</tt></em> optional public URL prefix for the remote repository</li>
+ <li><em><tt>bundleUrl</tt></em> optional public URL where the bundle has been deployed</li>
<li><em><tt>altDeploymentRepository</tt></em> alternative remote repository, <em>id::layout::url</em></li>
+ <li><em><tt>obrDeploymentRepository</tt></em> optional OBR specific deployment repository.</li>
<li><em><tt>ignoreLock</tt></em> ignore remote locking when updating the OBR</li>
+ <li><em><tt>supportedProjectTypes</tt></em> defaults to "jar","bundle"</li>
</ul>
</li>
</ul>
@@ -619,8 +653,24 @@
</ul>
+
+<ul>
+ <li><b><tt>remote-clean</tt></b> - cleans a remote OBR, removing missing bundles<br>
+configuration options:
+ <ul>
+ <li><em><tt>remoteOBR</tt></em> name of remote OBR, defaults to NONE (which means no remote cleaning)</li>
+ <li><em><tt>obrRepository</tt></em> used when the remoteOBR name is blank, defaults to <tt>repository.xml</tt></li>
+ <li><em><tt>prefixUrl</tt></em> optional public URL prefix for the remote repository</li>
+ <li><em><tt>altDeploymentRepository</tt></em> alternative remote repository, <em>id::layout::url</em></li>
+ <li><em><tt>obrDeploymentRepository</tt></em> optional OBR specific deployment repository.</li>
+ <li><em><tt>ignoreLock</tt></em> ignore remote locking when updating the OBR</li>
+ </ul>
+ </li>
+</ul>
+
+
<p>There are also new instructions available from the underlying BND
-tool, which continues to be improved independently; for the latest see <span class="nobr"><a href="http://aqute.biz/Code/Bnd" title="Visit page outside Confluence" rel="nofollow">BND documentation<sup><img class="rendericon" src="apache-felix-maven-bundle-plugin-bnd_files/linkext7.gif" alt="" align="absmiddle" border="0" width="7" height="7"></sup></a></span>.</p>
+tool, which continues to be improved independently; for the latest see <span class="nobr"><a href="http://aqute.biz/Code/Bnd" title="Visit page outside Confluence" rel="nofollow">BND documentation<sup><img class="rendericon" src="apache-felix-maven-bundle-plugin-bnd_files/linkext7.gif" alt="" width="7" align="absmiddle" border="0" height="7"></sup></a></span>.</p>
<p>The default goal <b><tt>bundle</tt></b> will be initialized by setting the <packaging> entry to "bundle".</p>
@@ -638,9 +688,11 @@
<div class="preformatted"><div class="preformattedContent">
<pre>dependencies ::= clause ( ',' clause ) *
-clause ::= MATCH ( ';' attr '=' MATCH | ';inline=true' )
+clause ::= MATCH ( ';' attr '=' MATCH | ';inline=' inline )
attr ::= 'groupId' | 'artifactId' | 'version' | 'scope' | 'type' | 'classifier'
-MATCH ::= <globbed regular expressions>
+inline ::= 'true' | 'false' | PATH ( '|' PATH ) *
+MATCH ::= <globbed regular expression>
+PATH ::= <Ant-style path expression>
</pre>
</div></div>
@@ -657,14 +709,17 @@
<pre class="code-xml"><span class="code-tag"><span class="code-comment"><!-- embed all compile and runtime scope dependencies --></span></span>
<span class="code-tag"><Embed-Dependency></span>*;scope=compile|runtime<span class="code-tag"></Embed-Dependency></span>
-<span class="code-tag"><span class="code-comment"><!-- embed any dependencies with artifactId junit and scope test --></span></span>
-<span class="code-tag"><Embed-Dependency></span>junit;scope=test<span class="code-tag"></Embed-Dependency></span>
+<span class="code-tag"><span class="code-comment"><!-- embed any dependencies with artifactId junit and scope runtime --></span></span>
+<span class="code-tag"><Embed-Dependency></span>junit;scope=runtime<span class="code-tag"></Embed-Dependency></span>
-<span class="code-tag"><span class="code-comment"><!-- inline all dependencies, except those with scope test --></span></span>
-<span class="code-tag"><Embed-Dependency></span>*;scope=!test;inline=true<span class="code-tag"></Embed-Dependency></span>
+<span class="code-tag"><span class="code-comment"><!-- inline all non-pom dependencies, except those with scope runtime --></span></span>
+<span class="code-tag"><Embed-Dependency></span>*;scope=!runtime;type=!pom;inline=true<span class="code-tag"></Embed-Dependency></span>
<span class="code-tag"><span class="code-comment"><!-- embed all compile and runtime scope dependencies, except those with artifactIds in the given list --></span></span>
-<span class="code-tag"><Embed-Dependency></span>*;scope=compile|runtime;inline=false;artifactId=!cli|lang|runtime|tidy|jsch<span class="code-tag"></Embed-Dependency></span></pre>
+<span class="code-tag"><Embed-Dependency></span>*;scope=compile|runtime;inline=false;artifactId=!cli|lang|runtime|tidy|jsch<span class="code-tag"></Embed-Dependency></span>
+
+<span class="code-tag"><span class="code-comment"><!-- inline contents of selected folders from all dependencies --></span></span>
+<span class="code-tag"><Embed-Dependency></span>*;inline=images/**|icons/**<span class="code-tag"></Embed-Dependency></span></pre>
</div></div>
<p>examples of using {<tt>maven-dependencies</tt>}:</p>
@@ -872,7 +927,7 @@
<p>and you should now be able to import this as an existing Eclipse project.</p>
-<p>FYI: the above POM was generated using the <tt>pax-create-bundle</tt> command from <span class="nobr"><a href="http://www.ops4j.org/projects/pax/construct/index.html" title="Visit page outside Confluence" rel="nofollow">Pax-Construct<sup><img class="rendericon" src="apache-felix-maven-bundle-plugin-bnd_files/linkext7.gif" alt="" align="absmiddle" border="0" width="7" height="7"></sup></a></span> and then tweaked to demonstrate using the Maven Dependency Plugin to handle embedded jars in Eclipse.</p>
+<p>FYI: the above POM was generated using the <tt>pax-create-bundle</tt> command from <span class="nobr"><a href="http://www.ops4j.org/projects/pax/construct/index.html" title="Visit page outside Confluence" rel="nofollow">Pax-Construct<sup><img class="rendericon" src="apache-felix-maven-bundle-plugin-bnd_files/linkext7.gif" alt="" width="7" align="absmiddle" border="0" height="7"></sup></a></span> and then tweaked to demonstrate using the Maven Dependency Plugin to handle embedded jars in Eclipse.</p>
<p>With the original Pax-Construct generated POM you would simply use:</p>
@@ -968,7 +1023,7 @@
<p>The <b>deploy goal</b> updates the remote OBR with the details of
the deployed bundle from the local Maven repository. The remote OBR is
-found by querying the <tt><distributionManagement></tt> section of the project, unless <tt>-DaltDeploymentRepository</tt> is set. See <span class="nobr"><a href="http://maven.apache.org/plugins/maven-deploy-plugin/deploy-mojo.html" title="Visit page outside Confluence" rel="nofollow">http://maven.apache.org/plugins/maven-deploy-plugin/deploy-mojo.html<sup><img class="rendericon" src="apache-felix-maven-bundle-plugin-bnd_files/linkext7.gif" alt="" align="absmiddle" border="0" width="7" height="7"></sup></a></span> for more details about these particular settings.</p>
+found by querying the <tt><distributionManagement></tt> section of the project, unless <tt>-DaltDeploymentRepository</tt> is set. See <span class="nobr"><a href="http://maven.apache.org/plugins/maven-deploy-plugin/deploy-mojo.html" title="Visit page outside Confluence" rel="nofollow">http://maven.apache.org/plugins/maven-deploy-plugin/deploy-mojo.html<sup><img class="rendericon" src="apache-felix-maven-bundle-plugin-bnd_files/linkext7.gif" alt="" width="7" align="absmiddle" border="0" height="7"></sup></a></span> for more details about these particular settings.</p>
<p>(If the project has an <tt>obr.xml</tt> file somewhere in its resources, then it will be automatically detected and applied.)</p>
@@ -985,7 +1040,7 @@
<h2><a name="ApacheFelixMavenBundlePlugin(BND)-bundle:deployfile"></a>bundle:deploy-file</h2>
-<p>The <b>deploy-file</b> goal updates the remote OBR with the details of a deployed bundle from the local filesystem. The remote OBR is found using the <tt>-DrepositoryId</tt> and <tt>-Durl</tt> parameters. See <span class="nobr"><a href="http://maven.apache.org/plugins/maven-deploy-plugin/deploy-file-mojo.html" title="Visit page outside Confluence" rel="nofollow">http://maven.apache.org/plugins/maven-deploy-plugin/deploy-file-mojo.html<sup><img class="rendericon" src="apache-felix-maven-bundle-plugin-bnd_files/linkext7.gif" alt="" align="absmiddle" border="0" width="7" height="7"></sup></a></span> for more details about these particular settings.</p>
+<p>The <b>deploy-file</b> goal updates the remote OBR with the details of a deployed bundle from the local filesystem. The remote OBR is found using the <tt>-DrepositoryId</tt> and <tt>-Durl</tt> parameters. See <span class="nobr"><a href="http://maven.apache.org/plugins/maven-deploy-plugin/deploy-file-mojo.html" title="Visit page outside Confluence" rel="nofollow">http://maven.apache.org/plugins/maven-deploy-plugin/deploy-file-mojo.html<sup><img class="rendericon" src="apache-felix-maven-bundle-plugin-bnd_files/linkext7.gif" alt="" width="7" align="absmiddle" border="0" height="7"></sup></a></span> for more details about these particular settings.</p>
<p>You can use the <tt>-DbundleUrl</tt> parameter to give the public location of the deployed bundle, which may differ from the remote OBR location.</p>
@@ -1100,6 +1155,6 @@
<h1><a name="ApacheFelixMavenBundlePlugin(BND)-Feedback"></a>Feedback</h1>
-<p>Subscribe to the Felix users mailing list by sending a message to <span class="nobr"><a href="mailto:users-subscribe@felix.apache.org" title="Send mail to users-subscribe@felix.apache.org" rel="nofollow">users-subscribe@felix.apache.org<sup><img class="rendericon" src="apache-felix-maven-bundle-plugin-bnd_files/mail_small.gif" alt="" align="absmiddle" border="0" width="13" height="12"></sup></a></span>; after subscribing, email questions or feedback to <span class="nobr"><a href="mailto:users@felix.apache.org" title="Send mail to users@felix.apache.org" rel="nofollow">users@felix.apache.org<sup><img class="rendericon" src="apache-felix-maven-bundle-plugin-bnd_files/mail_small.gif" alt="" align="absmiddle" border="0" width="13" height="12"></sup></a></span>.</p>
+<p>Subscribe to the Felix users mailing list by sending a message to <span class="nobr"><a href="mailto:users-subscribe@felix.apache.org" title="Send mail to users-subscribe@felix.apache.org" rel="nofollow">users-subscribe@felix.apache.org<sup><img class="rendericon" src="apache-felix-maven-bundle-plugin-bnd_files/mail_small.gif" alt="" width="13" align="absmiddle" border="0" height="12"></sup></a></span>; after subscribing, email questions or feedback to <span class="nobr"><a href="mailto:users@felix.apache.org" title="Send mail to users@felix.apache.org" rel="nofollow">users@felix.apache.org<sup><img class="rendericon" src="apache-felix-maven-bundle-plugin-bnd_files/mail_small.gif" alt="" width="13" align="absmiddle" border="0" height="12"></sup></a></span>.</p>
</div>
</body></html>
\ No newline at end of file