<?xml version="1.0"?>
<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/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <parent>
    <groupId>org.netbeans.html</groupId>
    <artifactId>pom</artifactId>
    <version>1.2.2</version>
  </parent>
  <groupId>org.netbeans.html</groupId>
  <artifactId>net.java.html.boot</artifactId>
  <version>1.2.2</version>
  <packaging>bundle</packaging>
  <name>Browser Bootstrap</name>
  <url>http://maven.apache.org</url>
  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <publicPackages>net.java.html.js,net.java.html.boot,org.netbeans.html.boot.spi</publicPackages>
  </properties>
  <build>
      <plugins>
          <plugin>
              <groupId>org.apache.felix</groupId>
              <artifactId>maven-bundle-plugin</artifactId>
              <configuration>
                  <instructions>
                      <Agent-Class>org.netbeans.html.boot.impl.JsAgent</Agent-Class>
                      <Premain-Class>org.netbeans.html.boot.impl.JsAgent</Premain-Class>
                      <Eclipse-BuddyPolicy>dependent</Eclipse-BuddyPolicy>
                  </instructions>
              </configuration>
          </plugin>
      </plugins>
  </build>
  <dependencies>
    <dependency>
      <groupId>org.ow2.asm</groupId>
      <artifactId>asm</artifactId>
      <type>jar</type>
      <scope>provided</scope>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.testng</groupId>
      <artifactId>testng</artifactId>
      <scope>test</scope>
      <type>jar</type>
    </dependency>
    <dependency>
      <groupId>org.netbeans.api</groupId>
      <artifactId>org-openide-util-lookup</artifactId>
      <scope>provided</scope>
    </dependency>
    <dependency>
      <groupId>org.netbeans.html</groupId>
      <artifactId>net.java.html</artifactId>
      <version>${project.version}</version>
      <type>jar</type>
    </dependency>
  </dependencies>
    <description>Builder to launch your Java/HTML based application.</description>
</project>
