<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>${groupId}</groupId>
  <artifactId>${artifactId}</artifactId>
  <packaging>osgi-bundle</packaging>
  <version>${version}</version>
  <name>Simple Bundle Project</name>
  <url>http://felix.apache.org</url>

  <dependencies>
    <dependency>
      <groupId>org.apache.felix</groupId>
      <artifactId>org.osgi.core</artifactId>
      <version>0.9.0-incubator-SNAPSHOT</version>
      <scope>provided</scope>
    </dependency>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
  </dependencies>

  <build>
    <!-- Uncomment to override default bundle jar naming convention
    <finalName>my-bundle</finalName>
    -->

    <plugins>
      <plugin>
        <groupId>org.apache.felix.plugins</groupId>
        <artifactId>maven-felix-plugin</artifactId>
        <executions>
          <execution>
             <id>run</id>
             <configuration>
               <felixCacheDir>${basedir}/target/.felix</felixCacheDir>
               <exclusions>
                 <exclusion>junit:junit</exclusion>
               </exclusions>
             </configuration>
             <goals>
               <goal>run</goal>
             </goals>
          </execution>
        </executions>
      </plugin>
    
      <plugin>
        <groupId>org.apache.felix.plugins</groupId>
        <artifactId>maven-osgi-plugin</artifactId>
        <extensions>true</extensions>
        <configuration>
          <!-- Uncomment to specify a manifest file to merge
          <manifestFile>path/to/manifest.mf</manifestFile>
          -->
          <osgiManifest>
            <bundleName>Simple Bundle</bundleName>
            <bundleActivator>${groupId}.Activator</bundleActivator>
            <bundleVendor>Apache Software Foundation</bundleVendor>
          </osgiManifest>
        </configuration>
      </plugin>
    </plugins>
  </build>
</project>
