<!DOCTYPE html>
<!--
 | Generated by Apache Maven Doxia at 2019-05-09 
 | Rendered using Apache Maven Fluido Skin 1.3.1
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <meta name="Date-Revision-yyyymmdd" content="20190509" />
    <meta http-equiv="Content-Language" content="en" />
    <title>Maven Bundle Plugin &#x2013; Plugin Documentation</title>
    <link rel="stylesheet" href="./css/apache-maven-fluido-1.3.1.min.css" />
    <link rel="stylesheet" href="./css/site.css" />
    <link rel="stylesheet" href="./css/print.css" media="print" />

      
    <script type="text/javascript" src="./js/apache-maven-fluido-1.3.1.min.js"></script>

    
                  </head>
        <body class="topBarDisabled">
          
        
    
        <div class="container-fluid">
          <div id="banner">
        <div class="pull-left">
                                <div id="bannerLeft">
                <h2>Maven Bundle Plugin</h2>
                </div>
                      </div>
        <div class="pull-right">  </div>
        <div class="clear"><hr/></div>
      </div>

      <div id="breadcrumbs">
        <ul class="breadcrumb">
                
                    
                  <li id="publishDate">Last Published: 2019-05-09
                      <span class="divider">|</span>
                   </li>
                  <li id="projectVersion">Version: 4.0.0
                      </li>
                      
                
                    
      
                            </ul>
      </div>

            
      <div class="row-fluid">
        <div id="leftColumn" class="span3">
          <div class="well sidebar-nav">
                
                    
                <ul class="nav nav-list">
                    <li class="nav-header">Overview</li>
                              
      <li>
  
                          <a href="index.html" title="Introduction">
          <i class="none"></i>
        Introduction</a>
            </li>
                
      <li class="active">
  
            <a href="#"><i class="none"></i>Goals</a>
          </li>
                
      <li>
  
                          <a href="../../documentation/subprojects/apache-felix-maven-bundle-plugin-bnd.html" title="Documentation">
          <i class="none"></i>
        Documentation</a>
            </li>
                
      <li>
  
                          <a href="../../documentation/faqs/apache-felix-bundle-plugin-faq.html" title="FAQ">
          <i class="none"></i>
        FAQ</a>
            </li>
                
      <li>
  
                          <a href="jira-report.html" title="Release Notes">
          <i class="none"></i>
        Release Notes</a>
            </li>
                              <li class="nav-header">Project Documentation</li>
                                                                                                                                                                          
      <li>
  
                          <a href="project-info.html" title="Project Information">
          <i class="icon-chevron-right"></i>
        Project Information</a>
                  </li>
                                                                                                                                                    
      <li>
  
                          <a href="project-reports.html" title="Project Reports">
          <i class="icon-chevron-down"></i>
        Project Reports</a>
                    <ul class="nav nav-list">
                    
      <li>
  
                          <a href="surefire-report.html" title="Surefire Report">
          <i class="none"></i>
        Surefire Report</a>
            </li>
                    
      <li>
  
                          <a href="xref/index.html" title="Source Xref">
          <i class="none"></i>
        Source Xref</a>
            </li>
                    
      <li>
  
                          <a href="xref-test/index.html" title="Test Source Xref">
          <i class="none"></i>
        Test Source Xref</a>
            </li>
                    
      <li class="active">
  
            <a href="#"><i class="none"></i>Plugin Documentation</a>
          </li>
                    
      <li>
  
                          <a href="jira-report.html" title="JIRA Report">
          <i class="none"></i>
        JIRA Report</a>
            </li>
              </ul>
        </li>
            </ul>
                
                    
                
          <hr />

           <div id="poweredBy">
                            <div class="clear"></div>
                            <div class="clear"></div>
                            <div class="clear"></div>
                            <div class="clear"></div>
                             <a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy">
        <img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" />
      </a>
                  </div>
          </div>
        </div>
        
                
        <div id="bodyColumn"  class="span9" >
                                  
            <div class="section">
<h2><a name="Plugin_Documentation"></a>Plugin Documentation</h2><a name="Plugin_Documentation"></a>
<p>Goals available for this plugin:</p>
<table border="0" class="table table-striped">
<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>Clean OSGi versions, ie convert a group of versions to OSGi format.</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="verify-mojo.html">bundle:verify</a></td>
<td>No</td>
<td>Verifies OSGi bundle metadata contains valid entries. Supported
checks in the current version: 
<ul>
<li>All packages declared in the <a
href="http://bnd.bndtools.org/heads/export_package.html">Export-Package</a>
header are really included in the bundle.</li>
</ul></td></tr>
<tr class="b">
<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><a name="System_Requirements"></a>System Requirements</h3><a name="System_Requirements"></a>
<p>The following specifies the minimum requirements to run this Maven plugin:</p>
<table border="0" class="table table-striped">
<tr class="a">
<td>Maven</td>
<td>2.0</td></tr>
<tr class="b">
<td>JDK</td>
<td>1.7</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><a name="Usage"></a>Usage</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;
    &lt;!-- To define the plugin version in your parent POM --&gt;
    &lt;pluginManagement&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;4.0.0&lt;/version&gt;
        &lt;/plugin&gt;
        ...
      &lt;/plugins&gt;
    &lt;/pluginManagement&gt;
    &lt;!-- To use the plugin goals in your POM or parent POM --&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;4.0.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;4.0.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>
            </div>
          </div>

    <hr/>

    <footer>
            <div class="container-fluid">
                      <div class="row-fluid">
                              <p >Copyright &copy;                    2006&#x2013;2019
                        <a href="http://www.apache.org/">The Apache Software Foundation</a>.
            All rights reserved.      
                    
      </p>
        </div>

        
        
                </div>
    </footer>
        </body>
</html>
