<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<!-- Generated by Apache Maven Doxia at Jul 5, 2011 -->

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">

  <head>

    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

    <title>Maven Bundle Plugin - Issue Tracking</title>

    <style type="text/css" media="all">

      @import url("./css/maven-base.css");

      @import url("./css/maven-theme.css");

      @import url("./css/site.css");

    </style>

    <link rel="stylesheet" href="./css/print.css" type="text/css" media="print" />

    <meta name="Date-Revision-yyyymmdd" content="20110705" />

    <meta http-equiv="Content-Language" content="en" />

        

  </head>

  <body class="composite">

    <div id="banner">

                    <div id="bannerLeft">

                Maven Bundle Plugin

                </div>

                    <div class="clear">

        <hr/>

      </div>

    </div>

    <div id="breadcrumbs">

            

        

                <div class="xleft">

        <span id="publishDate">Last Published: 2011-07-05</span>

                  &nbsp;| <span id="projectVersion">Version: 2.3.5</span>

                      </div>

            <div class="xright">        

        

      </div>

      <div class="clear">

        <hr/>

      </div>

    </div>

    <div id="leftColumn">

      <div id="navcolumn">

             

        

                                <h5>Overview</h5>

                  <ul>

                  <li class="none">

                          <a href="index.html" title="Introduction">Introduction</a>

            </li>

                  <li class="none">

                          <a href="plugin-info.html" title="Goals">Goals</a>

            </li>

                  <li class="none">

                          <a href="https://cwiki.apache.org/confluence/display/FELIX/Apache+Felix+Maven+Bundle+Plugin+%28BND%29" class="externalLink" title="Wiki">Wiki</a>

            </li>

                  <li class="none">

                          <a href="https://cwiki.apache.org/confluence/display/FELIX/Apache+Felix+Bundle+Plugin+FAQ" class="externalLink" title="FAQ">FAQ</a>

            </li>

                  <li class="none">

                          <a href="jira-report.html" title="Release Notes">Release Notes</a>

            </li>

          </ul>

                       <h5>Project Documentation</h5>

                  <ul>

                                                                                                                                                                                          <li class="expanded">

                          <a href="project-info.html" title="Project Information">Project Information</a>

                    <ul>

                      <li class="none">

                          <a href="index.html" title="About">About</a>

            </li>

                      <li class="none">

                          <a href="dependencies.html" title="Dependencies">Dependencies</a>

            </li>

                      <li class="none">

            <strong>Issue Tracking</strong>

          </li>

                      <li class="none">

                          <a href="mail-lists.html" title="Mailing Lists">Mailing Lists</a>

            </li>

                      <li class="none">

                          <a href="license.html" title="Project License">Project License</a>

            </li>

                      <li class="none">

                          <a href="team-list.html" title="Project Team">Project Team</a>

            </li>

                      <li class="none">

                          <a href="source-repository.html" title="Source Repository">Source Repository</a>

            </li>

              </ul>

        </li>

                                                                                                                                            <li class="collapsed">

                          <a href="project-reports.html" title="Project Reports">Project Reports</a>

                  </li>

          </ul>

                             <a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy">

        <img class="poweredBy" alt="Built by Maven" src="./images/logos/maven-feather.png" />

      </a>

                   

        

            </div>

    </div>

    <div id="bodyColumn">

      <div id="contentBox">

        <div class="section"><h2>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>

    </div>

    <div class="clear">

      <hr/>

    </div>

    <div id="footer">

      <div class="xright">Copyright &#169;                    2006-2011

                        <a href="http://www.apache.org/">The Apache Software Foundation</a>.

            All Rights Reserved.      

        

      </div>

      <div class="clear">

        <hr/>

      </div>

    </div>

  </body>

</html>

