
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "DTD/xhtml1-transitional.dtd">
<html xml:lang="en" lang="en">
	<head>
		<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
		<title>Maven Bundle Plugin 2.5.0 Reference</title>
		<link rel="stylesheet" type="text/css" href="stylesheet.css" title="style" />
	</head>
	<body>
				<div class="overview">
			<ul>
				<li class="selected">Overview</li>
				<li>Package</li>
			</ul>
		</div>
		<div class="framenoframe">
			<ul>
				<li>
					<a href="index.html" target="_top">FRAMES</a>
				</li>
				<li>
    	        	<a href="overview-summary.html" target="_top">NO FRAMES</a>
        	  	</li>
	        </ul>
      	</div>
		
		      	<h2>Maven Bundle Plugin 2.5.0 Reference</h2>

		<table class="summary">
        	<thead>
          		<tr>
            		<th>Packages</th>
          		</tr>
        	</thead>
        	<tbody>
	          	            	<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>
	          	            	<tr>
              		<td>
                		<a href="org/apache/maven/shared/dependency/tree/package-summary.html">org.apache.maven.shared.dependency.tree</a>
              		</td>
            	</tr>
	          	            	<tr>
              		<td>
                		<a href="org/apache/maven/shared/osgi/package-summary.html">org.apache.maven.shared.osgi</a>
              		</td>
            	</tr>
	          	        	</tbody>
      	</table>
		
				<div class="overview">
			<ul>
				<li class="selected">Overview</li>
				<li>Package</li>
			</ul>
		</div>
		<div class="framenoframe">
			<ul>
				<li>
					<a href="index.html" target="_top">FRAMES</a>
				</li>
				<li>
    	        	<a href="overview-summary.html" target="_top">NO FRAMES</a>
        	  	</li>
	        </ul>
      	</div>
		
		<hr />
		Copyright &copy; 2006-2014 The Apache Software Foundation. All Rights Reserved.
	</body>
</html>
