<?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/xsd/maven-4.0.0.xsd">

    <!--

        Licensed to the Apache Software Foundation (ASF) under one or more
        contributor license agreements.  See the NOTICE file distributed with
        this work for additional information regarding copyright ownership.
        The ASF licenses this file to You under the Apache License, Version 2.0
        (the "License"); you may not use this file except in compliance with
        the License.  You may obtain a copy of the License at

           http://www.apache.org/licenses/LICENSE-2.0

        Unless required by applicable law or agreed to in writing, software
        distributed under the License is distributed on an "AS IS" BASIS,
        WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
        See the License for the specific language governing permissions and
        limitations under the License.
    -->

    <modelVersion>4.0.0</modelVersion>

    <parent>
        <groupId>org.apache</groupId>
        <artifactId>apache</artifactId>
        <version>23</version>
        <relativePath />
    </parent>

    <groupId>org.apache.karaf</groupId>
    <artifactId>karaf</artifactId>
    <packaging>pom</packaging>
    <version>4.3.3-SNAPSHOT</version>
    <name>Apache Karaf</name>
    <inceptionYear>2007</inceptionYear>

    <modules>
        <module>bom</module>
        <module>util</module>
        <module>main</module>
        <module>features</module>
        <module>kar</module>
        <module>bundle</module>
        <module>config</module>
        <module>instance</module>
        <module>package</module>
        <module>http</module>
        <module>service</module>
        <module>log</module>
        <module>deployer</module>
        <module>shell</module>
        <module>jaas</module>
        <module>client</module>
        <module>management</module>
        <module>system</module>
        <module>web</module>
        <module>wrapper</module>
        <module>webconsole</module>
        <module>scheduler</module>
        <module>scr</module>
        <module>diagnostic</module>
        <module>obr</module>
        <module>docker</module>
        <module>jndi</module>
        <module>jdbc</module>
        <module>jms</module>
        <module>maven</module>
        <module>services</module>
        <module>audit</module>
        <module>subsystem</module>
        <module>profile</module>
        <module>event</module>
        <module>tooling</module>
        <module>manual</module>
        <module>specs</module>
        <module>assemblies</module>
        <module>examples</module>
        <module>archetypes</module>
        <module>itests</module>
    </modules>

    <scm>
        <connection>${scm.connection}</connection>
        <developerConnection>${scm.developerConnection}</developerConnection>
        <url>${scm.url}</url>
      <tag>HEAD</tag>
  </scm>

    <distributionManagement>
        <repository>
            <id>${distributionManagement.release.id}</id>
            <name>${distributionManagement.release.name}</name>
            <url>${distributionManagement.release.url}</url>
        </repository>
        <snapshotRepository>
            <id>${distributionManagement.snapshot.id}</id>
            <name>${distributionManagement.snapshot.name}</name>
            <url>${distributionManagement.snapshot.url}</url>
        </snapshotRepository>
    </distributionManagement>

    <issueManagement>
        <system>jira</system>
        <url>https://issues.apache.org/jira/browse/KARAF</url>
    </issueManagement>

    <mailingLists>
        <mailingList>
            <name>Karaf Dev</name>
            <subscribe>dev-subscribe@karaf.apache.org</subscribe>
            <unsubscribe>dev-unsubscribe@karaf.apache.org</unsubscribe>
            <post>-</post>
            <archive>https://www.mail-archive.com/dev%40karaf.apache.org/</archive>
        </mailingList>
        <mailingList>
            <name>Karaf User</name>
            <subscribe>user-subscribe@karaf.apache.org</subscribe>
            <unsubscribe>user-unsubscribe@karaf.apache.org</unsubscribe>
            <post>-</post>
            <archive>https://www.mail-archive.com/user%40karaf.apache.org/</archive>
        </mailingList>
        <mailingList>
            <name>Karaf Commits</name>
            <subscribe>commits-subscribe@karaf.apache.org</subscribe>
            <unsubscribe>commits-unsubscribe@karaf.apache.org</unsubscribe>
            <post>-</post>
            <archive>https://www.mail-archive.com/commits%40karaf.apache.org/</archive>
        </mailingList>
        <mailingList>
            <name>Karaf Issues</name>
            <subscribe>issues-subscribe@karaf.apache.org</subscribe>
            <unsubscribe>issues-unsubscribe@karaf.apache.org</unsubscribe>
            <post>-</post>
            <archive>https://www.mail-archive.com/issues%40karaf.apache.org/</archive>
        </mailingList>
    </mailingLists>

    <developers>
        <developer>
            <name>The Apache Karaf Team</name>
            <email>dev@karaf.apache.org</email>
            <url>https://karaf.apache.org</url>
            <organization>Apache Software Foundation</organization>
            <organizationUrl>https://apache.org/</organizationUrl>
            <properties>
                <picUrl>https://karaf.apache.org/images/karaf-logo.png</picUrl>
            </properties>
        </developer>
    </developers>

    <properties>
        <scm.connection>scm:git:https://gitbox.apache.org/repos/asf/karaf.git</scm.connection>
        <scm.developerConnection>scm:git:https://gitbox.apache.org/repos/asf/karaf.git</scm.developerConnection>
        <scm.url>https://gitbox.apache.org/repos/asf?p=karaf.git;a=summary</scm.url>

        <distributionManagement.release.id>apache.releases.https</distributionManagement.release.id>
        <distributionManagement.release.name>Apache Release Distribution Repository</distributionManagement.release.name>
        <distributionManagement.release.url>https://repository.apache.org/service/local/staging/deploy/maven2</distributionManagement.release.url>
        <distributionManagement.snapshot.id>apache.snapshots.https</distributionManagement.snapshot.id>
        <distributionManagement.snapshot.name>Apache Development Snapshot Repository</distributionManagement.snapshot.name>
        <distributionManagement.snapshot.url>https://repository.apache.org/content/repositories/snapshots</distributionManagement.snapshot.url>

        <activemq.version>5.15.11</activemq.version>
        <aopalliance.bundle.version>1.0_6</aopalliance.bundle.version>
        <aspectj.bundle.version>1.9.5_1</aspectj.bundle.version>
        <asm.version>9.2</asm.version>
        <javax.annotation.version>1.3.1</javax.annotation.version>
        <awaitility.version>3.1.6</awaitility.version>
        <bouncycastle.version>1.66</bouncycastle.version>
        <camel.version>3.6.0</camel.version>
        <cglib.bundle.version>3.2.9_1</cglib.bundle.version>
        <cxf.version>3.4.3</cxf.version>
        <jackson.version>2.11.4</jackson.version>
        <jna.version>5.8.0</jna.version>
        <jaxb.version>2.3.3</jaxb.version>
        <commons-beanutils.version>1.9.4</commons-beanutils.version>
        <commons-codec.version>1.15</commons-codec.version>
        <commons-compress.version>1.20</commons-compress.version>
        <commons-collections.version>3.2.2</commons-collections.version>
        <commons-fileupload.version>1.4</commons-fileupload.version>
        <commons-lang.version>2.6</commons-lang.version>
        <commons-lang3.version>3.12.0</commons-lang3.version>
        <commons-logging.version>1.2</commons-logging.version>
        <commons-pool2.version>2.6.2</commons-pool2.version>
        <commons-io.version>2.10.0</commons-io.version>
        <eclipselink.version>2.7.8</eclipselink.version>
        <jasypt.bundle.version>1.9.3_1</jasypt.bundle.version>
        <jolokia.version>1.6.2</jolokia.version>
        <servlet.spec.groupId>javax.servlet</servlet.spec.groupId>
        <servlet.spec.artifactId>javax.servlet-api</servlet.spec.artifactId>
        <servlet.spec.version>3.1.0</servlet.spec.version>

        <geronimo.jms-spec.version>1.1.1</geronimo.jms-spec.version>
        <geronimo.jta-spec.version>1.1.1</geronimo.jta-spec.version>

        <servicemix-spec.version>2.9.0</servicemix-spec.version>

        <easymock.version>4.3</easymock.version>
        <equinox.groupId>org.eclipse.platform</equinox.groupId>
        <equinox.artifactId>org.eclipse.osgi</equinox.artifactId>
        <equinox.version>3.16.300</equinox.version>
        <equinox.region.version>1.2.101.v20150831-1342</equinox.region.version>
        <equinox.coordinator.version>1.1.0.v20120522-1841</equinox.coordinator.version>

        <felix.bundlerepository.version>2.0.10</felix.bundlerepository.version>
        <felix.cm.json.version>1.0.6</felix.cm.json.version>
        <felix.configadmin.version>1.9.22</felix.configadmin.version>
        <felix.configadmin.interpolation.plugin.version>1.1.4</felix.configadmin.interpolation.plugin.version>
        <felix.configurator.version>1.0.14</felix.configurator.version>
        <felix.connect.version>0.2.0</felix.connect.version>
        <felix.coordinator.version>1.0.2</felix.coordinator.version>
        <felix.converter.version>1.0.14</felix.converter.version>
        <felix.fileinstall.version>3.7.0</felix.fileinstall.version>
        <felix.framework.version>6.0.5</felix.framework.version>
        <felix.framework.security.version>2.6.1</felix.framework.security.version>
        <felix.gogo.runtime.version>1.1.4</felix.gogo.runtime.version>
        <felix.gogo.jline.version>1.1.8</felix.gogo.jline.version>
        <felix.httplite.version>0.1.6</felix.httplite.version>
        <felix.http.version>4.1.10</felix.http.version>
        <felix.inventory.version>1.0.6</felix.inventory.version>
        <felix.maven-bundle-plugin.version>5.1.2</felix.maven-bundle-plugin.version>
        <felix.utils.version>1.11.8</felix.utils.version>
        <felix.webconsole.version>4.6.2</felix.webconsole.version>
        <felix.webconsole.api.version>3.4.0</felix.webconsole.api.version>
        <felix.memoryusage.webconsole.plugin.version>1.0.10</felix.memoryusage.webconsole.plugin.version>
        <felix.metatype.version>1.2.4</felix.metatype.version>
        <felix.eventadmin.version>1.6.2</felix.eventadmin.version>
        <felix.eventadmin.webconsole.plugin.version>1.1.8</felix.eventadmin.webconsole.plugin.version>
        <felix.obr.version>1.0.2</felix.obr.version>
        <felix.scr.version>2.1.28</felix.scr.version>
        <felix.scr.webconsole.plugin.version>2.1.0</felix.scr.webconsole.plugin.version>
        <felix.scr.annotation.version>1.12.0</felix.scr.annotation.version>
        <felix.resolver.version>2.0.4</felix.resolver.version>

        <aries.application.version>1.0.0</aries.application.version>
        <aries.application.api.version>1.0.0</aries.application.api.version>
        <aries.application.management.version>1.0.0</aries.application.management.version>
        <aries.blueprint.api.version>1.0.1</aries.blueprint.api.version>
        <aries.blueprint.core.version>1.10.3</aries.blueprint.core.version>
        <aries.blueprint.core.compatibility.version>1.0.0</aries.blueprint.core.compatibility.version>
        <aries.blueprint.cm.version>1.3.2</aries.blueprint.cm.version>
        <aries.blueprint.web.version>1.1.1</aries.blueprint.web.version>
        <aries.blueprint.webosgi.version>1.0.1</aries.blueprint.webosgi.version>
        <aries.blueprint.spring.version>0.6.0</aries.blueprint.spring.version>
        <aries.blueprint.spring.extender.version>0.4.0</aries.blueprint.spring.extender.version>
        <aries.jmx.api.version>1.1.5</aries.jmx.api.version>
        <aries.jmx.core.version>1.1.8</aries.jmx.core.version>
        <aries.jmx.blueprint.api.version>1.2.0</aries.jmx.blueprint.api.version>
        <aries.jmx.blueprint.core.version>1.2.0</aries.jmx.blueprint.core.version>
        <aries.jmx.whiteboard.version>1.2.0</aries.jmx.whiteboard.version>
        <aries.jpa.version>2.7.2</aries.jpa.version>
        <aries.jpa.blueprint.aries.version>1.0.4</aries.jpa.blueprint.aries.version>
        <aries.jpa.container.context.version>1.0.4</aries.jpa.container.context.version>
        <aries.jndi.version>1.0.0</aries.jndi.version>
        <aries.jndi.api.version>1.1.0</aries.jndi.api.version>
        <aries.jndi.core.version>1.0.2</aries.jndi.core.version>
        <aries.jndi.url.version>1.1.0</aries.jndi.url.version>
        <aries.proxy.version>1.1.10</aries.proxy.version>
        <aries.proxy.api.version>1.1.1</aries.proxy.api.version>
        <aries.spifly.version>1.3.2</aries.spifly.version>
        <aries.subsystem.api.version>2.0.10</aries.subsystem.api.version>
        <aries.subsystem.core.version>2.0.10</aries.subsystem.core.version>
        <aries.transaction.manager.version>1.3.3</aries.transaction.manager.version>
        <aries.transaction.blueprint.version>1.1.1</aries.transaction.blueprint.version>
        <aries.transaction.blueprint.version2>2.2.0</aries.transaction.blueprint.version2>
        <aries.util.version>1.1.3</aries.util.version>
        <atomikos.version>4.0.4</atomikos.version>

        <openjpa.version>3.1.2</openjpa.version>
        <geronimo.transaction.manager.version>3.1.3</geronimo.transaction.manager.version>
        <guava.version>20.0</guava.version>
        <narayana.version>5.11.2.Final</narayana.version>
        <hibernate.ejb.version>3.4.0.GA</hibernate.ejb.version>
        <hibernate.version>5.4.32.Final</hibernate.version>
        <hibernate.validator.version>7.0.1.Final</hibernate.validator.version>
        <httpclient.version>4.5.13</httpclient.version>
        <jansi.version>1.18</jansi.version>
        <javassist.version>3.9.0.GA</javassist.version>
        <jline.version>3.19.0</jline.version>
        <junit.version>4.13.2</junit.version>
        <jsw.version>3.2.3</jsw.version>
        <log4j.version>1.2.17</log4j.version>
        <maven.version>3.6.3</maven.version>
        <maven.wagon.version>3.2.0</maven.wagon.version>
        <maven-plugin-annotations.version>3.6.0</maven-plugin-annotations.version>
        <maven.resolver.version>1.3.1</maven.resolver.version>
        <org.osgi.service.jdbc.version>1.0.0</org.osgi.service.jdbc.version>
        <org.osgi.service.jpa.version>1.0.0</org.osgi.service.jpa.version>
        <osgi.version>7.0.0</osgi.version>
        <osgi.compendium.version>7.0.0</osgi.compendium.version>

        <pax.cdi.version>1.1.4</pax.cdi.version>
        <pax.exam.version>4.13.4</pax.exam.version>
        <pax.logging.version>2.0.9</pax.logging.version>
        <pax.base.version>1.5.1</pax.base.version>
        <pax.swissbox.version>1.8.4</pax.swissbox.version>
        <pax.url.version>2.6.7</pax.url.version>
        <pax.web.version>7.3.18</pax.web.version>
        <pax.tinybundle.version>3.0.0</pax.tinybundle.version>
        <pax.jdbc.version>1.5.0</pax.jdbc.version>
        <pax.jms.version>1.1.0</pax.jms.version>
        <pax.transx.version>0.5.0</pax.transx.version>

        <portlet-api.version>2.0</portlet-api.version>
        <plexus-utils.version>3.2.1</plexus-utils.version>
        <slf4j.version>1.7.29</slf4j.version>

        <spring.osgi.version>1.2.1</spring.osgi.version>
        <spring31.version>3.1.4.RELEASE</spring31.version>
        <spring43.version>4.3.30.RELEASE_1</spring43.version>
        <spring52.version>5.2.13.RELEASE_1</spring52.version>
        <spring53.version>5.3.8_1</spring53.version>
        <spring.security31.version>3.1.4.RELEASE</spring.security31.version>
        <spring.security42.version>4.2.4.RELEASE_1</spring.security42.version>
        <spring.security51.version>5.1.5.RELEASE_1</spring.security51.version>
        <spring.security53.version>5.3.3.RELEASE_2</spring.security53.version>
        <spring.security54.version>5.4.6_1</spring.security54.version>

        <sling.commons.johnzon.version>1.2.6</sling.commons.johnzon.version>
        <sshd.version>2.5.1</sshd.version>
        <struts.bundle.version>1.3.10_1</struts.bundle.version>
        <xbean.version>4.20</xbean.version>
        <javax.mail.version>1.4.7</javax.mail.version>

        <winsw.version>2.3.0</winsw.version>

        <osgi-component-annotations.version>1.4.0</osgi-component-annotations.version>

        <!-- Further used maven plugin versions; e.g. in the docs -->
        <plugin.depends.version>1.4.0</plugin.depends.version>
        <surefire.argLine />
        <!-- General Settings -->
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <appendedResourcesDirectory>${basedir}/etc/appended-resources</appendedResourcesDirectory>
        <bnd.version.policy>[$(version;==;$(@)),$(version;+;$(@)))</bnd.version.policy>
        <!-- Disable OBR repository update by default -->
        <obrRepository>NONE</obrRepository>
    </properties>

    <repositories>
        <!-- Apache snapshots -->
        <repository>
            <id>apache-snapshots</id>
            <name>Apache Snapshots Repository</name>
            <url>https://repository.apache.org/content/groups/snapshots-group</url>
            <releases>
                <enabled>false</enabled>
            </releases>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </repository>
        <!-- OPS4J SNAPSHOT repository -->
        <repository>
            <id>ops4j.sonatype.snapshots.deploy</id>
            <name>OPS4J snapshot repository</name>
            <url>https://oss.sonatype.org/content/repositories/ops4j-snapshots/</url>
            <releases>
                <enabled>false</enabled>
            </releases>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </repository>
    </repositories>
    <pluginRepositories>
        <!-- Apache snapshots -->
        <pluginRepository>
            <id>apache-snapshots</id>
            <name>Apache Snapshots Repository</name>
            <url>https://repository.apache.org/content/groups/snapshots-group</url>
            <releases>
                <enabled>false</enabled>
            </releases>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </pluginRepository>
    </pluginRepositories>

    <dependencies>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <scope>test</scope>
            <version>${junit.version}</version>
        </dependency>
        <dependency>
            <groupId>org.easymock</groupId>
            <artifactId>easymock</artifactId>
            <scope>test</scope>
            <version>${easymock.version}</version>
        </dependency>
    </dependencies>

    <build>
        <defaultGoal>install</defaultGoal>

        <pluginManagement>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>3.8.1</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-deploy-plugin</artifactId>
                    <version>2.8.2</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-enforcer-plugin</artifactId>
                    <version>3.0.0-M2</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-gpg-plugin</artifactId>
                    <version>1.6</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-javadoc-plugin</artifactId>
                    <version>3.2.0</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-jar-plugin</artifactId>
                    <version>3.2.0</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-remote-resources-plugin</artifactId>
                    <version>1.7.0</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-install-plugin</artifactId>
                    <version>3.0.0-M1</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-eclipse-plugin</artifactId>
                    <version>2.10</version>
                    <configuration>
                        <outputDirectory>${basedir}/eclipse-classes</outputDirectory>
                        <downloadSources>true</downloadSources>
                        <downloadJavadocs>true</downloadJavadocs>
                    </configuration>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-release-plugin</artifactId>
                    <version>2.5.3</version>
                    <configuration>
                        <useReleaseProfile>false</useReleaseProfile>
                        <preparationGoals>clean install</preparationGoals>
                        <goals>deploy</goals>
                        <arguments>-Prelease,deploy,src</arguments>
                        <autoVersionSubmodules>true</autoVersionSubmodules>
                    </configuration>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-idea-plugin</artifactId>
                    <version>2.2.1</version>
                    <configuration>
                        <downloadSources>true</downloadSources>
                        <downloadJavadocs>true</downloadJavadocs>
                    </configuration>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-surefire-plugin</artifactId>
                    <version>2.22.2</version>
                    <configuration>
                            <forkMode>once</forkMode>
                            <argLine>${surefire.argLine}</argLine>
                    </configuration>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-resources-plugin</artifactId>
                    <version>3.1.0</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.servicemix.tooling</groupId>
                    <artifactId>depends-maven-plugin</artifactId>
                    <version>${plugin.depends.version}</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-source-plugin</artifactId>
                    <version>3.2.1</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-assembly-plugin</artifactId>
                    <version>3.2.0</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-antrun-plugin</artifactId>
                    <version>3.0.0</version>
                    <dependencies>
                        <dependency>
                            <groupId>ant-contrib</groupId>
                            <artifactId>ant-contrib</artifactId>
                            <version>1.0b3</version>
                            <exclusions>
                                <exclusion>
                                    <groupId>ant</groupId>
                                    <artifactId>ant</artifactId>
                                </exclusion>
                            </exclusions>
                        </dependency>
                        <dependency>
                            <groupId>org.apache.ant</groupId>
                            <artifactId>ant-nodeps</artifactId>
                            <version>1.8.1</version>
                        </dependency>
                        <dependency>
                            <groupId>ant</groupId>
                            <artifactId>ant-optional</artifactId>
                            <version>1.5.3-1</version>
                        </dependency>
                        <dependency>
                            <groupId>org.ccil.cowan.tagsoup</groupId>
                            <artifactId>tagsoup</artifactId>
                            <version>1.2.1</version>
                        </dependency>
                    </dependencies>
                </plugin>
                <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>exec-maven-plugin</artifactId>
                    <version>1.6.0</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-dependency-plugin</artifactId>
                    <version>3.1.2</version>
                </plugin>
                <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>build-helper-maven-plugin</artifactId>
                    <version>3.1.0</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-site-plugin</artifactId>
                    <version>3.9.0</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-war-plugin</artifactId>
                    <version>3.2.3</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.karaf.tooling</groupId>
                    <artifactId>karaf-maven-plugin</artifactId>
                    <version>${project.version}</version>
                </plugin>
                <plugin>
                    <groupId>org.eclipse.m2e</groupId>
                    <artifactId>lifecycle-mapping</artifactId>
                    <version>1.0.0</version>
                    <configuration>
                        <lifecycleMappingMetadata>
                            <pluginExecutions>
                                <pluginExecution>
                                    <pluginExecutionFilter>
                                        <groupId>org.apache.felix</groupId>
                                        <artifactId>maven-bundle-plugin</artifactId>
                                        <versionRange>[0,)</versionRange>
                                        <goals>
                                            <goal>cleanVersions</goal>
                                        </goals>
                                    </pluginExecutionFilter>
                                    <action>
                                        <ignore />
                                    </action>
                                </pluginExecution>
                                <pluginExecution>
                                    <pluginExecutionFilter>
                                        <groupId>org.apache.maven.plugins</groupId>
                                        <artifactId>maven-dependency-plugin</artifactId>
                                        <versionRange>[0,)</versionRange>
                                        <goals>
                                            <goal>copy</goal>
                                            <goal>unpack</goal>
                                        </goals>
                                    </pluginExecutionFilter>
                                    <action>
                                        <ignore />
                                    </action>
                                </pluginExecution>
                                <pluginExecution>
                                    <pluginExecutionFilter>
                                        <groupId>org.apache.karaf.tooling</groupId>
                                        <artifactId>karaf-maven-plugin</artifactId>
                                        <versionRange>[0,)</versionRange>
                                        <goals>
                                            <goal>commands-generate-help</goal>
                                        </goals>
                                    </pluginExecutionFilter>
                                    <action>
                                        <ignore />
                                    </action>
                                </pluginExecution>
                                <pluginExecution>
                                    <pluginExecutionFilter>
                                        <groupId>org.fusesource.scalate</groupId>
                                        <artifactId>maven-scalate-plugin</artifactId>
                                        <versionRange>[0,)</versionRange>
                                        <goals>
                                            <goal>sitegen</goal>
                                        </goals>
                                    </pluginExecutionFilter>
                                    <action>
                                        <ignore />
                                    </action>
                                </pluginExecution>
                            </pluginExecutions>
                        </lifecycleMappingMetadata>
                    </configuration>
                </plugin>
                <plugin>
                    <groupId>org.apache.karaf.tooling</groupId>
                    <artifactId>karaf-services-maven-plugin</artifactId>
                    <version>${project.version}</version>
                    <executions>
                        <execution>
                            <id>service-metadata-generate</id>
                            <phase>process-classes</phase>
                            <goals>
                                <goal>service-metadata-generate</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>
            </plugins>
        </pluginManagement>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                    <maxmem>256M</maxmem>
                    <fork>${compiler.fork}</fork>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-enforcer-plugin</artifactId>
                <executions>
                    <execution>
                        <id>enforce-maven</id>
                        <goals>
                            <goal>enforce</goal>
                        </goals>
                        <configuration>
                            <rules>
                                <requireMavenVersion>
                                    <version>[3.3.9,4)</version>
                                </requireMavenVersion>
                                <requireJavaVersion>
                                    <version>[1.8,)</version>
                                </requireJavaVersion>
                            </rules>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-remote-resources-plugin</artifactId>
                <executions>
                    <execution>
                        <goals>
                            <goal>process</goal>
                        </goals>
                        <configuration>
                            <appendedResourcesDirectory>${appendedResourcesDirectory}</appendedResourcesDirectory>
                            <resourceBundles>
                                <resourceBundle>org.apache:apache-jar-resource-bundle:1.4</resourceBundle>
                            </resourceBundles>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-resources-plugin</artifactId>
            </plugin>
            <plugin>
                <groupId>org.apache.felix</groupId>
                <artifactId>maven-bundle-plugin</artifactId>
                <version>${felix.maven-bundle-plugin.version}</version>
                <inherited>true</inherited>
                <extensions>true</extensions>
                <configuration>
                    <obrRepository>NONE</obrRepository>
                    <instructions>
                        <nsh_interface>org.apache.aries.blueprint.NamespaceHandler</nsh_interface>
                        <nsh_namespace>osgi.service.blueprint.namespace</nsh_namespace>
                        <_removeheaders>Private-Package,Include-Resource,Embed-Dependency,Created-By,Bnd-LastModified,Built-By,Tool</_removeheaders>
                        <_versionpolicy>${bnd.version.policy}</_versionpolicy>
                        <Bundle-DocURL>http://karaf.apache.org/</Bundle-DocURL>
                    </instructions>
                </configuration>
                <executions>
                    <execution>
                        <id>cleanVersions</id>
                        <phase>generate-sources</phase>
                        <goals>
                            <goal>cleanVersions</goal>
                        </goals>
                        <configuration>
                            <versions>
                                <karaf.osgi.version>${project.version}</karaf.osgi.version>
                            </versions>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>

    <reporting>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-javadoc-plugin</artifactId>
                <version>3.1.1</version>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-jxr-plugin</artifactId>
                <version>3.0.0</version>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-site-plugin</artifactId>
                <version>3.8.2</version>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-report-plugin</artifactId>
                <version>2.22.2</version>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-project-info-reports-plugin</artifactId>
                <version>3.0.0</version>
            </plugin>
        </plugins>
    </reporting>

    <profiles>
        <profile>
            <id>fastinstall</id>
            <properties>
              <maven.test.skip>true</maven.test.skip>
              <invoker.skip>true</invoker.skip>
              <archetype.test.skip>true</archetype.test.skip>
            </properties>
        </profile>
        <profile>
            <id>rat</id>
            <activation>
                <activeByDefault>true</activeByDefault>
            </activation>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.apache.rat</groupId>
                        <artifactId>apache-rat-plugin</artifactId>
                        <version>0.13</version>
                        <executions>
                            <execution>
                                <phase>verify</phase>
                                <goals>
                                    <goal>check</goal>
                                </goals>
                            </execution>
                        </executions>
                        <configuration>
                            <reportFile>${project.build.directory}/${project.build.finalName}.rat</reportFile>
                            <excludeSubProjects>false</excludeSubProjects>
                            <excludes>
                                <exclude>**/*.pub</exclude>
                                <exclude>**/target/**/*</exclude>
                                <!-- GIT files -->
                                <exclude>**/.git/**/*</exclude>
                                <!-- IDEA files -->
                                <exclude>**/.idea/**/*</exclude>
                                <exclude>**/*.iml</exclude>
                                <exclude>**/*.ipr</exclude>
                                <exclude>**/*.iws</exclude>
                                <!-- Eclipse files -->
                                <exclude>**/.*</exclude>
                                <exclude>**/eclipse-classes/**/*</exclude>
                                <exclude>**/dependency-reduced-pom.xml</exclude>
                                <exclude>**/.settings/**</exclude>
                                <exclude>**/bin/**</exclude>
                                <!-- resources file -->
                                <exclude>**/goal.txt</exclude>
                                <exclude>**/grep.txt</exclude>
                                <exclude>**/edit.txt</exclude>
                                <exclude>**/wc.txt</exclude>
                                <exclude>**/foo</exclude>
                                <exclude>**/org.ops4j.pax.exam.TestContainerFactory</exclude>
                                <exclude>**/maven-metadata-local.xml</exclude>
                                <!-- jline -->
                                <exclude>**/src/main/java/jline/**/*.java</exclude>
                                <!-- test manifests -->
                                <exclude>**/*.mf</exclude>
                                <!-- test json files -->
                                <exclude>**/*.json</exclude>
                                <!-- test wiring resource files -->
                                <exclude>**/src/test/resources/wirings/*</exclude>
                                <!-- SSH keys -->
				                <exclude>**/*.key</exclude>
                                <exclude>**/*.id_rsa</exclude>
                                <!-- For Jenkins, ignore the .repository -->
                                <exclude>.repository/**</exclude>
                                <!-- jar files -->
                                <exclude>**/*.jar</exclude>
                            </excludes>
                        </configuration>
                    </plugin>
                </plugins>
            </build>
        </profile>
        <profile>
            <id>release</id>
            <modules>
                <module>manual</module>
            </modules>
            <build>
                <plugins>
                    <!-- We want to deploy the artifact to a staging location for perusal -->
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-deploy-plugin</artifactId>
                        <inherited>true</inherited>
                        <configuration>
                            <altDeploymentRepository>${deploy.altRepository}</altDeploymentRepository>
                            <updateReleaseInfo>true</updateReleaseInfo>
                        </configuration>
                    </plugin>
                    <!-- We want to sign the artifact, the POM, and all attached artifacts -->
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-gpg-plugin</artifactId>
                        <executions>
                            <execution>
                                <id>sign-artifacts</id>
                                <phase>verify</phase>
                                <goals>
                                    <goal>sign</goal>
                                </goals>
                                <configuration>
                                  <gpgArguments>
                                    <arg>--pinentry-mode</arg>
                                    <arg>loopback</arg>
                                  </gpgArguments>
                                </configuration>
                            </execution>
                        </executions>
                    </plugin>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-assembly-plugin</artifactId>
                        <executions>
                            <execution>
                                <id>make-assembly</id>
                                <phase>none</phase>
                            </execution>
                        </executions>
                    </plugin>
                    <plugin>
                        <groupId>org.codehaus.mojo</groupId>
                        <artifactId>build-helper-maven-plugin</artifactId>
                        <executions>
                            <execution>
                                <id>attach-assemblies</id>
                                <phase>none</phase>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>
        <profile>
            <id>setup.eclipse</id>
            <modules>
                <module>assembly</module>
            </modules>
            <properties>
                <eclipse.workspace.dir>${basedir}/../workspace</eclipse.workspace.dir>
            </properties>
            <build>
                <defaultGoal>eclipse:eclipse</defaultGoal>
                <plugins>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-eclipse-plugin</artifactId>
                        <inherited>false</inherited>
                        <executions>
                            <execution>
                                <id>setup.eclipse.workspace</id>
                                <phase>process-test-sources</phase>
                                <goals>
                                    <goal>add-maven-repo</goal>
                                </goals>
                                <configuration>
                                    <workspace>${eclipse.workspace.dir}</workspace>
                                </configuration>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>
        <profile>
            <id>deploy</id>
            <properties>
                <createSourcesJar>true</createSourcesJar>
            </properties>
            <build>
                <defaultGoal>deploy</defaultGoal>
                <plugins>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-source-plugin</artifactId>
                        <executions>
                            <execution>
                                <id>attach-sources</id>
                                <goals>
                                    <goal>jar</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-javadoc-plugin</artifactId>
                        <configuration>
                            <source>1.8</source>
                        </configuration>
                        <executions>
                            <execution>
                                <id>attach-javadocs</id>
                                <goals>
                                    <goal>jar</goal>
                                </goals>
                                <configuration>
                                    <additionalparam>${javadoc.opts}</additionalparam>
                                </configuration>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>
        <profile>
            <id>doclint-java8-disable</id>
            <activation>
                <jdk>[1.8,)</jdk>
            </activation>
            <properties>
                <javadoc.opts>-Xdoclint:none</javadoc.opts>
            </properties>
        </profile>
        <profile>
            <id>java9-plus</id>
            <properties>
                <surefire.argLine>
                                  --add-opens java.base/java.security=ALL-UNNAMED
                                  --add-opens java.base/java.net=ALL-UNNAMED 
                                  --add-opens java.base/java.lang=ALL-UNNAMED
                                  --add-opens java.base/java.util=ALL-UNNAMED
                                  --add-opens java.naming/javax.naming.spi=ALL-UNNAMED
                                  --add-opens java.rmi/sun.rmi.transport.tcp=ALL-UNNAMED
                </surefire.argLine>
            </properties>
            <activation>
                <jdk>[9,)</jdk>
            </activation>
        </profile>
    </profiles>
</project>
