A Maven project object model (POM) file contains all the required information for Maven to create and build OSGi bundles that you can deploy to SMS Builder.
<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>
<groupId>com.sap.example</groupId>
<artifactId>customState</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>bundle</packaging>
<name>Custom State</name>
<url>http://www.sap.com</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<bundle.namespace>${project.groupId}</bundle.namespace>
<bundle.symbolicName>${bundle.namespace}.${project.artifactId}</bundle.symbolicName>
<brand.version>1.3.1</brand.version>
</properties>
<build>
<defaultGoal>install</defaultGoal>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
</configuration>
</plugin>
<!-- Create an OSGi Bundle Manifest -->
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<version>2.3.7</version>
<extensions>true</extensions>
<configuration>
<instructions>
<manifestLocation>META-INF</manifestLocation>
<Bundle-Category>object</Bundle-Category>
<Bundle-SymbolicName>${bundle.symbolicName}</Bundle-SymbolicName>
<Bundle-Version>${project.version}</Bundle-Version>
<Embed-Dependency></Embed-Dependency>
<!--
Note: When you develop additional classes within this object
bundle, include the package names of the classes in either the
Export-Package, or the Private-Package, otherwise it will not
be included in the bundle.
-->
<Export-Package>
</Export-Package>
<Private-Package>
com.sap.example
</Private-Package>
<DynamicImport-Package>
</DynamicImport-Package>
<!--
Note: If you use other only referenced from spring context then
include them in the Import-Package instruction here. The *
instruction ensures that any directly imported packages in
supporting classes are included automatically, but the Spring
context referenced ones need explicit reference.
-->
<Import-Package>
*
</Import-Package>
<!--
Each module can override these defaults in an
optional osgi.bnd file
-->
<_include>-osgi.bnd</_include>
<!--
Enable viewing of the properties file content from telnet console
-->
<ARF-Bundle-Template>/META-INF/config</ARF-Bundle-Template>
</instructions>
<obrRepository>NONE</obrRepository>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>com.sybase365.mobiliser.brand.plugins</groupId>
<artifactId>mobiliser-brand-plugin-api</artifactId>
<version>${brand.version}</version>
</dependency>
<dependency>
<groupId>com.sybase365.mobiliser.brand.plugins</groupId>
<artifactId>mobiliser-brand-state-sdk</artifactId>
<version>${brand.version}</version>
</dependency>
<dependency>
<groupId>com.sybase365.mobiliser.brand.security</groupId>
<artifactId>mobiliser-brand-security</artifactId>
<version>1.3.1</version>
</dependency>
<dependency>
<groupId>com.sybase365.mobiliser.brand.core</groupId>
<artifactId>mobiliser-brand-core</artifactId>
<version>${brand.version}</version>
</dependency>
<dependency>
<groupId>com.sybase365.mobiliser.brand.database</groupId>
<artifactId>mobiliser-brand-jpa</artifactId>
<version>${brand.version}</version>
</dependency>
<!-- Logging -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.6.6</version>
</dependency>
<!-- Optional for Unit Test -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
</dependencies>
<!--
Required Javax Persistence dependencies not available
from Maven central repository
-->
<profiles>
<profile>
<activation>
<jdk>[1.5, 1.7)</jdk>
</activation>
<dependencies>
<dependency>
<groupId>org.eclipse.persistence</groupId>
<artifactId>javax.persistence</artifactId>
<version>2.0.4.v201112161009</version>
<scope>provided</scope>
</dependency>
</dependencies>
<repositories>
<repository>
<id>EclipseLink</id>
<url>http://download.eclipse.org/rt/eclipselink/maven.repo</url>
</repository>
</repositories>
</profile>
</profiles>
</project>