| <?xml version="1.0" encoding="UTF-8"?> |
| <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>org.eclipse.gemini.blueprint</groupId> |
| <artifactId>gemini-blueprint</artifactId> |
| <!-- Note: When updating the version, ensure it is a valid OSGi version --> |
| <version>3.0.0.M1-SNAPSHOT</version> |
| <packaging>pom</packaging> |
| <name>Gemini Blueprint</name> |
| <url>http://www.eclipse.org/gemini/blueprint/</url> |
| <description> |
| Eclipse Gemini Blueprint project makes it easy to build Java applications that run in an OSGi framework. By |
| using Gemini Blueprint, applications benefit from using a |
| better separation of modules, the ability to dynamically add, remove, and update modules in a running system, |
| the ability to deploy multiple versions of a module |
| simultaneously (and have clients automatically bind to the appropriate one), and a dynamic service model. |
| </description> |
| <inceptionYear>2006</inceptionYear> |
| |
| <properties> |
| <!-- Source file encoding --> |
| <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> |
| |
| <!-- Spring version --> |
| <spring.maven.artifact.version>5.0.3.RELEASE_1</spring.maven.artifact.version> |
| <spring.base.version>5.0.0</spring.base.version> |
| |
| <symName.prefix>org.eclipse.gemini.blueprint</symName.prefix> |
| <spring.osgi.symbolic.name>${project.groupId}.${project.artifactId}</spring.osgi.symbolic.name> |
| |
| <spring.osgi.license.loc>..</spring.osgi.license.loc> |
| |
| <!-- other properties --> |
| <slf4j.version>1.7.5</slf4j.version> |
| <logback.version>1.0.13</logback.version> |
| <env.buildPlan /> |
| <env.buildNumber /> |
| |
| <!-- compiled against osgi Revision --> |
| <osgi.ver>5.0.0</osgi.ver> |
| <!-- platform versions --> |
| <!-- equinox - repackaged in ${basedir}/lib/equinox --> |
| <equinox.ver>3.9.1.v20130814-1242</equinox.ver> |
| <!-- Knopflerfish --> |
| <kf.ver>7.1.2</kf.ver> |
| <!-- Felix 4.4.x supports OSGi R5 --> |
| <felix.ver>4.4.0</felix.ver> |
| |
| <!-- javadoc configuration --> |
| <javadoc.loc>${basedir}/docs/src/javadoc</javadoc.loc> |
| |
| <clover.ver>4.0.6</clover.ver> |
| <clover.argLine /> |
| <clover.skip>false</clover.skip> |
| |
| <findbugs.skip>false</findbugs.skip> |
| |
| <!-- security options for integration testing --> |
| <security.argLine /> |
| <policy.url>..${file.separator}policy.all</policy.url> |
| |
| <!-- common version ranges --> |
| <spring.version.range.nq>[${spring.base.version},6)</spring.version.range.nq> |
| <spring.version.range>"${spring.version.range.nq}"</spring.version.range> |
| <gemini.blueprint.version.range.nq>[${project.version},${project.version}]</gemini.blueprint.version.range.nq> |
| <gemini.blueprint.version.range>"${gemini.blueprint.version.range.nq}"</gemini.blueprint.version.range> |
| <logging.version.range>"[1.0,2.0)"</logging.version.range> |
| </properties> |
| |
| <!-- ============================================= --> |
| <!-- Basic configuration: JIRA, SCM, CI, devs etc. --> |
| <!-- ============================================= --> |
| |
| <issueManagement> |
| <system>Bugzilla</system> |
| <url>http://bugs.eclipse.org/bugs/buglist.cgi?product=Gemini.Blueprint</url> |
| </issueManagement> |
| |
| <!--<ciManagement>--> |
| <!--<system>bamboo</system>--> |
| <!--<url>http://build.springframework.org/browse/OSGI-TRUNK</url>--> |
| <!--<notifiers>--> |
| <!--<notifier>--> |
| <!--<type>mail</type>--> |
| <!--<configuration>--> |
| <!--<address>adrian.colyer@SpringSource.com</address>--> |
| <!--</configuration>--> |
| <!--</notifier>--> |
| <!--<notifier>--> |
| <!--<type>mail</type>--> |
| <!--<configuration>--> |
| <!--<address>costin.leau@SpringSource.com</address>--> |
| <!--</configuration>--> |
| <!--</notifier>--> |
| <!--</notifiers>--> |
| <!--</ciManagement>--> |
| |
| <scm> |
| <url>http://git.eclipse.org/c/gemini.blueprint/org.eclipse.gemini.blueprint.git/</url> |
| <connection>scm:git:git//git.eclipse.org/gitroot/gemini.blueprint/org.eclipse.gemini.blueprint.git</connection> |
| <!-- hudson-based releases require this SCM url to point to the local FS, see https://bugs.eclipse.org/bugs/show_bug.cgi?id=512974 --> |
| <developerConnection>scm:git:file:///gitroot/gemini.blueprint/org.eclipse.gemini.blueprint.git</developerConnection> |
| <tag>HEAD</tag> |
| </scm> |
| |
| <developers> |
| <developer> |
| <id>adrian-colyer</id> |
| <name>Adrian Colyer</name> |
| <email>adrian.colyer at SpringSource.com</email> |
| <organization>SpringSource, division of VMware</organization> |
| <organizationUrl>http://www.SpringSource.com</organizationUrl> |
| <roles> |
| <role>Developer</role> |
| </roles> |
| <timezone>0</timezone> |
| </developer> |
| <developer> |
| <id>jconstantine</id> |
| <name>Hal Hildebrand</name> |
| <email>hal.hildebrand at oracle.com</email> |
| <organization>Oracle</organization> |
| <organizationUrl>http://www.oracle.com</organizationUrl> |
| <roles> |
| <role>Developer</role> |
| </roles> |
| <timezone>-8</timezone> |
| </developer> |
| <developer> |
| <id>costin_leau</id> |
| <name>Costin Leau</name> |
| <email>costin.leau at SpringSource.com</email> |
| <organization>SpringSource, division of VMware</organization> |
| <organizationUrl>http://www.SpringSource.com</organizationUrl> |
| <roles> |
| <role>Project Admin</role> |
| <role>Developer</role> |
| </roles> |
| <timezone>+2</timezone> |
| </developer> |
| <developer> |
| <id>andypiper</id> |
| <name>Andy Piper</name> |
| <email>andy at oracle.com</email> |
| <organization>Oracle</organization> |
| <organizationUrl>http://www.oracle.com</organizationUrl> |
| <roles> |
| <role>Developer</role> |
| </roles> |
| <timezone>0</timezone> |
| </developer> |
| <developer> |
| <id>olaf-otto</id> |
| <name>Olaf Otto</name> |
| <email>olaf at x100 de</email> |
| <organization>Unic AG</organization> |
| <organizationUrl>https://www.unic.com</organizationUrl> |
| <roles> |
| <role>Developer</role> |
| <role>Project lead</role> |
| </roles> |
| <timezone>+2</timezone> |
| </developer> |
| |
| </developers> |
| |
| <licenses> |
| <license> |
| <name>Eclipse Public License, Version 1.0</name> |
| <url>http://www.eclipse.org/legal/epl-v10.html</url> |
| </license> |
| <license> |
| <name>Apache License, Version 2.0</name> |
| <url>http://www.apache.org/licenses/LICENSE-2.0</url> |
| </license> |
| </licenses> |
| |
| <!-- =================================================== --> |
| <!-- Project Modules, Dependencies, Plugins and Profiles --> |
| <!-- =================================================== --> |
| |
| <!-- modules for Spring-OSGi --> |
| <modules> |
| <module>mock</module> |
| <module>io</module> |
| <module>core</module> |
| <module>extender</module> |
| <module>extensions</module> |
| <module>test-support</module> |
| </modules> |
| |
| <dependencyManagement> |
| <dependencies> |
| <!-- Gemini Blueprint --> |
| <dependency> |
| <groupId>org.eclipse.gemini.blueprint</groupId> |
| <artifactId>gemini-blueprint-mock</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.eclipse.gemini.blueprint</groupId> |
| <artifactId>gemini-blueprint-io</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.eclipse.gemini.blueprint</groupId> |
| <artifactId>gemini-blueprint-core</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.eclipse.gemini.blueprint</groupId> |
| <artifactId>gemini-blueprint-extender</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.eclipse.gemini.blueprint</groupId> |
| <artifactId>gemini-blueprint-test</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| |
| <!-- Spring --> |
| <dependency> |
| <groupId>org.apache.servicemix.bundles</groupId> |
| <artifactId>org.apache.servicemix.bundles.spring-aop</artifactId> |
| <version>${spring.maven.artifact.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.apache.servicemix.bundles</groupId> |
| <artifactId>org.apache.servicemix.bundles.spring-beans</artifactId> |
| <version>${spring.maven.artifact.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.apache.servicemix.bundles</groupId> |
| <artifactId>org.apache.servicemix.bundles.spring-core</artifactId> |
| <version>${spring.maven.artifact.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.apache.servicemix.bundles</groupId> |
| <artifactId>org.apache.servicemix.bundles.spring-context</artifactId> |
| <version>${spring.maven.artifact.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.apache.servicemix.bundles</groupId> |
| <artifactId>org.apache.servicemix.bundles.spring-expression</artifactId> |
| <version>${spring.maven.artifact.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.apache.servicemix.bundles</groupId> |
| <artifactId>org.apache.servicemix.bundles.spring-test</artifactId> |
| <version>${spring.maven.artifact.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.apache.servicemix.bundles</groupId> |
| <artifactId>org.apache.servicemix.bundles.aopalliance</artifactId> |
| <version>1.0_6</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.osgi</groupId> |
| <artifactId>org.osgi.core</artifactId> |
| <version>${osgi.ver}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.osgi</groupId> |
| <artifactId>org.osgi.compendium</artifactId> |
| <version>${osgi.ver}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.apache.servicemix.bundles</groupId> |
| <artifactId>org.apache.servicemix.bundles.junit</artifactId> |
| <version>4.12_1</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.eclipse.birt.runtime</groupId> |
| <artifactId>org.eclipse.osgi</artifactId> |
| <version>${equinox.ver}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.knopflerfish</groupId> |
| <artifactId>framework</artifactId> |
| <version>${kf.ver}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.apache.felix</groupId> |
| <artifactId>org.apache.felix.main</artifactId> |
| <version>${felix.ver}</version> |
| <type>jar</type> |
| <scope>provided</scope> |
| <exclusions> |
| <exclusion> |
| <groupId>org.apache.felix</groupId> |
| <artifactId>org.apache.felix.framework</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| |
| </dependencies> |
| |
| </dependencyManagement> |
| |
| <!-- shared dependencies across modules --> |
| <dependencies> |
| <dependency> |
| <groupId>javax.inject</groupId> |
| <artifactId>javax.inject</artifactId> |
| <version>1</version> |
| </dependency> |
| |
| <!-- junit --> |
| <dependency> |
| <groupId>org.apache.servicemix.bundles</groupId> |
| <artifactId>org.apache.servicemix.bundles.junit</artifactId> |
| <scope>test</scope> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.easymock</groupId> |
| <artifactId>easymock</artifactId> |
| <version>3.2</version> |
| <scope>test</scope> |
| <exclusions> |
| <exclusion> |
| <groupId>cglib</groupId> |
| <artifactId>cglib-nodep</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.mockito</groupId> |
| <artifactId>mockito-all</artifactId> |
| <version>1.9.5</version> |
| <scope>test</scope> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.assertj</groupId> |
| <artifactId>assertj-core</artifactId> |
| <version>3.6.2</version> |
| <scope>test</scope> |
| </dependency> |
| |
| <!-- commons-logging in slf4j wrapper --> |
| <dependency> |
| <groupId>org.slf4j</groupId> |
| <artifactId>jcl-over-slf4j</artifactId> |
| <version>${slf4j.version}</version> |
| <scope>provided</scope> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-api</artifactId> |
| <version>${slf4j.version}</version> |
| <scope>provided</scope> |
| </dependency> |
| |
| <dependency> |
| <groupId>ch.qos.logback</groupId> |
| <artifactId>logback-classic</artifactId> |
| <version>${logback.version}</version> |
| <scope>provided</scope> |
| </dependency> |
| </dependencies> |
| |
| <build> |
| <resources> |
| <resource> |
| <filtering>true</filtering> |
| <directory>src/main/resources</directory> |
| <excludes> |
| <exclude>git.properties</exclude> |
| </excludes> |
| </resource> |
| </resources> |
| |
| <pluginManagement> |
| <plugins> |
| <plugin> |
| <!-- |
| Do not deploy using the default deploy plugin, but rather using the |
| nexus-staging-maven-plugin (see "release" profile). |
| --> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-deploy-plugin</artifactId> |
| <version>2.8.2</version> |
| <configuration> |
| <skip>true</skip> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-release-plugin</artifactId> |
| <version>2.5.3</version> |
| <configuration> |
| <!-- one release version for all modules --> |
| <autoVersionSubmodules>true</autoVersionSubmodules> |
| <!-- Simple release tag format, e.g. "2.4.0" --> |
| <tagNameFormat>@{project.version}</tagNameFormat> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>biz.aQute.bnd</groupId> |
| <artifactId>bnd-maven-plugin</artifactId> |
| <version>3.3.0</version> |
| <executions> |
| <execution> |
| <goals> |
| <goal>bnd-process</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>pl.project13.maven</groupId> |
| <artifactId>git-commit-id-plugin</artifactId> |
| <version>2.2.2</version> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-resources-plugin</artifactId> |
| <version>3.0.2</version> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-site-plugin</artifactId> |
| <version>3.6</version> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-install-plugin</artifactId> |
| <version>2.5.2</version> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-assembly-plugin</artifactId> |
| <version>3.0.0</version> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-clean-plugin</artifactId> |
| <version>3.0.0</version> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-compiler-plugin</artifactId> |
| <version>3.6.1</version> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-plugin-plugin</artifactId> |
| <version>3.5</version> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-surefire-plugin</artifactId> |
| <version>2.19.1</version> |
| <dependencies> |
| <!-- force surefire to use new junit 4.7+ runner, it would normally auto detect this --> |
| <!-- but since we're not using the official junit dependency it is unable to do so.--> |
| <!-- - this makes things like @Ignore work. --> |
| <dependency> |
| <groupId>org.apache.maven.surefire</groupId> |
| <artifactId>surefire-junit47</artifactId> |
| <version>2.19.1</version> |
| </dependency> |
| </dependencies> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-jar-plugin</artifactId> |
| <version>3.0.2</version> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-war-plugin</artifactId> |
| <version>3.0.0</version> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-javadoc-plugin</artifactId> |
| <version>2.10.4</version> |
| <configuration> |
| <quiet>true</quiet> |
| <additionalparam>-Xdoclint:none</additionalparam> |
| </configuration> |
| <executions> |
| <execution> |
| <id>attach-javadocs</id> |
| <goals> |
| <goal>jar</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-jxr-plugin</artifactId> |
| <version>2.5</version> |
| </plugin> |
| <plugin> |
| <groupId>org.codehaus.mojo</groupId> |
| <artifactId>jdepend-maven-plugin</artifactId> |
| <version>2.0</version> |
| </plugin> |
| <plugin> |
| <groupId>org.codehaus.mojo</groupId> |
| <artifactId>findbugs-maven-plugin</artifactId> |
| <version>3.0.4</version> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-antrun-plugin</artifactId> |
| <version>1.8</version> |
| </plugin> |
| <plugin> |
| <groupId>com.atlassian.maven.plugins</groupId> |
| <artifactId>maven-clover2-plugin</artifactId> |
| <version>${clover.ver}</version> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-pmd-plugin</artifactId> |
| <version>3.7</version> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-surefire-report-plugin</artifactId> |
| <version>2.19.1</version> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-project-info-reports-plugin</artifactId> |
| <version>2.9</version> |
| </plugin> |
| </plugins> |
| </pluginManagement> |
| |
| <plugins> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-compiler-plugin</artifactId> |
| <version>3.6.1</version> |
| <configuration> |
| <source>1.8</source> |
| <target>1.8</target> |
| </configuration> |
| </plugin> |
| <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> |
| <archive> |
| <manifestEntries> |
| <Bundle-ManifestVersion>2</Bundle-ManifestVersion> |
| <Bundle-Name>${project.artifactId}</Bundle-Name> |
| <Bundle-Version>${project.version}</Bundle-Version> |
| <Bundle-SymbolicName>${spring.osgi.symbolic.name}.source</Bundle-SymbolicName> |
| <Bundle-Vendor>Eclipse Foundation</Bundle-Vendor> |
| <Bundle-DocURL>http://www.eclipse.org/gemini/blueprint/</Bundle-DocURL> |
| <Bundle-License> |
| http://www.opensource.org/licenses/eclipse-1.0.php,http://www.opensource.org/licenses/apache2.0.php |
| </Bundle-License> |
| <Implementation-Title>Eclipse Gemini Blueprint</Implementation-Title> |
| <Implementation-Version>${project.version}</Implementation-Version> |
| <Implementation-Vendor>Eclipse Foundation</Implementation-Vendor> |
| <Implementation-Vendor-Id>org.eclipse.gemini.blueprint</Implementation-Vendor-Id> |
| <Gemini-Blueprint-Version>${project.version}</Gemini-Blueprint-Version> |
| <Spring-Version>${spring.maven.artifact.version}</Spring-Version> |
| <Git-Revision>${git.commit.id.describe}</Git-Revision> |
| <Eclipse-SourceBundle>${spring.osgi.symbolic.name};version="${project.version}";roots:="." |
| </Eclipse-SourceBundle> |
| </manifestEntries> |
| </archive> |
| </configuration> |
| </plugin> |
| |
| <!-- clover plug-in --> |
| <plugin> |
| <groupId>com.atlassian.maven.plugins</groupId> |
| <artifactId>maven-clover2-plugin</artifactId> |
| <configuration> |
| <licenseLocation>${env.clover.licenseLocation}</licenseLocation> |
| <generatePdf>false</generatePdf> |
| <generateXml>true</generateXml> |
| <generateHtml>true</generateHtml> |
| <generateHistorical>false</generateHistorical> |
| <!-- saving history is problematic since each module would override |
| the previous unless a different folder is used for the root |
| <historyDir>${basedir}/clover/history</historyDir> |
| --> |
| <jdk>1.7</jdk> |
| <includesTestSourceRoots>false</includesTestSourceRoots> |
| <skip>${clover.skip}</skip> |
| |
| <!-- exclusions --> |
| <excludes> |
| <!-- integration tests --> |
| <exclude>org/eclipse/gemini/blueprint/iandt/**</exclude> |
| <exclude>org/eclipse/gemini/blueprint/test/parsing/**</exclude> |
| <!-- addressed in 1.2 --> |
| <exclude>org/eclipse/gemini/blueprint/compendium/internal/**</exclude> |
| </excludes> |
| </configuration> |
| </plugin> |
| |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-site-plugin</artifactId> |
| <configuration> |
| <skipDeploy>true</skipDeploy> |
| <reportPlugins> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-jxr-plugin</artifactId> |
| <configuration> |
| <aggregate>true</aggregate> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-surefire-report-plugin</artifactId> |
| <configuration> |
| <aggregate>true</aggregate> |
| </configuration> |
| </plugin> |
| |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-project-info-reports-plugin</artifactId> |
| </plugin> |
| |
| <!-- ============== --> |
| <!-- FindBugs --> |
| <!-- ============== --> |
| <plugin> |
| <groupId>org.codehaus.mojo</groupId> |
| <artifactId>findbugs-maven-plugin</artifactId> |
| <configuration> |
| <!-- |
| <xmlOutput>true</xmlOutput> |
| <xmlOutputDirectory>target</xmlOutputDirectory> |
| --> |
| <threshold>Normal</threshold> |
| <effort>Default</effort> |
| <!-- |
| <debug>true</debug> |
| <relaxed>true</relaxed> |
| --> |
| <skip>${findbugs.skip}</skip> |
| </configuration> |
| </plugin> |
| |
| <!-- =========== --> |
| <!-- PMD --> |
| <!-- =========== --> |
| |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-pmd-plugin</artifactId> |
| <configuration> |
| <targetJdk>1.7</targetJdk> |
| </configuration> |
| </plugin> |
| |
| <!-- ============== --> |
| <!-- jDepend --> |
| <!-- ============== --> |
| <plugin> |
| <groupId>org.codehaus.mojo</groupId> |
| <artifactId>jdepend-maven-plugin</artifactId> |
| </plugin> |
| </reportPlugins> |
| </configuration> |
| </plugin> |
| |
| <plugin> |
| <groupId>pl.project13.maven</groupId> |
| <artifactId>git-commit-id-plugin</artifactId> |
| <executions> |
| <execution> |
| <goals> |
| <goal>revision</goal> |
| </goals> |
| </execution> |
| </executions> |
| |
| <configuration> |
| <!-- that's the default value, you don't have to set it --> |
| <prefix>git</prefix> |
| <!-- that's the default value --> |
| <dateFormat>dd.MM.yyyy '@' HH:mm:ss z</dateFormat> |
| <!-- true is default here, it prints some more information during the build --> |
| <verbose>false</verbose> |
| <!-- |
| If you'd like to tell the plugin where your .git directory is, |
| use this setting, otherwise we'll perform a search trying to |
| figure out the right directory. It's better to add it explicit IMHO. |
| --> |
| <dotGitDirectory>${project.basedir}/.git</dotGitDirectory> |
| |
| <!-- ALTERNATE SETUP - GENERATE FILE --> |
| <!-- |
| If you want to keep git information, even in your WAR file etc, |
| use this mode, which will generate a properties file (with filled out values) |
| which you can then normally read using new Properties().load(/**/) |
| --> |
| |
| <!-- |
| this is true by default; You may want to set this to false, if the plugin should run inside a |
| <packaging>pom</packaging> project. Most projects won't need to override this property. |
| |
| For an use-case for this kind of behaviour see: https://github.com/ktoso/maven-git-commit-id-plugin/issues/21 |
| --> |
| <skipPoms>true</skipPoms> |
| |
| <!-- this is false by default, forces the plugin to generate the git.properties file --> |
| <generateGitPropertiesFile>true</generateGitPropertiesFile> |
| |
| <!-- The path for the to be generated properties file, it's relative to ${project.basedir} --> |
| <generateGitPropertiesFilename>src/main/resources/git.properties</generateGitPropertiesFilename> |
| |
| <!-- true by default, controls whether the plugin will fail when no .git directory is found, when set to false the plugin will just skip execution --> |
| <!-- @since 2.0.4 --> |
| <failOnNoGitDirectory>false</failOnNoGitDirectory> |
| |
| <!-- @since 2.1.0 --> |
| <!-- |
| read up about git-describe on the in man, or it's homepage - it's a really powerful versioning helper |
| and the recommended way to use git-commit-id-plugin. The configuration bellow is optional, |
| by default describe will run "just like git-describe on the command line", even though it's a JGit reimplementation. |
| --> |
| <gitDescribe> |
| <!-- don't generate the describe property --> |
| <skip>false</skip> |
| <!-- |
| if no tag was found "near" this commit, just print the commit's id instead, |
| helpful when you always expect this field to be not-empty |
| --> |
| <always>false</always> |
| <!-- |
| how many chars should be displayed as the commit object id? |
| 7 is git's default, |
| 0 has a special meaning (see end of this README.md), |
| and 40 is the maximum value here |
| --> |
| <abbrev>7</abbrev> |
| |
| <!-- when the build is triggered while the repo is in "dirty state", append this suffix --> |
| <dirty>-dirty</dirty> |
| <!-- |
| always print using the "tag-commits_from_tag-g_commit_id-maybe_dirty" format, even if "on" a tag. |
| The distance will always be 0 if you're "on" the tag. |
| --> |
| <forceLongFormat>false</forceLongFormat> |
| </gitDescribe> |
| </configuration> |
| </plugin> |
| </plugins> |
| </build> |
| |
| |
| <!-- profiles for equinox, knopflerfish, and felix --> |
| <!-- to use these profiles invoke maven with -Pprofile-name, e.g. --> |
| <!-- mvn -Pfelix test --> |
| <profiles> |
| <profile> |
| <id>equinox</id> |
| <dependencies> |
| <dependency> |
| <groupId>org.eclipse.birt.runtime</groupId> |
| <artifactId>org.eclipse.osgi</artifactId> |
| <version>${equinox.ver}</version> |
| <scope>provided</scope> |
| </dependency> |
| </dependencies> |
| <properties> |
| <osgi.test.platform>org.eclipse.gemini.blueprint.test.platform.EquinoxPlatform</osgi.test.platform> |
| </properties> |
| </profile> |
| |
| <profile> |
| <id>knopflerfish</id> |
| <dependencies> |
| <dependency> |
| <groupId>org.knopflerfish</groupId> |
| <artifactId>framework</artifactId> |
| <version>${kf.ver}</version> |
| <scope>provided</scope> |
| </dependency> |
| </dependencies> |
| <properties> |
| <osgi.test.platform>org.eclipse.gemini.blueprint.test.platform.KnopflerfishPlatform</osgi.test.platform> |
| <org.knopflerfish.osgi.setcontextclassloader>true</org.knopflerfish.osgi.setcontextclassloader> |
| </properties> |
| </profile> |
| |
| <profile> |
| <id>felix</id> |
| <dependencies> |
| <dependency> |
| <groupId>org.apache.felix</groupId> |
| <artifactId>org.apache.felix.main</artifactId> |
| <version>${felix.ver}</version> |
| <scope>provided</scope> |
| <exclusions> |
| <exclusion> |
| <groupId>org.apache.felix</groupId> |
| <artifactId>org.apache.felix.framework</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| <dependency> |
| <groupId>org.osgi</groupId> |
| <artifactId>org.osgi.core</artifactId> |
| <scope>compile</scope> |
| </dependency> |
| </dependencies> |
| <properties> |
| <osgi.test.platform>org.eclipse.gemini.blueprint.test.platform.FelixPlatform</osgi.test.platform> |
| </properties> |
| </profile> |
| |
| <!-- integration testing profile --> |
| <profile> |
| <id>it</id> |
| <activation> |
| <property> |
| <name>env-test</name> |
| </property> |
| </activation> |
| <modules> |
| <module>integration-tests</module> |
| </modules> |
| </profile> |
| |
| <!-- Java 2 security enabled profile --> |
| <profile> |
| <id>security</id> |
| <properties> |
| <security.argLine>-Djava.security.manager -Djava.security.policy=${policy.url}</security.argLine> |
| </properties> |
| </profile> |
| |
| <!-- clover profile --> |
| <profile> |
| <id>clover</id> |
| <properties> |
| <clover.enabled>true</clover.enabled> |
| <spring.decorate.osgi.import>!com_cenqua_clover*,${spring.osgi.import}</spring.decorate.osgi.import> |
| <clover.argLine> |
| -Xbootclasspath/a:"${settings.localRepository}${file.separator}com${file.separator}cenqua${file.separator}clover${file.separator}clover${file.separator}${clover.ver}${file.separator}clover-${clover.ver}.jar |
| -Dansi.color" |
| </clover.argLine> |
| </properties> |
| |
| <dependencies> |
| <dependency> |
| <groupId>com.cenqua.clover</groupId> |
| <artifactId>clover</artifactId> |
| <version>${clover.ver}</version> |
| <type>jar</type> |
| <scope>provided</scope> |
| </dependency> |
| </dependencies> |
| |
| </profile> |
| |
| <profile> |
| <!-- |
| The release profile includes all sub modules as their versions must be updated |
| with regard to the release. It enables attaching the sources, signing all artifacts |
| (a prerequisite for releasing to maven central) and generates a all-in-one |
| release + documentation package via the assembly plugin. |
| --> |
| <id>release</id> |
| |
| <modules> |
| <module>core</module> |
| <module>extender</module> |
| <module>extensions</module> |
| <module>integration-tests</module> |
| <module>io</module> |
| <module>mock</module> |
| <module>test-support</module> |
| </modules> |
| |
| <dependencies> |
| <dependency> |
| <!-- |
| The test sources are compiled against this generic dependency. |
| usually, test sources are compiled with regard to the framework chosen for |
| running the integration tests (e.g. felix, knopflerfish...). however, during release |
| they are simply compiled and not executed, thus we need this generic dependency. |
| --> |
| <groupId>org.osgi</groupId> |
| <artifactId>org.osgi.core</artifactId> |
| <scope>compile</scope> |
| </dependency> |
| </dependencies> |
| |
| <build> |
| <plugins> |
| <plugin> |
| <artifactId>maven-assembly-plugin</artifactId> |
| <inherited>false</inherited> |
| <executions> |
| <!-- w/o dependencies --> |
| <execution> |
| <id>wo-dependencies</id> |
| <phase>package</phase> |
| <goals> |
| <goal>single</goal> |
| </goals> |
| <configuration> |
| <appendAssemblyId>false</appendAssemblyId> |
| <descriptors> |
| <descriptor>src/assembly/no-dependencies.xml</descriptor> |
| </descriptors> |
| <attach>false</attach> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <artifactId>maven-site-plugin</artifactId> |
| <executions> |
| <execution> |
| <id>site</id> |
| <goals> |
| <goal>site</goal> |
| </goals> |
| <phase>prepare-package</phase> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-gpg-plugin</artifactId> |
| <version>1.6</version> |
| <executions> |
| <execution> |
| <id>sign-artifacts</id> |
| <phase>verify</phase> |
| <goals> |
| <goal>sign</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.sonatype.plugins</groupId> |
| <artifactId>nexus-staging-maven-plugin</artifactId> |
| <version>1.6.7</version> |
| <extensions>true</extensions> |
| <executions> |
| <execution> |
| <id>default-deploy</id> |
| <phase>deploy</phase> |
| <goals> |
| <goal>deploy</goal> |
| </goals> |
| </execution> |
| </executions> |
| <configuration> |
| <serverId>ossrh</serverId> |
| <nexusUrl>https://oss.sonatype.org/</nexusUrl> |
| <autoReleaseAfterClose>false</autoReleaseAfterClose> |
| <!-- by default, local artifacts are gathered and deployed when the last project module |
| is built. However, the last project module may coincidentally not be deployed (e.g. |
| by skipping this plugin's execution), which results in nothing being deployed. Consequently, |
| deploy each module immediately after it was built. --> |
| <skipLocalStaging>true</skipLocalStaging> |
| </configuration> |
| </plugin> |
| </plugins> |
| </build> |
| </profile> |
| </profiles> |
| |
| |
| <!-- ======================================= --> |
| <!-- Website and reporting --> |
| <!-- ======================================= --> |
| |
| <distributionManagement> |
| <downloadUrl>http://www.eclipse.org/gemini/blueprint/download/</downloadUrl> |
| <snapshotRepository> |
| <id>ossrh</id> |
| <url>https://oss.sonatype.org/content/repositories/snapshots</url> |
| </snapshotRepository> |
| <repository> |
| <id>ossrh</id> |
| <url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url> |
| </repository> |
| </distributionManagement> |
| |
| |
| <!-- ================================================ --> |
| <!-- Repository Configuration --> |
| <!-- ================================================ --> |
| |
| <pluginRepositories> |
| <pluginRepository> |
| <id>maven-repo</id> |
| <name>maven repo</name> |
| <url>http://repo1.maven.org/maven2/</url> |
| </pluginRepository> |
| </pluginRepositories> |
| |
| <repositories> |
| <repository> |
| <id>maven-repo</id> |
| <name>maven repo</name> |
| <url>http://repo1.maven.org/maven2/</url> |
| </repository> |
| |
| <repository> |
| <id>knopflerfish-repo</id> |
| <name>Official Knopflerfish Repository</name> |
| <url>http://www.knopflerfish.org/maven2/</url> |
| </repository> |
| </repositories> |
| |
| </project> |