<?xml version="1.0" encoding="UTF-8"?>
<!--
  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.
-->
<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">
  <parent>
    <groupId>org.apache</groupId>
    <artifactId>apache</artifactId>
    <version>18</version>
  </parent>
  <modelVersion>4.0.0</modelVersion>

  <groupId>org.apache.activemq</groupId>
  <artifactId>activemq-parent</artifactId>
  <version>5.17.0-SNAPSHOT</version>
  <packaging>pom</packaging>
  <name>ActiveMQ</name>
  <inceptionYear>2005</inceptionYear>

  <properties>
    <activeio-version>3.1.4</activeio-version>
    <siteId>activemq-${project.version}</siteId>
    <projectName>Apache ActiveMQ</projectName>
    <!-- base url for site deployment.  See distribution management for full url.  Override this in settings.xml for staging -->
    <staging.siteURL>scp://people.apache.org/x1/www/activemq.apache.org</staging.siteURL>

    <!-- JAR dependency versions -->
    <activemq-protobuf-version>1.1</activemq-protobuf-version>
    <activesoap-version>1.3</activesoap-version>
    <annogen-version>0.1.0</annogen-version>
    <aries-version>1.1.0</aries-version>
    <axion-version>1.0-M3-dev</axion-version>
    <camel-version>2.25.4</camel-version>
    <camel-version-range>[2.20,4)</camel-version-range>
    <commons-beanutils-version>1.9.4</commons-beanutils-version>
    <commons-collections-version>3.2.2</commons-collections-version>
    <commons-daemon-version>1.2.4</commons-daemon-version>
    <commons-dbcp2-version>2.9.0</commons-dbcp2-version>
    <commons-io-version>2.11.0</commons-io-version>
    <commons-lang-version>3.12.0</commons-lang-version>
    <commons-logging-version>1.2</commons-logging-version>
    <commons-pool2-version>2.11.1</commons-pool2-version>
    <commons-primitives-version>1.0</commons-primitives-version>
    <commons-net-version>3.8.0</commons-net-version>
    <directory-version>2.0.0.AM25</directory-version>
    <ecj.version>3.17.0</ecj.version>
    <ftpserver-version>1.1.1</ftpserver-version>
    <guava-version>28.2-jre</guava-version>
    <hadoop-version>1.2.1</hadoop-version>
    <hawtbuf-version>1.11</hawtbuf-version>
    <hawtdispatch-version>1.22</hawtdispatch-version>
    <httpclient-version>4.5.13</httpclient-version>
    <httpcore-version>4.4.14</httpcore-version>
    <insight-version>1.2.0.Beta4</insight-version>
    <jackson-version>2.12.4</jackson-version>
    <jasypt-version>1.9.3</jasypt-version>
    <jaxb-bundle-version>2.2.11_1</jaxb-bundle-version>
    <jetty9-version>9.4.43.v20210629</jetty9-version>
    <jetty-version>${jetty9-version}</jetty-version>
    <jmdns-version>3.4.1</jmdns-version>
    <tomcat-api-version>9.0.48</tomcat-api-version>
    <jettison-version>1.4.1</jettison-version>
    <jmock-version>2.5.1</jmock-version>
    <jolokia-version>1.6.2</jolokia-version>
    <josql-version>1.5_5</josql-version>
    <!-- for json-simple use same version as jolokia uses -->
    <json-simple-version>1.1.1</json-simple-version>
    <junit-version>4.13.2</junit-version>
    <hamcrest-version>1.3</hamcrest-version>
    <karaf-version>4.2.11</karaf-version>
    <log4j-version>1.2.17</log4j-version>
    <mockito-version>3.8.0</mockito-version>
    <owasp-dependency-check-version>5.2.4</owasp-dependency-check-version>
    <mqtt-client-version>1.16</mqtt-client-version>
    <org-apache-derby-version>10.14.2.0</org-apache-derby-version>
    <osgi-version>6.0.0</osgi-version>
    <linkedin-zookeeper-version>1.4.0</linkedin-zookeeper-version>
    <zookeeper-version>3.4.14</zookeeper-version>
    <qpid-proton-version>0.33.8</qpid-proton-version>
    <qpid-jms-version>0.58.0</qpid-jms-version>
    <qpid-jms-netty-version>4.1.63.Final</qpid-jms-netty-version>
    <qpid-jms-proton-version>0.33.8</qpid-jms-proton-version>
    <netty-all-version>4.1.63.Final</netty-all-version>
    <regexp-version>1.3</regexp-version>
    <rome-version>1.16.0</rome-version>
    <shiro-version>1.7.1</shiro-version>
    <slf4j-version>1.7.31</slf4j-version>
    <snappy-version>1.1.2</snappy-version>
    <spring-version>5.3.9</spring-version>
    <taglibs-version>1.2.5</taglibs-version>
    <velocity-version>2.3</velocity-version>
    <xalan-version>2.7.2</xalan-version>
    <xpp3-version>1.1.4c</xpp3-version>
    <xstream-version>1.4.17</xstream-version>
    <xbean-version>4.20</xbean-version>
    <xerces-version>2.12.0</xerces-version>
    <jaxb-basics-version>0.6.4</jaxb-basics-version>
    <stompjms-version>1.19</stompjms-version>

    <pax-exam-version>4.13.1</pax-exam-version>
    <pax-url-version>2.6.2</pax-url-version>
    <felix-framework-version>5.6.12</felix-framework-version>

    <site-repo-url>scpexe://people.apache.org/www/activemq.apache.org/maven/</site-repo-url>
    <source-version>1.8</source-version>
    <target-version>11</target-version>
    <javase-javadoc-url>http://docs.oracle.com/javase/8/docs/api/</javase-javadoc-url>
    <javaee-javadoc-url>http://download.oracle.com/javaee/6/api/</javaee-javadoc-url>
    <slf4j-javadoc-url>http://www.slf4j.org/apidocs/</slf4j-javadoc-url>

    <!-- Maven Plugin Version for this Project -->
    <maven-bundle-plugin-version>5.1.2</maven-bundle-plugin-version>
    <maven-surefire-plugin-version>2.22.2</maven-surefire-plugin-version>
    <maven-antrun-plugin-version>1.8</maven-antrun-plugin-version>
    <maven-assembly-plugin-version>3.3.0</maven-assembly-plugin-version>
    <maven-release-plugin-version>2.4.1</maven-release-plugin-version>
    <maven-eclipse-plugin-version>2.10</maven-eclipse-plugin-version>
    <maven-enforcer-plugin-version>3.0.0-M3</maven-enforcer-plugin-version>
    <maven-war-plugin-version>3.2.2</maven-war-plugin-version>
    <maven-compiler-plugin-version>3.8.1</maven-compiler-plugin-version>
    <maven-jar-plugin-version>3.1.0</maven-jar-plugin-version>
    <maven-archiver-version>2.5</maven-archiver-version>
    <maven-source-plugin-version>2.4</maven-source-plugin-version>
    <maven-javadoc-plugin-version>3.0.1</maven-javadoc-plugin-version>
    <maven-install-plugin-version>2.4</maven-install-plugin-version>
    <maven-shade-plugin-version>2.1</maven-shade-plugin-version>
    <findbugs-maven-plugin-version>3.0.1</findbugs-maven-plugin-version>
    <javacc-maven-plugin-version>2.6</javacc-maven-plugin-version>
    <cobertura-maven-plugin-version>2.5.2</cobertura-maven-plugin-version>
    <taglist-maven-plugin-version>2.4</taglist-maven-plugin-version>
    <build-helper-maven-plugin-version>1.8</build-helper-maven-plugin-version>
    <apache-rat-plugin-version>0.11</apache-rat-plugin-version>
    <ianal-maven-plugin-version>1.0-alpha-1</ianal-maven-plugin-version>
    <depends-maven-plugin-version>1.2</depends-maven-plugin-version>
    <maven-dependency-plugin-version>2.8</maven-dependency-plugin-version>
    <maven-project-info-reports-plugin-version>2.7</maven-project-info-reports-plugin-version>
    <maven-graph-plugin-version>1.30</maven-graph-plugin-version>
    <maven-plugin-plugin-version>3.6.0</maven-plugin-plugin-version>
    <maven-core-version>3.6.1</maven-core-version>
    <!-- OSGi bundles properties -->
    <activemq.osgi.import.pkg>*</activemq.osgi.import.pkg>
    <activemq.osgi.export.pkg>org.apache.activemq*</activemq.osgi.export.pkg>
    <activemq.osgi.private.pkg>!*</activemq.osgi.private.pkg>
    <activemq.osgi.export>${activemq.osgi.export.pkg}*;version=${activemq.osgi.export.version};-noimport:=true</activemq.osgi.export>
    <activemq.osgi.export.version>${project.version}</activemq.osgi.export.version>
    <activemq.osgi.import>${activemq.osgi.import.pkg}</activemq.osgi.import>
    <activemq.osgi.dynamic.import />
    <activemq.osgi.symbolic.name>${project.groupId}.${project.artifactId}</activemq.osgi.symbolic.name>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>

  <url>http://activemq.apache.org</url>

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

  <mailingLists>
    <mailingList>
      <name>User List</name>
      <subscribe>users-subscribe@activemq.apache.org</subscribe>
      <unsubscribe>users-unsubscribe@activemq.apache.org</unsubscribe>
      <post>users@activemq.apache.org</post>
    </mailingList>
    <mailingList>
      <name>Development List</name>
      <subscribe>dev-subscribe@activemq.apache.org</subscribe>
      <unsubscribe>dev-unsubscribe@activemq.apache.org</unsubscribe>
      <post>dev@activemq.apache.org</post>
    </mailingList>
  </mailingLists>

  <distributionManagement>
    <site>
      <!-- this needs to match a server in your settings.xml with upload settings -->
      <id>activemq-website</id>
      <!-- set the staging.siteURL in your ~/.m2/settings.xml in a release or other profile -->
      <url>${staging.siteURL}/maven/${project.version}</url>
      <!--<url>${site-repo-url}</url>-->
    </site>
    <snapshotRepository>
      <id>apache.snapshots.https</id>
      <name>Apache Development Snapshot Repository</name>
      <url>https://repository.apache.org/content/repositories/snapshots</url>
      <uniqueVersion>false</uniqueVersion>
    </snapshotRepository>
  </distributionManagement>

  <modules>
    <module>activemq-openwire-generator</module>
    <module>activemq-client</module>
    <module>activemq-openwire-legacy</module>
    <module>activemq-broker</module>
    <module>activemq-stomp</module>
    <module>activemq-mqtt</module>
    <module>activemq-amqp</module>
    <module>activemq-kahadb-store</module>
    <module>activemq-jdbc-store</module>
    <module>activemq-all</module>
    <module>activemq-console</module>
    <module>activemq-jaas</module>
    <module>activemq-karaf</module>
    <module>activemq-jms-pool</module>
    <module>activemq-pool</module>
    <module>activemq-cf</module>
    <module>activemq-ra</module>
    <module>activemq-rar</module>
    <module>activemq-run</module>
    <module>activemq-shiro</module>
    <module>activemq-spring</module>
    <module>activemq-runtime-config</module>
    <module>activemq-tooling</module>
    <module>activemq-web</module>
    <module>activemq-partition</module>
    <module>activemq-osgi</module>
    <module>activemq-blueprint</module>
    <module>activemq-web-demo</module>
    <module>activemq-web-console</module>
    <module>assembly</module>
    <module>activemq-log4j-appender</module>
    <module>activemq-http</module>
  </modules>

  <scm>
    <connection>scm:git:http://gitbox.apache.org/repos/asf/activemq.git</connection>
    <developerConnection>scm:git:https://gitbox.apache.org/repos/asf/activemq.git</developerConnection>
    <url>https://github.com/apache/activemq</url>
    <tag>activemq-5.16.0</tag>
  </scm>

  <dependencyManagement>
    <dependencies>
      <!-- =============================== -->
      <!-- Internal ActiveMQ Dependencies -->
      <!-- =============================== -->
      <dependency>
        <groupId>org.apache.activemq</groupId>
        <artifactId>activemq-amqp</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.activemq</groupId>
        <artifactId>activemq-http</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.activemq</groupId>
        <artifactId>activemq-log4j-appender</artifactId>
        <version>${project.version}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.activemq</groupId>
        <artifactId>activemq-amq-store</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.activemq</groupId>
        <artifactId>activemq-kahadb-store</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.activemq</groupId>
        <artifactId>activemq-jdbc-store</artifactId>
        <version>${project.version}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.activemq</groupId>
        <artifactId>activemq-mqtt</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.activemq</groupId>
        <artifactId>activemq-stomp</artifactId>
        <version>${project.version}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.activemq</groupId>
        <artifactId>activemq-client</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.activemq</groupId>
        <artifactId>activemq-openwire-legacy</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.activemq</groupId>
        <artifactId>activemq-broker</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.activemq</groupId>
        <artifactId>activemq-all</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.activemq</groupId>
        <artifactId>activemq-partition</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.activemq.tooling</groupId>
        <artifactId>activemq-junit</artifactId>
        <version>${project.version}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.apache.activemq</groupId>
        <artifactId>activemq-unit-tests</artifactId>
        <version>${project.version}</version>
        <type>test-jar</type>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.apache.activemq</groupId>
        <artifactId>activemq-broker</artifactId>
        <version>${project.version}</version>
        <type>test-jar</type>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.apache.activemq</groupId>
        <artifactId>activemq-jaas</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.activemq</groupId>
        <artifactId>activemq-jms-pool</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.activemq</groupId>
        <artifactId>activemq-pool</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.activemq</groupId>
        <artifactId>activemq-shiro</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.activemq</groupId>
        <artifactId>activemq-spring</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.activemq</groupId>
        <artifactId>activemq-runtime-config</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.activemq</groupId>
        <artifactId>activemq-web</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.activemq</groupId>
        <artifactId>activemq-web-demo</artifactId>
        <version>${project.version}</version>
        <type>war</type>
      </dependency>
      <dependency>
        <groupId>org.apache.activemq</groupId>
        <artifactId>activemq-web-console</artifactId>
        <version>${project.version}</version>
        <type>war</type>
      </dependency>
      <dependency>
        <groupId>org.apache.activemq</groupId>
        <artifactId>activemq-console</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.activemq</groupId>
        <artifactId>activemq-ra</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.activemq</groupId>
        <artifactId>activemq-rar</artifactId>
        <version>${project.version}</version>
        <type>rar</type>
      </dependency>
      <dependency>
        <groupId>org.apache.activemq</groupId>
        <artifactId>activemq-run</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.activemq</groupId>
        <artifactId>activemq-web</artifactId>
        <version>${project.version}</version>
        <type>war</type>
      </dependency>
      <dependency>
        <groupId>org.apache.activemq</groupId>
        <artifactId>activeio-core</artifactId>
        <version>${activeio-version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.activemq</groupId>
        <artifactId>activeio-core</artifactId>
        <version>${activeio-version}</version>
        <type>test-jar</type>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.apache.activemq</groupId>
        <artifactId>activemq-openwire-generator</artifactId>
        <version>${project.version}</version>
      </dependency>
     <dependency>
        <groupId>org.apache.activemq</groupId>
        <artifactId>activemq-karaf</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.activemq.protobuf</groupId>
        <artifactId>activemq-protobuf</artifactId>
        <version>${activemq-protobuf-version}</version>
      </dependency>

      <!-- =============================== -->
      <!-- Required dependencies -->
      <!-- =============================== -->
      <dependency>
        <groupId>commons-logging</groupId>
        <artifactId>commons-logging</artifactId>
        <version>${commons-logging-version}</version>
        <exclusions>
          <exclusion>
            <groupId>avalon-framework</groupId>
            <artifactId>avalon-framework</artifactId>
          </exclusion>
          <exclusion>
            <groupId>logkit</groupId>
            <artifactId>logkit</artifactId>
          </exclusion>
          <exclusion>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
          </exclusion>
          <exclusion>
            <groupId>javax.servlet</groupId>
            <artifactId>servlet-api</artifactId>
          </exclusion>
        </exclusions>
      </dependency>

      <dependency>
        <groupId>org.apache.geronimo.specs</groupId>
        <artifactId>geronimo-jms_1.1_spec</artifactId>
        <version>1.1.1</version>
      </dependency>

      <dependency>
        <groupId>org.apache.geronimo.specs</groupId>
        <artifactId>geronimo-jta_1.1_spec</artifactId>
        <version>1.1.1</version>
      </dependency>

      <dependency>
        <groupId>org.apache.geronimo.specs</groupId>
        <artifactId>geronimo-j2ee-management_1.1_spec</artifactId>
        <version>1.0.1</version>
      </dependency>

      <dependency>
        <groupId>org.apache.geronimo.specs</groupId>
        <artifactId>geronimo-jacc_1.1_spec</artifactId>
        <version>1.0.2</version>
      </dependency>

      <dependency>
        <groupId>org.apache.geronimo.specs</groupId>
        <artifactId>geronimo-j2ee-connector_1.5_spec</artifactId>
        <version>2.0.0</version>
      </dependency>
     <dependency>
       <groupId>org.ow2.asm</groupId>
       <artifactId>asm</artifactId>
       <version>9.1</version>
     </dependency>

      <!-- Servlet 3.1 and JSP -->
      <dependency>
          <groupId>org.apache.tomcat</groupId>
          <artifactId>tomcat-jsp-api</artifactId>
          <version>${tomcat-api-version}</version>
      </dependency>
       <dependency>
          <groupId>org.apache.tomcat</groupId>
          <artifactId>tomcat-servlet-api</artifactId>
          <version>${tomcat-api-version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.tomcat</groupId>
        <artifactId>tomcat-websocket-api</artifactId>
        <version>${tomcat-api-version}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.geronimo.specs</groupId>
        <artifactId>geronimo-annotation_1.0_spec</artifactId>
        <version>1.1.1</version>
      </dependency>


      <!-- =============================== -->
      <!-- Optional dependencies -->
      <!-- =============================== -->

      <dependency>
        <groupId>org.apache.camel</groupId>
        <artifactId>camel-core</artifactId>
        <version>${camel-version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.camel</groupId>
        <artifactId>camel-spring</artifactId>
        <version>${camel-version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.camel</groupId>
        <artifactId>camel-blueprint</artifactId>
        <version>${camel-version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.camel</groupId>
        <artifactId>camel-jms</artifactId>
        <version>${camel-version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.camel</groupId>
        <artifactId>camel-test</artifactId>
        <version>${camel-version}</version>
      </dependency>
       <dependency>
        <groupId>org.apache.camel</groupId>
        <artifactId>camel-test-spring</artifactId>
        <version>${camel-version}</version>
      </dependency>

      <dependency>
        <groupId>org.osgi</groupId>
        <artifactId>osgi.core</artifactId>
        <version>${osgi-version}</version>
      </dependency>
      <dependency>
        <groupId>org.osgi</groupId>
        <artifactId>osgi.cmpn</artifactId>
        <version>${osgi-version}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.hadoop.zookeeper</groupId>
        <artifactId>zookeeper</artifactId>
        <version>${zookeeper-version}</version>
      </dependency>

      <!-- zeroconf transport -->
      <dependency>
        <groupId>javax.jmdns</groupId>
        <artifactId>jmdns</artifactId>
        <version>${jmdns-version}</version>
      </dependency>

      <!-- For jsvc support -->
      <dependency>
        <groupId>commons-daemon</groupId>
        <artifactId>commons-daemon</artifactId>
        <version>${commons-daemon-version}</version>
      </dependency>

      <!-- camel testing -->
      <dependency>
        <groupId>org.apache.camel</groupId>
        <artifactId>camel-core</artifactId>
        <version>${camel-version}</version>
        <type>test-jar</type>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.apache.camel</groupId>
        <artifactId>camel-spring</artifactId>
        <version>${camel-version}</version>
        <type>test-jar</type>
        <scope>test</scope>
      </dependency>

      <!--  for custom XML parsing -->
      <dependency>
        <groupId>org.apache.xbean</groupId>
        <artifactId>xbean-spring</artifactId>
        <version>${xbean-version}</version>
        <exclusions>
          <exclusion>
            <groupId>qdox</groupId>
            <artifactId>qdox</artifactId>
          </exclusion>
        </exclusions>
      </dependency>

      <!-- Jackson -->
      <dependency>
        <groupId>com.fasterxml.jackson.core</groupId>
        <artifactId>jackson-core</artifactId>
        <version>${jackson-version}</version>
      </dependency>
      <dependency>
        <groupId>com.fasterxml.jackson.core</groupId>
        <artifactId>jackson-annotations</artifactId>
        <version>${jackson-version}</version>
      </dependency>
      <dependency>
        <groupId>com.fasterxml.jackson.core</groupId>
        <artifactId>jackson-databind</artifactId>
        <version>${jackson-version}</version>
      </dependency>

      <!-- Used to configure the activemq logs -->
      <dependency>
        <groupId>log4j</groupId>
        <artifactId>log4j</artifactId>
        <version>${log4j-version}</version>
        <scope>runtime</scope>
      </dependency>

      <!-- used to support optional transport configuration via URI query strings -->

      <dependency>
        <groupId>commons-beanutils</groupId>
        <artifactId>commons-beanutils</artifactId>
        <version>${commons-beanutils-version}</version>
      </dependency>

      <dependency>
        <groupId>commons-collections</groupId>
        <artifactId>commons-collections</artifactId>
        <version>${commons-collections-version}</version>
      </dependency>

      <!-- Optional Shiro Support -->
      <dependency>
        <groupId>org.apache.shiro</groupId>
        <artifactId>shiro-core</artifactId>
        <version>${shiro-version}</version>
        <optional>true</optional>
      </dependency>
      <dependency>
        <groupId>org.apache.shiro</groupId>
        <artifactId>shiro-spring</artifactId>
        <version>${shiro-version}</version>
        <optional>true</optional>
      </dependency>

      <!-- Optional Spring Support -->
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-aop</artifactId>
        <version>${spring-version}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-beans</artifactId>
        <version>${spring-version}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-context</artifactId>
        <version>${spring-version}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-core</artifactId>
        <version>${spring-version}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-expression</artifactId>
        <version>${spring-version}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-jms</artifactId>
        <version>${spring-version}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-tx</artifactId>
        <version>${spring-version}</version>
      </dependency>
      <!--
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring</artifactId>
        <version>${spring-version}</version>
        <exclusions>
          <exclusion>
            <groupId>javax.mail</groupId>
            <artifactId>mail</artifactId>
          </exclusion>
          <exclusion>
            <groupId>javax.resource</groupId>
            <artifactId>connector</artifactId>
          </exclusion>
          <exclusion>
            <groupId>javax.transaction</groupId>
            <artifactId>jta</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.springframework</groupId>
            <artifactId>spring-support</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.springframework</groupId>
            <artifactId>spring-orm</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.springframework</groupId>
            <artifactId>spring-hibernate</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.springframework</groupId>
            <artifactId>spring-remoting</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.springframework</groupId>
            <artifactId>spring-core</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      -->
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-webmvc</artifactId>
        <version>${spring-version}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-web</artifactId>
        <version>${spring-version}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-test</artifactId>
        <version>${spring-version}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-oxm</artifactId>
        <version>${spring-version}</version>
      </dependency>

      <!-- Optional Derby support-->
      <dependency>
        <groupId>org.apache.derby</groupId>
        <artifactId>derby</artifactId>
        <version>${org-apache-derby-version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.derby</groupId>
        <artifactId>derbynet</artifactId>
        <version>${org-apache-derby-version}</version>
      </dependency>

      <!-- Optional Axion support -->
      <dependency>
        <groupId>axion</groupId>
        <artifactId>axion</artifactId>
        <version>${axion-version}</version>
      </dependency>

      <dependency>
        <groupId>commons-primitives</groupId>
        <artifactId>commons-primitives</artifactId>
        <version>${commons-primitives-version}</version>
      </dependency>

      <dependency>
        <groupId>regexp</groupId>
        <artifactId>regexp</artifactId>
        <version>${regexp-version}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-dbcp2</artifactId>
        <version>${commons-dbcp2-version}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-pool2</artifactId>
        <version>${commons-pool2-version}</version>
      </dependency>

      <!-- To use XPath using JAXP 1.3 (std in Java 5) -->
      <dependency>
        <groupId>activesoap</groupId>
        <artifactId>jaxp-api</artifactId>
        <version>${activesoap-version}</version>
      </dependency>

      <dependency>
        <groupId>xalan</groupId>
        <artifactId>xalan</artifactId>
        <version>${xalan-version}</version>
      </dependency>

      <dependency>
        <groupId>com.thoughtworks.xstream</groupId>
        <artifactId>xstream</artifactId>
        <version>${xstream-version}</version>
        <exclusions>
          <exclusion>
            <!-- xom is an optional dependency of xstream. Its also
              LGPL, so its really not ASF compatible. -->
            <groupId>xom</groupId>
            <artifactId>xom</artifactId>
          </exclusion>
        </exclusions>
      </dependency>

      <dependency>
        <groupId>xpp3</groupId>
        <artifactId>xpp3</artifactId>
        <version>${xpp3-version}</version>
      </dependency>


      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>apache-jsp</artifactId>
        <version>${jetty-version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>apache-jstl</artifactId>
        <version>${jetty-version}</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.jetty.aggregate</groupId>
        <artifactId>jetty-all</artifactId>
        <version>${jetty-version}</version>
        <classifier>uber</classifier>
        <exclusions>
          <exclusion>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
          </exclusion>
          <exclusion>
            <groupId>javax.websocket</groupId>
            <artifactId>javax.websocket-api</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.websocket</groupId>
        <artifactId>websocket-server</artifactId>
        <version>${jetty-version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.httpcomponents</groupId>
        <artifactId>httpclient</artifactId>
        <version>${httpclient-version}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.httpcomponents</groupId>
        <artifactId>httpcore</artifactId>
        <version>${httpcore-version}</version>
      </dependency>


      <!-- Tag Libs -->
      <dependency>
        <groupId>org.apache.taglibs</groupId>
        <artifactId>taglibs-standard-spec</artifactId>
        <version>${taglibs-version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.taglibs</groupId>
        <artifactId>taglibs-standard-impl</artifactId>
        <version>${taglibs-version}</version>
      </dependency>

      <dependency>
        <groupId>org.jasypt</groupId>
        <artifactId>jasypt</artifactId>
        <version>${jasypt-version}</version>
      </dependency>

      <!-- testing dependencies -->
      <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>${junit-version}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.mockito</groupId>
        <artifactId>mockito-core</artifactId>
        <version>${mockito-version}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.mockito</groupId>
        <artifactId>mockito-inline</artifactId>
        <version>${mockito-version}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.jmock</groupId>
        <artifactId>jmock-junit4</artifactId>
        <version>${jmock-version}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.jmock</groupId>
        <artifactId>jmock-legacy</artifactId>
        <version>${jmock-version}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.hamcrest</groupId>
        <artifactId>hamcrest-all</artifactId>
        <version>${hamcrest-version}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.codehaus.jettison</groupId>
        <artifactId>jettison</artifactId>
        <version>${jettison-version}</version>
    </dependency>

      <dependency>
        <groupId>annogen</groupId>
        <artifactId>annogen</artifactId>
        <version>${annogen-version}</version>
      </dependency>

      <dependency>
        <groupId>commons-io</groupId>
        <artifactId>commons-io</artifactId>
        <version>${commons-io-version}</version>
      </dependency>

      <!-- ACTIVEMQ-WEB Specific Dependencies -->
      <dependency>
        <groupId>com.rometools</groupId>
        <artifactId>rome</artifactId>
        <version>${rome-version}</version>
      </dependency>
      <dependency>
        <groupId>org.fusesource.mqtt-client</groupId>
        <artifactId>mqtt-client</artifactId>
        <version>${mqtt-client-version}</version>
      </dependency>

      <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-api</artifactId>
        <version>${slf4j-version}</version>
      </dependency>
      <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-log4j12</artifactId>
        <version>${slf4j-version}</version>
      </dependency>
      <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>jcl-over-slf4j</artifactId>
        <version>${slf4j-version}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.geronimo.components</groupId>
        <artifactId>geronimo-transaction</artifactId>
        <version>3.1.4</version>
      </dependency>

      <!-- FTP support for BlobMessages -->
        <dependency>
            <groupId>commons-net</groupId>
            <artifactId>commons-net</artifactId>
            <version>${commons-net-version}</version>
        </dependency>

      <dependency>
        <groupId>org.apache.velocity</groupId>
        <artifactId>velocity-engine-core</artifactId>
        <version>${velocity-version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.servicemix.bundles</groupId>
        <artifactId>org.apache.servicemix.bundles.josql</artifactId>
        <version>${josql-version}</version>
      </dependency>
      <dependency>
        <groupId>javax.xml.bind</groupId>
        <artifactId>jaxb-api</artifactId>
        <version>2.3.1</version>
      </dependency>
      <dependency>
        <groupId>javax.annotation</groupId>
        <artifactId>javax.annotation-api</artifactId>
        <version>1.3.2</version>
      </dependency>

    </dependencies>
  </dependencyManagement>

  <build>
    <defaultGoal>test</defaultGoal>
    <pluginManagement>
      <plugins>
        <plugin>
          <groupId>org.apache.activemq.protobuf</groupId>
          <artifactId>activemq-protobuf</artifactId>
          <version>${activemq-protobuf-version}</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-antrun-plugin</artifactId>
          <version>${maven-antrun-plugin-version}</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-assembly-plugin</artifactId>
          <version>${maven-assembly-plugin-version}</version>
          <configuration>
            <tarLongFileMode>posix</tarLongFileMode>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-enforcer-plugin</artifactId>
          <version>${maven-enforcer-plugin-version}</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-jar-plugin</artifactId>
          <version>${maven-jar-plugin-version}</version>
          <configuration>
            <archive>
              <compress>true</compress>
            </archive>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-release-plugin</artifactId>
          <version>${maven-release-plugin-version}</version>
          <configuration>
            <autoVersionSubmodules>true</autoVersionSubmodules>
            <allowTimestampedSnapshots>false</allowTimestampedSnapshots>
            <preparationGoals>clean install</preparationGoals>
            <goals>deploy</goals>
            <remoteTagging>false</remoteTagging>
            <suppressCommitBeforeTag>false</suppressCommitBeforeTag>
            <tagNameFormat>activemq-@{project.version}</tagNameFormat>
          </configuration>
          <dependencies>
            <dependency>
             <groupId>org.apache.maven.scm</groupId>
             <artifactId>maven-scm-api</artifactId>
             <version>1.8.1</version>
            </dependency>
          <dependency>
             <groupId>org.apache.maven.scm</groupId>
             <artifactId>maven-scm-provider-gitexe</artifactId>
             <version>1.8.1</version>
           </dependency>
         </dependencies>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-surefire-plugin</artifactId>
          <version>${maven-surefire-plugin-version}</version>
          <configuration>
            <redirectTestOutputToFile>true</redirectTestOutputToFile>
            <forkCount>1</forkCount>
            <reuseForks>true</reuseForks>
            <argLine>-enableassertions</argLine>
            <failIfNoTests>false</failIfNoTests>
            <systemPropertyVariables>
                <java.awt.headless>true</java.awt.headless>
                <org.apache.activemq.kahaDB.files.skipMetadataUpdate>true</org.apache.activemq.kahaDB.files.skipMetadataUpdate>
            </systemPropertyVariables>
            <argLine>-Xmx512m</argLine>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.apache.felix</groupId>
          <artifactId>maven-bundle-plugin</artifactId>
          <version>${maven-bundle-plugin-version}</version>
        </plugin>
        <plugin>
          <groupId>org.codehaus.mojo</groupId>
          <artifactId>ianal-maven-plugin</artifactId>
          <version>${ianal-maven-plugin-version}</version>
        </plugin>
        <plugin>
          <groupId>org.codehaus.mojo</groupId>
          <artifactId>javacc-maven-plugin</artifactId>
          <version>${javacc-maven-plugin-version}</version>
        </plugin>
        <plugin>
          <groupId>org.apache.rat</groupId>
          <artifactId>apache-rat-plugin</artifactId>
          <version>${apache-rat-plugin-version}</version>
        </plugin>
        <plugin>
          <groupId>org.eclipse.jetty</groupId>
          <artifactId>jetty-maven-plugin</artifactId>
          <version>${jetty-version}</version>
        </plugin>
        <plugin>
          <groupId>org.codehaus.mojo</groupId>
          <artifactId>build-helper-maven-plugin</artifactId>
          <version>${build-helper-maven-plugin-version}</version>
        </plugin>
        <plugin>
          <groupId>org.codehaus.mojo</groupId>
          <artifactId>cobertura-maven-plugin</artifactId>
          <version>${cobertura-maven-plugin-version}</version>
          <configuration>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-eclipse-plugin</artifactId>
          <version>${maven-eclipse-plugin-version}</version>
          <configuration>
            <downloadSources>true</downloadSources>
            <downloadJavadocs>false</downloadJavadocs>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-war-plugin</artifactId>
          <version>${maven-war-plugin-version}</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-compiler-plugin</artifactId>
          <version>${maven-compiler-plugin-version}</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-archiver</artifactId>
          <version>${maven-archiver-version}</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-plugin-plugin</artifactId>
          <version>${maven-plugin-plugin-version}</version>
        </plugin>
        <!--This plugin's configuration is used to store Eclipse m2e settings only.
            It has no influence on the Maven build itself.-->
        <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>
                       [2.3.5,)
                    </versionRange>
                    <goals>
                      <goal>cleanVersions</goal>
                      <goal>manifest</goal>
                      <goal>mapping</goal>
                    </goals>
                  </pluginExecutionFilter>
                  <action>
                    <ignore />
                  </action>
                </pluginExecution>
                <pluginExecution>
                  <pluginExecutionFilter>
                    <groupId>org.apache.activemq.protobuf</groupId>
                    <artifactId>activemq-protobuf</artifactId>
                    <versionRange>[0.0.0,)</versionRange>
                    <goals>
                      <goal>compile</goal>
                    </goals>
                  </pluginExecutionFilter>
                  <action>
                    <ignore />
                  </action>
                </pluginExecution>
                <pluginExecution>
                  <pluginExecutionFilter>
                    <groupId>org.apache.xbean</groupId>
                    <artifactId>maven-xbean-plugin</artifactId>
                    <versionRange>[0.0.0,)</versionRange>
                    <goals>
                      <goal>mapping</goal>
                    </goals>
                  </pluginExecutionFilter>
                  <action>
                    <execute />
                  </action>
                </pluginExecution>
                <pluginExecution>
                  <pluginExecutionFilter>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-plugin-plugin</artifactId>
                    <versionRange>[3.1,)</versionRange>
                    <goals>
                      <goal>descriptor</goal>
                    </goals>
                  </pluginExecutionFilter>
                  <action>
                    <ignore />
                  </action>
                </pluginExecution>
                <pluginExecution>
                  <pluginExecutionFilter>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-remote-resources-plugin</artifactId>
                    <versionRange>[1.0,)</versionRange>
                    <goals>
                      <goal>process</goal>
                    </goals>
                  </pluginExecutionFilter>
                  <action>
                    <ignore />
                  </action>
                </pluginExecution>
              </pluginExecutions>
            </lifecycleMappingMetadata>
          </configuration>
        </plugin>
      </plugins>
    </pluginManagement>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <configuration>
          <source>${source-version}</source>
          <target>${target-version}</target>
          <optimize>true</optimize>
          <debug>true</debug>
          <showDeprecation>true</showDeprecation>
          <showWarnings>true</showWarnings>
        </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.0.5</version>
                </requireMavenVersion>
              </rules>
            </configuration>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-jar-plugin</artifactId>
        <configuration>
          <archive>
            <manifest>
              <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
            </manifest>
          </archive>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>ianal-maven-plugin</artifactId>
        <executions>
          <execution>
            <goals>
              <goal>verify-legal-files</goal>
            </goals>
            <configuration>
              <strict>true</strict>
            </configuration>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.apache.rat</groupId>
        <artifactId>apache-rat-plugin</artifactId>
        <configuration>
          <excludeSubProjects>false</excludeSubProjects>
          <excludes>
            <exclude>**/*.bin</exclude>
            <exclude>**/*.log</exclude>
            <exclude>**/*.txt</exclude>
            <exclude>**/*.md</exclude>
            <exclude>**/kahadb/**/*.data</exclude>
            <exclude>**/resources/*.xsd</exclude>
            <exclude>**/src/test/resources/keystore</exclude>
            <!-- web, web-console, web-demo files -->
            <exclude>**/webapp/mqtt/mqttws31.js</exclude>
            <exclude>**/webapp/js/dojo.js</exclude>
            <exclude>**/jquery-*.js</exclude>
            <exclude>**/bootstrap.min.css</exclude>
            <exclude>**/bootstrap.min.responsive.css</exclude>
            <exclude>**/prototype.js</exclude>
            <exclude>**/web/behaviour.js</exclude>
            <exclude>**/webapp/js/common.js</exclude>
            <exclude>**/webapp/js/css.js</exclude>
            <exclude>**/webapp/js/standardista-table-sorting.js</exclude>
            <exclude>**/*.data</exclude>
            <exclude>**/webapp/test/assets/*</exclude>
            <exclude>**/*.lck</exclude>
            <exclude>**/*.patch</exclude>
            <exclude>**/*.diff</exclude>
            <!-- plotkit -->
            <exclude>**/webapp/js/plotkit/**/*</exclude>
            <!-- Eclipse files -->
            <exclude>**/.*</exclude>
            <exclude>**/.settings/*</exclude>
            <exclude>**/eclipse-classes/**/*</exclude>
            <exclude>**/target/**/*</exclude>
            <exclude>**/*.iml</exclude>
            <exclude>**/*.ipr</exclude>
            <exclude>**/*.iws</exclude>
            <exclude>**/.idea/**/*</exclude>
            <exclude>.git/**/*</exclude>
            <exclude>**/activemq-data/**/*</exclude>
            <exclude>**/dependency-reduced-pom.xml</exclude>
            <exclude>**/*.sln</exclude>
            <exclude>**/*.userprefs</exclude>
            <exclude>**/*.csproj</exclude>
            <exclude>**/mqttws31.js</exclude>
            <exclude>**/stomp.js</exclude>
            <exclude>**/__init__.py</exclude>
            <exclude>**/webapp/decorators/footer.jsp</exclude>
            <exclude>**/docs/img/*.svg</exclude>
            <exclude>**/testJdbcConfig/**/*</exclude>
          </excludes>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-javadoc-plugin</artifactId>
        <version>${maven-javadoc-plugin-version}</version>
        <configuration>
          <links>
            <link>${javase-javadoc-url}</link>
            <link>${javaee-javadoc-url}</link>
            <link>http://jakarta.apache.org/commons/collections/apidocs-COLLECTIONS_3_0/</link>
            <link>http://jakarta.apache.org/commons/dbcp/apidocs/</link>
            <link>http://jakarta.apache.org/commons/fileupload/apidocs/</link>
            <link>http://hc.apache.org/httpcomponents-client-ga/httpclient/apidocs/</link>
            <link>${slf4j-javadoc-url}</link>
            <link>http://jakarta.apache.org/commons/pool/apidocs/</link>
            <link>http://junit.sourceforge.net/javadoc/</link>
            <link>http://logging.apache.org/log4j/docs/api/</link>
          </links>
          <stylesheetfile>${basedir}/../etc/css/stylesheet.css</stylesheetfile>
          <linksource>true</linksource>
          <maxmemory>2048m</maxmemory>
          <source>${source-version}</source>
          <additionalJOption>-J-Xmx2048m</additionalJOption>
          <!-- necessary for now under the javadocs can be fixed because jdk8 is much stricter -->
          <additionalJOption>${javadoc.options}</additionalJOption>
        </configuration>
        <executions>
            <execution>
                <id>aggregate</id>
                <phase>site</phase>
                <goals>
                    <goal>aggregate</goal>
                </goals>
            </execution>
        </executions>
      </plugin>
    </plugins>
  </build>
  <reporting>
    <plugins>
      <!--
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-jxr-plugin</artifactId>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-report-plugin</artifactId>
        <version>${maven-surefire-plugin-version}</version>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-checkstyle-plugin</artifactId>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-pmd-plugin</artifactId>
      </plugin>
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>cobertura-maven-plugin</artifactId>
      </plugin>
      -->
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>taglist-maven-plugin</artifactId>
        <version>${taglist-maven-plugin-version}</version>
      </plugin>
    </plugins>
  </reporting>

  <profiles>

    <profile>
      <id>full.test</id>
      <modules>
        <module>activemq-unit-tests</module>
        <module>activemq-karaf-itest</module>
        <module>activemq-itests-spring31</module>
      </modules>
    </profile>

    <!-- If you enable this profile, the console message will have a timestamp -->
    <profile>
      <id>consolets</id>
      <build>
        <plugins>
          <plugin>
            <groupId>org.fusesource.mvnplugins</groupId>
            <artifactId>maven-consolets-plugin</artifactId>
            <version>1.30</version>
            <configuration>
              <enabled>true</enabled>
            </configuration>
            <executions>
              <execution>
                <phase>validate</phase>
                <goals>
                  <goal>install</goal>
                </goals>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>
    <profile>
      <id>apache-release</id>
      <activation>
        <property>
          <name>apache-release</name>
        </property>
      </activation>
      <build>
        <plugins>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            <version>${maven-surefire-plugin-version}</version>
            <configuration>
              <test>false</test>
            </configuration>
          </plugin>
          <plugin>
            <groupId>org.apache.rat</groupId>
            <artifactId>apache-rat-plugin</artifactId>
            <executions>
              <execution>
                <phase>verify</phase>
                <goals>
                  <goal>check</goal>
                </goals>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>
    <profile>
      <id>deploy</id>
      <build>
        <defaultGoal>deploy</defaultGoal>
        <plugins>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-source-plugin</artifactId>
            <version>${maven-source-plugin-version}</version>
            <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>
            <executions>
              <execution>
                <id>attach-javadocs</id>
                  <goals>
                    <goal>jar</goal>
                  </goals>
              </execution>
            </executions>
          </plugin>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-project-info-reports-plugin</artifactId>
            <version>${maven-project-info-reports-plugin-version}</version>
            <configuration>
              <dependencyLocationsEnabled>
                false
              </dependencyLocationsEnabled>
            </configuration>
          </plugin>
        </plugins>
      </build>
    </profile>
    <!--
      To generate a graph of the project dependencies, run:
      mvn -P graph graph:reactor -Dhide-scope=test -Dhide-transitive=true -Dhide-external=true -Dgraph.label= -Dhide-version=true -Dhide-group-id=true -Dhide-type=true
    -->
    <profile>
      <id>graph</id>
      <build>
        <plugins>
          <plugin>
            <groupId>org.fusesource.mvnplugins</groupId>
            <artifactId>maven-graph-plugin</artifactId>
            <version>${maven-graph-plugin-version}</version>
          </plugin>
        </plugins>
      </build>
    </profile>
    <profile>
        <id>jetty9</id>
        <properties>
            <jetty-version>${jetty9-version}</jetty-version>
        </properties>
    </profile>

    <!-- Execute owasp dependency check plugin -->
    <profile>
      <id>owasp</id>
      <build>
        <plugins>
          <plugin>
            <groupId>org.owasp</groupId>
            <artifactId>dependency-check-maven</artifactId>
            <version>${owasp-dependency-check-version}</version>
            <configuration>
              <skipProvidedScope>true</skipProvidedScope>
              <skipRuntimeScope>true</skipRuntimeScope>
              <skipSystemScope>true</skipSystemScope>
            </configuration>
            <executions>
              <execution>
                <goals>
                  <goal>aggregate</goal>
                </goals>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>

    <!-- Need to disable doclint for JDK 8 builds so Javadocs work -->
    <profile>
      <id>jdk8-disable-doclint</id>
      <activation>
        <jdk>[1.8,)</jdk>
      </activation>
      <properties>
        <javadoc.options>-Xdoclint:none</javadoc.options>
     </properties>
   </profile>
  </profiles>
</project>
