blob: 2eef3b5cfa79303d316dd6f376249f0760053c29 [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<!--#======================================================================= -->
<!--# Copyright (c) 2012, 2014 - C4biz Softwares ME, Loetz GmbH&Co.KG (69115 Heidelberg, Germany) -->
<!--# All rights reserved. This program and the accompanying materials -->
<!--# are made available under the terms of the Eclipse Public License 2.0 -->
<!--# which accompanies this distribution, and is available at -->
<!--# https://www.eclipse.org/legal/epl-2.0/ -->
<!--# -->
<!--# SPDX-License-Identifier: EPL-2.0 -->
<!--# -->
<!--# Contributors: -->
<!--# Cristiano GaviĆ£o (C4biz)- initial API and implementation -->
<!--#======================================================================= -->
<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.eclipse.osbp.releng.maven</groupId>
<artifactId>org.eclipse.osbp.releng.maven</artifactId>
<version>0.9.0-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>
<artifactId>org.eclipse.osbp.releng.maven.parent.mbp</artifactId>
<packaging>pom</packaging>
<properties>
<mbp.version>3.2.0</mbp.version>
<license.copyrightOwners>C4biz Softwares ME, Loetz GmbH&amp;Co.KG - Heidelberg</license.copyrightOwners>
<bundle.short.version>${parsedVersion.majorVersion}.${parsedVersion.minorVersion}.${parsedVersion.incrementalVersion}</bundle.short.version>
<bundle.full.version>${bundle.short.version}.${osgi-version-qualifier}</bundle.full.version>
</properties>
<scm>
<connection>${osbp.scm.connection}</connection>
<developerConnection>${osbp.scm.connection.dev}</developerConnection>
<tag>HEAD</tag>
</scm>
<profiles>
<profile>
<id>not-in-eclipse-mbp</id>
<!-- activated in normal Maven build -->
<activation>
<file>
<missing>.osbp.releng.itests</missing>
</file>
<property>
<name>!m2e.version</name>
</property>
</activation>
<properties>
<osgi-version-qualifier>${maven.build.timestamp}</osgi-version-qualifier>
<baseline.failOnError>true</baseline.failOnError>
<baseline.failOnWarning>true</baseline.failOnWarning>
</properties>
<dependencies>
<dependency>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-core</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-integration</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-library</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<pluginManagement>
<plugins>
<plugin>
<artifactId>maven-clean-plugin</artifactId>
<configuration>
<filesets>
<fileset>
<directory>${basedir}</directory>
<includes>
<include>*.jar</include>
<include>META-INF/</include>
<include>OSGI-INF/</include>
</includes>
<followSymlinks>false</followSymlinks>
</fileset>
</filesets>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<version>${mbp.version}</version>
<extensions>true</extensions>
<configuration>
<obrRepository>NONE</obrRepository>
</configuration>
<executions>
<execution>
<id>bundle</id>
<goals>
<goal>bundle</goal>
</goals>
<inherited>true</inherited>
<configuration>
<instructions>
<Bundle-Vendor>Eclipse OSBP</Bundle-Vendor>
<Bundle-Name>${project.name}</Bundle-Name>
<!-- <Bundle-SymbolicName>${project.artifactId}</Bundle-SymbolicName> -->
<Bundle-Version>${bundle.full.version}</Bundle-Version>
<Bundle-ActivationPolicy>lazy</Bundle-ActivationPolicy>
<_snapshot>${osgi-version-qualifier}</_snapshot>
<Bundle-RequiredExecutionEnvironment>JavaSE-1.8</Bundle-RequiredExecutionEnvironment>
<_dsannotations>*</_dsannotations>
<!-- <Include-Resource>{maven-resources},META-INF/LICENSE=LICENSE,META-INF/NOTICE=NOTICE,META-INF/DEPENDENCIES=DEPENDENCIES</Include-Resource> -->
<_versionpolicy>[$(version;==;$(@)),$(version;+;$(@)))</_versionpolicy>
<_removeheaders>Private-Package,Ignore-Package,Include-Resource</_removeheaders>
</instructions>
</configuration>
</execution>
<execution>
<id>baseline</id>
<goals>
<goal>baseline</goal>
</goals>
<configuration>
<skip>${osbp.build.ignore.baseline}</skip>
<failOnWarning>${baseline.failOnWarning}</failOnWarning>
<failOnError>${baseline.failOnError}</failOnError>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>${surefire.version}</version>
<configuration>
<argLine>${jacoco.agent.ut.arg}</argLine>
<skipTests>${osbp.skip.tests}</skipTests>
<!-- Specific to generate mapping between tests and covered code -->
<properties>
<property>
<name>listener</name>
<value>org.sonar.java.jacoco.JUnitListener</value>
</property>
</properties>
</configuration>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
</plugin>
</plugins>
</build>
<reporting>
<plugins>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<reportSets>
<reportSet>
<id>baseline-report</id>
<reports>
<report>baseline-report</report>
</reports>
</reportSet>
</reportSets>
</plugin>
</plugins>
</reporting>
</profile>
<profile>
<id>in-eclipse-mbp</id>
<!-- activated only when running in m2e (eclipse) -->
<activation>
<file>
<missing>.osbp.releng.itests</missing>
</file>
<property>
<name>m2e.version</name>
</property>
</activation>
<properties>
<osgi-version-qualifier>qualifier</osgi-version-qualifier>
</properties>
<dependencies>
<dependency>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-core</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-integration</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-library</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
</plugin>
</plugins>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<version>${mbp.version}</version>
<extensions>true</extensions>
<configuration>
<obrRepository>NONE</obrRepository>
<unpackBundle>true</unpackBundle>
<manifestLocation>${basedir}/META-INF</manifestLocation>
<instructions>
<Bundle-Vendor>Loetz GmbH&amp;Co.KG - 69115 Heidelberg - Germany</Bundle-Vendor>
<Bundle-Name>${project.name}</Bundle-Name>
<Bundle-SymbolicName>${project.artifactId}</Bundle-SymbolicName>
<Bundle-Version>${bundle.full.version}</Bundle-Version>
<Bundle-ActivationPolicy>lazy</Bundle-ActivationPolicy>
<_snapshot>${osgi-version-qualifier}</_snapshot>
<Bundle-RequiredExecutionEnvironment>JavaSE-1.7</Bundle-RequiredExecutionEnvironment>
<_dsannotations>*</_dsannotations>
</instructions>
</configuration>
</plugin>
<plugin>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>copy-dependencies</id>
<phase>prepare-package</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<configuration>
<outputDirectory>${basedir}</outputDirectory>
<includeScope>runtime</includeScope>
<overWriteReleases>false</overWriteReleases>
<overWriteSnapshots>true</overWriteSnapshots>
<overWriteIfNewer>true</overWriteIfNewer>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<execution>
<id>delete-osgi-inf</id>
<phase>validate</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<target>
<taskdef resource="net/sf/antcontrib/antlib.xml"/>
<taskdef resource="net/sf/antcontrib/antcontrib.properties"/>
<if>
<available file="${basedir}/OSGI-INF" type="dir"/>
<then>
<delete dir="${basedir}/OSGI-INF" quiet="true"/>
</then>
</if>
</target>
</configuration>
</execution>
<execution>
<id>copy-osgi-inf</id>
<phase>package</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<target>
<taskdef resource="net/sf/antcontrib/antlib.xml"/>
<taskdef resource="net/sf/antcontrib/antcontrib.properties"/>
<if>
<available file="${project.build.outputDirectory}/OSGI-INF" type="dir"/>
<then>
<echo message="Copying OSGI-INF..." level="info"/>
<mkdir dir="${basedir}/OSGI-INF"/>
<copy todir="${basedir}/OSGI-INF">
<fileset dir="${project.build.outputDirectory}/OSGI-INF"/>
</copy>
</then>
</if>
</target>
</configuration>
</execution>
<execution>
<id>copy-meta-inf</id>
<phase>package</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<target>
<taskdef resource="net/sf/antcontrib/antlib.xml"/>
<taskdef resource="net/sf/antcontrib/antcontrib.properties"/>
<if>
<available file="${basedir}/META-INF/MANIFEST.MF" type="file"/>
<then>
<echo message="Copying META-INF/MANIFEST.MF..." level="info"/>
<mkdir dir="${project.build.outputDirectory}/META-INF"/>
<copy file="${basedir}/META-INF/MANIFEST.MF" todir="${project.build.outputDirectory}/META-INF" overwrite="true"/>
</then>
</if>
</target>
</configuration>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>org.apache.ant</groupId>
<artifactId>ant</artifactId>
<version>${ant-version}</version>
</dependency>
<dependency>
<groupId>ant-contrib</groupId>
<artifactId>ant-contrib</artifactId>
<version>1.0b3</version>
<exclusions>
<exclusion>
<groupId>ant</groupId>
<artifactId>ant</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
</plugin>
</plugins>
</pluginManagement>
<!-- <resources> -->
<!-- <resource> -->
<!-- pde (project root) -->
<!-- <directory>src/main/resources</directory> -->
<!-- <targetPath> -->
<!-- ${basedir} -->
<!-- </targetPath> -->
<!-- <includes> -->
<!-- <include>plugin.xml</include> -->
<!-- </includes> -->
<!-- </resource> -->
<!-- <resource> -->
<!-- normal (output dir , /target/classes) -->
<!-- <directory>src/main/resources</directory> -->
<!-- <targetPath> -->
<!-- ${project.build.outputDirectory} -->
<!-- </targetPath> -->
<!-- </resource> -->
<!-- </resources> -->
</build>
</profile>
<profile>
<id>no-add-qualifier</id>
<activation>
<property>
<name>osbp.build.noqualifier</name>
</property>
</activation>
<properties>
<baseline.failOnError>true</baseline.failOnError>
<baseline.failOnWarning>true</baseline.failOnWarning>
</properties>
<dependencies>
<dependency>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-core</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-integration</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-library</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<pluginManagement>
<plugins>
<plugin>
<artifactId>maven-clean-plugin</artifactId>
<configuration>
<filesets>
<fileset>
<directory>${basedir}</directory>
<includes>
<include>*.jar</include>
<include>META-INF/</include>
<include>OSGI-INF/</include>
</includes>
<followSymlinks>false</followSymlinks>
</fileset>
</filesets>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<version>${mbp.version}</version>
<extensions>true</extensions>
<configuration>
<obrRepository>NONE</obrRepository>
</configuration>
<executions>
<execution>
<id>bundle</id>
<goals>
<goal>bundle</goal>
</goals>
<inherited>true</inherited>
<configuration>
<instructions>
<Bundle-Vendor>Loetz GmbH&amp;Co.KG, 69115 Heidelberg, Germany</Bundle-Vendor>
<Bundle-Name>${project.name}</Bundle-Name>
<Bundle-SymbolicName>${project.artifactId}</Bundle-SymbolicName>
<Bundle-ActivationPolicy>lazy</Bundle-ActivationPolicy>
<Bundle-RequiredExecutionEnvironment>JavaSE-1.7</Bundle-RequiredExecutionEnvironment>
<_dsannotations>*</_dsannotations>
<!-- <Include-Resource>{maven-resources},META-INF/LICENSE=LICENSE,META-INF/NOTICE=NOTICE,META-INF/DEPENDENCIES=DEPENDENCIES</Include-Resource> -->
<_versionpolicy>[$(version;==;$(@)),$(version;+;$(@)))</_versionpolicy>
<_removeheaders>Private-Package,Ignore-Package,Include-Resource</_removeheaders>
</instructions>
</configuration>
</execution>
<execution>
<id>baseline</id>
<goals>
<goal>baseline</goal>
</goals>
<configuration>
<skip>${osbp.build.ignore.baseline}</skip>
<failOnWarning>${baseline.failOnWarning}</failOnWarning>
<failOnError>${baseline.failOnError}</failOnError>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>${surefire.version}</version>
<configuration>
<argLine>${jacoco.agent.ut.arg}</argLine>
<skipTests>${osbp.skip.tests}</skipTests>
<!-- Specific to generate mapping between tests and covered code -->
<properties>
<property>
<name>listener</name>
<value>org.sonar.java.jacoco.JUnitListener</value>
</property>
</properties>
</configuration>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
</plugin>
</plugins>
</build>
<reporting>
<plugins>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<reportSets>
<reportSet>
<id>baseline-report</id>
<reports>
<report>baseline-report</report>
</reports>
</reportSet>
</reportSets>
</plugin>
</plugins>
</reporting>
</profile>
<profile>
<id>whenIsIntegrationTestsProject</id>
<activation>
<file>
<exists>.osbp.releng.itests</exists>
</file>
</activation>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.eclipse.osbp.releng.maven</groupId>
<artifactId>org.eclipse.osbp.releng.maven.fpom.node</artifactId>
<version>0.9.0-SNAPSHOT</version>
<type>pom</type>
</dependency>
<dependency>
<groupId>org.eclipse.osbp.releng.maven</groupId>
<artifactId>org.eclipse.osbp.releng.maven.fpom.itests</artifactId>
<version>0.9.0-SNAPSHOT</version>
<type>pom</type>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-core</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-integration</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-library</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.eclipse.osbp.releng.maven</groupId>
<artifactId>org.eclipse.osbp.releng.maven.fpom.node</artifactId>
<type>pom</type>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.eclipse.osbp.releng.maven</groupId>
<artifactId>org.eclipse.osbp.releng.maven.fpom.itests</artifactId>
<type>pom</type>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.ops4j.pax.exam</groupId>
<artifactId>maven-paxexam-plugin</artifactId>
<version>1.2.4</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<version>${surefire.version}</version>
<inherited>true</inherited>
<configuration>
<argLine>${jacoco.agent.it.arg} -Xmx1024m -XX:MaxPermSize=256m</argLine>
<failIfNoTests>false</failIfNoTests>
<includes>
<include>**/*IntegrationTest.java</include>
</includes>
<systemPropertyVariables>
<jacoco.agent.it.arg>${jacoco.agent.it.arg}</jacoco.agent.it.arg>
<osbp.itests.framework>${osbp.itests.framework}</osbp.itests.framework>
<project.version>${project.version}</project.version>
<paxexam.version>${paxexam.version}</paxexam.version>
</systemPropertyVariables>
<!-- Specific to generate mapping between tests and covered code -->
<properties>
<property>
<name>osbp.itests.framework</name>
<value>${osbp.itests.framework}</value>
</property>
<property>
<name>listener</name>
<value>org.sonar.java.jacoco.JUnitListener</value>
</property>
</properties>
<!-- Let's put failsafe reports with surefire to have access to tests
failures/success reports in sonar -->
<reportsDirectory>${project.build.directory}${file.separator}surefire-reports</reportsDirectory>
</configuration>
<executions>
<execution>
<id>integration-test</id>
<goals>
<goal>integration-test</goal>
</goals>
</execution>
<execution>
<id>verify</id>
<goals>
<goal>verify</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<plugin>
<groupId>org.ops4j.pax.exam</groupId>
<artifactId>maven-paxexam-plugin</artifactId>
<executions>
<execution>
<id>generate-config</id>
<phase>generate-resources</phase>
<goals>
<goal>generate-depends-file</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<skip>true</skip>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<configuration>
<systemProperties>
<property>
<name>project.version</name>
<value>${project.version}</value>
</property>
<property>
<name>osbp.itests.framework</name>
<value>${osbp.itests.framework}</value>
</property>
</systemProperties>
</configuration>
<executions>
<execution>
<id>integration-test</id>
<goals>
<goal>integration-test</goal>
</goals>
</execution>
<execution>
<id>verify</id>
<phase>verify</phase>
<goals>
<goal>verify</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<!--
<profile>
<id>whenIsIntegrationTestsProjectWithNoDefaultFramework</id>
<activation>
<file>
<exists>.osbp.releng.itests</exists>
</file>
<property>
<name>!osbp.itests.framework</name>
</property>
</activation>
<properties>
<osbp.itests.framework>equinox_luna</osbp.itests.framework>
</properties>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.eclipse.osbp.releng.maven</groupId>
<artifactId>org.eclipse.osbp.releng.maven.fpom.equinox.luna</artifactId>
<version>0.9.0-SNAPSHOT</version>
<type>pom</type>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<groupId>org.eclipse.osbp.releng.maven</groupId>
<artifactId>org.eclipse.osbp.releng.maven.fpom.equinox.luna</artifactId>
<type>pom</type>
<scope>test</scope>
</dependency>
</dependencies>
</profile>
<profile>
<id>whenIsIntegrationTestsProject.felix</id>
<activation>
<property>
<name>osbp.itests.framework</name>
<value>felix</value>
</property>
<file>
<exists>.osbp.releng.itests</exists>
</file>
</activation>
<dependencies>
<dependency>
<groupId>org.eclipse.osbp.releng.maven</groupId>
<artifactId>org.eclipse.osbp.releng.maven.fpom.felix</artifactId>
<version>0.9.0-SNAPSHOT</version>
<type>pom</type>
<scope>test</scope>
</dependency>
</dependencies>
</profile>
<profile>
<id>whenIsIntegrationTestsProject.equinox.luna</id>
<!- - LUNA 3.10 - ->
<activation>
<property>
<name>osbp.itests.framework</name>
<value>equinox_luna</value>
</property>
<file>
<exists>.osbp.releng.itests</exists>
</file>
</activation>
<dependencies>
<dependency>
<groupId>org.eclipse.osbp.releng.maven</groupId>
<artifactId>org.eclipse.osbp.releng.maven.fpom.equinox.luna</artifactId>
<version>0.9.0-SNAPSHOT</version>
<type>pom</type>
<scope>test</scope>
</dependency>
</dependencies>
</profile>
-->
<profile>
<id>javadoc</id>
<activation>
<property>
<name>osbp.build.full</name>
</property>
</activation>
<reporting>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>${report.javadoc.version}</version>
<configuration>
<skip>${maven.javadoc.skip}</skip>
<quiet>${maven.javadoc.quiet}</quiet>
<charset>${project.reporting.outputEncoding}</charset>
<links>
<link>http://docs.oracle.com/javase/${javadocJreApiVersion}/docs/api/</link>
</links>
<!--<excludePackageNames>${maven.javadoc.excludePackageNames}</excludePackageNames> -->
<tagletArtifacts>
<tagletArtifact>
<groupId>org.apache.maven.plugin-tools</groupId>
<artifactId>maven-plugin-tools-javadoc</artifactId>
<version>0.9.0-SNAPSHOT</version>
</tagletArtifact>
<tagletArtifact>
<groupId>org.codehaus.plexus</groupId>
<artifactId>plexus-component-javadoc</artifactId>
<version>0.9.0-SNAPSHOT</version>
</tagletArtifact>
</tagletArtifacts>
</configuration>
<reportSets>
<reportSet>
<id>non-aggregate</id>
<reports>
<report>javadoc</report>
<!-- <report>test-javadoc</report> -->
</reports>
</reportSet>
</reportSets>
</plugin>
</plugins>
</reporting>
<build>
<plugins>
<!-- Generates Javadoc -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<executions>
<execution>
<id>attach-javadocs</id>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>sources</id>
<activation>
<property>
<name>osbp.build.full</name>
</property>
</activation>
<build>
<plugins>
<!-- Generates jar with sources -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>2.2.1</version>
<executions>
<execution>
<id>attach-sources</id>
<phase>verify</phase>
<goals>
<goal>jar-no-fork</goal>
</goals>
</execution>
</executions>
<configuration>
<excludeResources>true</excludeResources>
<excludes>
<exclude>**/jars/**</exclude>
</excludes>
<archive>
<manifestEntries>
<Bundle-ManifestVersion>2</Bundle-ManifestVersion>
<Bundle-Name>${project.name} (source)</Bundle-Name>
<Bundle-SymbolicName>${project.artifactId}.source</Bundle-SymbolicName>
<Bundle-Vendor>Loetz GmbH&amp;Co.KG - 69115 Heidelberg - Germany</Bundle-Vendor>
<Bundle-Version>${bundle.full.version}</Bundle-Version>
<Eclipse-SourceBundle>${project.artifactId};version="${bundle.full.version}";roots:="."</Eclipse-SourceBundle>
</manifestEntries>
</archive>
</configuration>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>pre-release</id>
<activation>
<property>
<name>osbp.build.release</name>
</property>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
<inherited>true</inherited>
<configuration>
<failFast>true</failFast>
<fail>true</fail>
</configuration>
<executions>
<execution>
<id>check-project-files</id>
<goals>
<goal>enforce</goal>
</goals>
<phase>initialize</phase>
<configuration>
<rules>
<requireFilesExist>
<files>
<file>LICENSE.txt</file>
<!-- <file>NOTICE.txt</file> -->
<!-- <file>README.txt</file> -->
<!--<file>changelog.txt</file> -->
</files>
</requireFilesExist>
</rules>
<ignoreCache>true</ignoreCache>
<failFast>true</failFast>
<fail>true</fail>
</configuration>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>org.codehaus.mojo</groupId>
<artifactId>extra-enforcer-rules</artifactId>
<version>1.0-beta-2</version>
</dependency>
</dependencies>
</plugin>
<!-- Checks compatibility with Java API -->
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>animal-sniffer-maven-plugin</artifactId>
<executions>
<execution>
<id>enforce-java-api-compatibility</id>
<phase>verify</phase>
<goals>
<goal>check</goal>
</goals>
<configuration>
<signature>
<groupId>org.codehaus.mojo.signature</groupId>
<artifactId>java17</artifactId>
<version>0.9.0-SNAPSHOT</version>
</signature>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>sign</id>
<activation>
<property>
<name>maven-jarsigner-plugin.keystore</name>
</property>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jarsigner-plugin</artifactId>
<!-- <version>1.3.2</version> -->
<configuration>
<verify>true</verify>
<storetype>jks</storetype>
<tsa>https://timestamp.geotrust.com/tsa</tsa>
<keystore>${maven-jarsigner-plugin.keystore}</keystore>
<alias>${maven-jarsigner-plugin.alias}</alias>
<storepass>${maven-jarsigner-plugin.storepass}</storepass>
<verbose>true</verbose>
</configuration>
<executions>
<execution>
<id>sign</id>
<goals>
<goal>sign</goal>
</goals>
</execution>
<execution>
<id>verify</id>
<goals>
<goal>verify</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>${surefire.version}</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<version>${surefire.version}</version>
</plugin>
</plugins>
</pluginManagement>
</build>
<dependencies>
<!-- those deps must only be used for unit tests. in order to run osgi
it tests you must use the proper bundle from org.eclipse.osbp.osgi group -->
<dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.core</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.annotation</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.compendium</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<scope>test</scope>
</dependency>
<!-- <dependency> -->
<!-- <groupId>org.eclipse.osbp.releng.maven</groupId> -->
<!-- <artifactId>org.eclipse.osbp.releng.maven.licenses</artifactId> -->
<!-- <classifier>third-party</classifier> -->
<!-- <type>properties</type> -->
<!-- <scope>provided</scope> -->
<!-- </dependency> -->
</dependencies>
</project>