<!DOCTYPE html>
<!--
 | Generated by Apache Maven Doxia at 2016-02-17
 | Rendered using Apache Maven Fluido Skin 1.3.0
-->
<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="20160217" />
    <meta http-equiv="Content-Language" content="en" />
    <title>Sisu Maven Plugin &#x2013; Project Summary</title>
    <link rel="stylesheet" href="./css/apache-maven-fluido-1.3.0.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.0.min.js"></script>

    
            </head>
        <body class="topBarEnabled">
          
                        
                    
                

    <div id="topbar" class="navbar navbar-fixed-top ">
      <div class="navbar-inner">
                                  <div class="container"><div class="nav-collapse">
            
                
                                <ul class="nav">
                          <li class="dropdown">
        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Overview <b class="caret"></b></a>
        <ul class="dropdown-menu">
        
                      <li>      <a href="index.html"  title="Introduction">Introduction</a>
</li>
                  
                      <li>      <a href="plugin-info.html"  title="Goals">Goals</a>
</li>
                          </ul>
      </li>
                <li class="dropdown">
        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Project Documentation <b class="caret"></b></a>
        <ul class="dropdown-menu">
        
                      <li class="dropdown-submenu">
                                      <a href="project-info.html"  title="Project Information">Project Information</a>
              <ul class="dropdown-menu">
                                  <li>      <a href="index.html"  title="About">About</a>
</li>
                                  <li>      <a href="plugin-management.html"  title="Plugin Management">Plugin Management</a>
</li>
                                  <li>      <a href="distribution-management.html"  title="Distribution Management">Distribution Management</a>
</li>
                                  <li>      <a href="dependency-info.html"  title="Dependency Information">Dependency Information</a>
</li>
                                  <li>      <a href="source-repository.html"  title="Source Repository">Source Repository</a>
</li>
                                  <li>      <a href="mail-lists.html"  title="Mailing Lists">Mailing Lists</a>
</li>
                                  <li>      <a href="issue-tracking.html"  title="Issue Tracking">Issue Tracking</a>
</li>
                                  <li>      <a href="integration.html"  title="Continuous Integration">Continuous Integration</a>
</li>
                                  <li>      <a href="plugins.html"  title="Project Plugins">Project Plugins</a>
</li>
                                  <li>      <a href="license.html"  title="Project License">Project License</a>
</li>
                                  <li>      <a href="team-list.html"  title="Project Team">Project Team</a>
</li>
                                  <li>      <a href="project-summary.html"  title="Project Summary">Project Summary</a>
</li>
                                  <li>      <a href="dependencies.html"  title="Dependencies">Dependencies</a>
</li>
                              </ul>
            </li>
                  
                      <li class="dropdown-submenu">
                                      <a href="project-reports.html"  title="Project Reports">Project Reports</a>
              <ul class="dropdown-menu">
                                  <li>      <a href="plugin-info.html"  title="Plugin Documentation">Plugin Documentation</a>
</li>
                              </ul>
            </li>
                          </ul>
      </li>
                  </ul>
          
          
                                                              
                               <ul class="nav pull-right">
              <li class="dropdown">
                <a href="#" class="dropdown-toggle" data-toggle="dropdown">External Links <b class="caret"></b></a>
                <ul class="dropdown-menu">
                      <li>      <a href="http://eclipse.org/sisu/"  title="Sisu">Sisu</a>
</li>
      <li>      <a href="http://maven.apache.org/"  title="Maven">Maven</a>
</li>
                  </ul>
              </li>
            </ul>
          
                      </div>
          
        </div>
      </div>
    </div>
    
        <div class="container">
          <div id="banner">
        <div class="pull-left">
                                <div id="bannerLeft">
                <h2>Sisu Maven 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: 2016-02-17</li>
                  <li class="divider">|</li> <li id="projectVersion">Version: 0.3.3</li>
                      
                
                    
      
                            </ul>
      </div>

      
                
        <div id="bodyColumn" >
                                  
            <div class="section">
<h2><a name="Project_Summary"></a>Project Summary</h2><a name="Project_Summary"></a>
<div class="section">
<h3><a name="Project_Information"></a>Project Information</h3><a name="Project_Information"></a>
<table border="0" class="table table-striped">
<tr class="a">
<th>Field</th>
<th>Value</th></tr>
<tr class="b">
<td>Name</td>
<td>Sisu Maven Plugin</td></tr>
<tr class="a">
<td>Description</td>
<td>Manage Sisu components and applications</td></tr>
<tr class="b">
<td>Homepage</td>
<td><a class="externalLink" href="http://www.eclipse.org/sisu/">http://www.eclipse.org/sisu/</a></td></tr></table></div>
<div class="section">
<h3><a name="Project_Organization"></a>Project Organization</h3><a name="Project_Organization"></a>
<table border="0" class="table table-striped">
<tr class="a">
<th>Field</th>
<th>Value</th></tr>
<tr class="b">
<td>Name</td>
<td>The Eclipse Foundation</td></tr>
<tr class="a">
<td>URL</td>
<td><a class="externalLink" href="http://www.eclipse.org/">http://www.eclipse.org/</a></td></tr></table></div>
<div class="section">
<h3><a name="Build_Information"></a>Build Information</h3><a name="Build_Information"></a>
<table border="0" class="table table-striped">
<tr class="a">
<th>Field</th>
<th>Value</th></tr>
<tr class="b">
<td>GroupId</td>
<td>org.eclipse.sisu</td></tr>
<tr class="a">
<td>ArtifactId</td>
<td>sisu-maven-plugin</td></tr>
<tr class="b">
<td>Version</td>
<td>0.3.3</td></tr>
<tr class="a">
<td>Type</td>
<td>maven-plugin</td></tr>
<tr class="b">
<td>JDK Rev</td>
<td>-</td></tr></table></div></div>
                  </div>
          </div>

    <hr/>

    <footer>
            <div class="container">
              <div class="row span12">Copyright &copy;                    2010-2016
                        <a href="http://www.eclipse.org/">The Eclipse Foundation</a>.
            All Rights Reserved.      
                    
      </div>

        
                <p id="poweredBy" class="pull-right">
                          <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>
              </p>
        
                </div>
    </footer>
  </body>
</html>
