<?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">
  <modelVersion>4.0.0</modelVersion>

  <parent>
    <groupId>org.apache.archiva</groupId>
    <artifactId>archiva-parent</artifactId>
    <version>19-SNAPSHOT</version>
  </parent>

  <artifactId>archiva</artifactId>
  <version>3.0.0-SNAPSHOT</version>
  <packaging>pom</packaging>

  <name>Apache Archiva</name>
  <url>https://archiva.apache.org</url>

  <modules>
    <module>archiva-cli</module>
    <module>archiva-modules</module>
    <module>archiva-docs</module>
    <module>archiva-jetty</module>
  </modules>

  <scm>
    <connection>scm:git:https://gitbox.apache.org/repos/asf/archiva.git</connection>
    <developerConnection>scm:git:https://gitbox.apache.org/repos/asf/archiva.git</developerConnection>
    <url>https://github.com/apache/archiva</url>
    <tag>HEAD</tag>
  </scm>

  <properties>
    <redback.version>3.0.0-SNAPSHOT</redback.version>

    <!-- Java Enterprise APIs -->



    <maven3x.version>3.5.4</maven3x.version>
    <maven.resolver.version>1.4.1</maven.resolver.version>
    <maven.indexer.version>6.0.1-SNAPSHOT</maven.indexer.version>
    <maven-model-converter.version>2.3</maven-model-converter.version>
    <wagon.version>3.3.3</wagon.version>




    <!-- dependencies of maven modules -->
    <jsoup.version>1.12.1</jsoup.version>
    <rome.version>1.13.1</rome.version>
    <cronutils.version>9.0.2</cronutils.version>

    <lucene.version>4.10.4</lucene.version>

    <!-- JCR modules -->
    <javax.jcr.version>2.0</javax.jcr.version>
    <!-- If you change the JCR OAK version, you may have to update the pom.xml in the module oak-jcr-lucene
         to adapt to dependency changes -->
    <jcr-oak.version>1.22.3</jcr-oak.version>


    <!-- Jackrabbit classes are still used for webdav -->
    <jackrabbit.version>2.15.4</jackrabbit.version>
    <metrics-core.version>3.1.0</metrics-core.version>

    <derbyVersion>10.13.1.1</derbyVersion>
    <httpclient.version>4.5.2</httpclient.version>
    <httpclient.core.version>4.4.4</httpclient.core.version>

    <openjpaVersion>2.4.1</openjpaVersion>

    <modelmapper.version>2.3.5</modelmapper.version>

    <sisu-inject-plexus.version>0.3.3</sisu-inject-plexus.version>
    <plexus-utils.version>3.1.0</plexus-utils.version>
    <html.unit.version>2.27</html.unit.version>

    <springockito.version>1.0.9</springockito.version>
    <mockito.version>1.9.5</mockito.version>

    <easymock.version>4.1</easymock.version>

    <jacoco.plugin.version>0.7.9</jacoco.plugin.version>

    <joda.time.version>1.5.2</joda.time.version>

    <glassfish.jaxb.version>2.3.3</glassfish.jaxb.version>

    <!-- restore when we will be able to use a derby in memory database -->
    <redbackTestJdbcUrl>jdbc:derby:memory:users-test;create=true</redbackTestJdbcUrl>
    <redbackTestJdbcDriver>org.apache.derby.jdbc.EmbeddedDriver</redbackTestJdbcDriver>

    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <surefire.redirectTestOutputToFile>true</surefire.redirectTestOutputToFile>


    <release.preparationGoals>clean install</release.preparationGoals>

    <openjpa.Log>DefaultLevel=INFO,Runtime=ERROR,Tool=ERROR,SQL=ERROR,Schema=ERROR,MetaData=ERROR</openjpa.Log>

    <jacocoproperty/>


  </properties>

  <dependencyManagement>
    <dependencies>


      <dependency>
        <groupId>javax.inject</groupId>
        <artifactId>javax.inject</artifactId>
        <version>${javax.inject.version}</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>javax.transaction</groupId>
        <artifactId>javax.transaction-api</artifactId>
        <version>${javax.transaction.version}</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>javax.persistence</groupId>
        <artifactId>javax.persistence-api</artifactId>
        <version>${javax.persistence.version}</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>javax.annotation</groupId>
        <artifactId>javax.annotation-api</artifactId>
        <version>${javax.annotation.version}</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>javax.activation</groupId>
        <artifactId>activation</artifactId>
        <version>${javax.activation.version}</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>javax.xml.bind</groupId>
        <artifactId>jaxb-api</artifactId>
        <version>${javax.jaxb.version}</version>
      </dependency>
      <dependency>
        <groupId>javax.ws.rs</groupId>
        <artifactId>javax.ws.rs-api</artifactId>
        <version>${javax.jaxrs.version}</version>
      </dependency>


      <dependency>
        <groupId>org.apache.openjpa</groupId>
        <artifactId>openjpa</artifactId>
        <version>${openjpa.version}</version>
        <exclusions>
          <exclusion>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.apache.geronimo.specs</groupId>
            <artifactId>geronimo-jpa_2.0_spec</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.apache.geronimo.specs</groupId>
            <artifactId>geronimo-jms_1.1_spec</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.apache.geronimo.specs</groupId>
            <artifactId>geronimo-jta_1.1_spec</artifactId>
          </exclusion>
        </exclusions>
      </dependency>


      <dependency>
        <groupId>org.apache.archiva.maven</groupId>
        <artifactId>archiva-maven-common</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva.maven</groupId>
        <artifactId>archiva-maven-metadata</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva.maven</groupId>
        <artifactId>archiva-maven-model</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>archiva-repository-admin-api</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>archiva-repository-admin-default</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>metadata-model</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>metadata-repository-api</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>metadata-statistics-api</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>metadata-repository-api</artifactId>
        <version>${project.version}</version>
        <classifier>tests</classifier>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>metadata-store-jcr</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>metadata-store-file</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>metadata-store-cassandra</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>repository-statistics</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>problem-reports</artifactId>
        <version>${project.version}</version>
        <scope>runtime</scope>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>audit</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva.maven</groupId>
        <artifactId>archiva-maven-repository</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>generic-metadata-support</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>archiva-checksum</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>archiva-common</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>archiva-mock</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>archiva-filelock</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>archiva-configuration</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>archiva-consumer-api</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>archiva-core-consumers</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>archiva-metadata-consumer</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>archiva-storage-api</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>archiva-storage-fs</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>test-repository</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva.maven</groupId>
        <artifactId>archiva-maven-indexer</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva.maven</groupId>
        <artifactId>archiva-maven-converter</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>archiva-model</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>archiva-policies</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>archiva-proxy-api</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>archiva-proxy</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva.maven</groupId>
        <artifactId>archiva-maven-proxy</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>archiva-repository-layer</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>archiva-repository-api</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>archiva-repository-scanner</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>archiva-scheduler-api</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>archiva-scheduler-repository-api</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>archiva-scheduler-repository</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>archiva-scheduler-indexing</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva.maven</groupId>
        <artifactId>archiva-maven-scheduler</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>archiva-security</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>archiva-security-common</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>archiva-signature-consumers</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>archiva-transaction</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>archiva-docs</artifactId>
        <version>${project.version}</version>
        <type>zip</type>
        <classifier>docs</classifier>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>archiva-webapp</artifactId>
        <version>${project.version}</version>
        <type>war</type>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>archiva-xml-tools</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>archiva-webdav</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>archiva-web-common</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>archiva-rss</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>stage-repository-merge</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>archiva-test-utils</artifactId>
        <version>${project.version}</version>
        <scope>test</scope>
      </dependency>


      <!-- Jackrabbit OAK JCR Provider -->
      <dependency>
        <groupId>org.apache.jackrabbit</groupId>
        <artifactId>oak-jcr</artifactId>
        <version>${jcr-oak.version}</version>
        <exclusions>
          <exclusion>
            <groupId>ch.qos.logback</groupId>
            <artifactId>logback-classic</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.apache.jackrabbit</groupId>
        <artifactId>oak-core</artifactId>
        <version>${jcr-oak.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.jackrabbit</groupId>
        <artifactId>oak-segment-tar</artifactId>
        <version>${jcr-oak.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.jackrabbit</groupId>
        <artifactId>oak-store-spi</artifactId>
        <version>${jcr-oak.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.jackrabbit</groupId>
        <artifactId>oak-api</artifactId>
        <version>${jcr-oak.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.jackrabbit</groupId>
        <artifactId>oak-core-spi</artifactId>
        <version>${jcr-oak.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.jackrabbit</groupId>
        <artifactId>oak-blob</artifactId>
        <version>${jcr-oak.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.jackrabbit</groupId>
        <artifactId>oak-query-spi</artifactId>
        <version>${jcr-oak.version}</version>
      </dependency>


      <dependency>
        <groupId>org.apache.jackrabbit</groupId>
        <artifactId>oak-lucene</artifactId>
        <version>${jcr-oak.version}</version>
        <exclusions>
          <exclusion>
            <groupId>org.apache.lucene</groupId>
            <artifactId>lucene-misc</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.apache.lucene</groupId>
            <artifactId>lucene-facet</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.apache.jackrabbit</groupId>
        <artifactId>jackrabbit-webdav</artifactId>
        <version>${jackrabbit.version}</version>
      </dependency>

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

      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>oak-jcr-lucene</artifactId>
        <version>${project.version}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.jackrabbit</groupId>
        <artifactId>oak-store-document</artifactId>
        <version>${jcr-oak.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.jackrabbit</groupId>
        <artifactId>oak-search</artifactId>
        <version>${jcr-oak.version}</version>
      </dependency>



      <!-- Maven dependencies -->
      <dependency>
        <groupId>org.apache.maven.indexer</groupId>
        <artifactId>indexer-reader</artifactId>
        <version>${maven.indexer.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.maven.indexer</groupId>
        <artifactId>indexer-core</artifactId>
        <version>${maven.indexer.version}</version>
        <classifier>shaded-lucene</classifier>
        <exclusions>
          <exclusion>
            <groupId>org.apache.lucene</groupId>
            <artifactId>*</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.codehaus.plexus</groupId>
            <artifactId>plexus-container-default</artifactId>
          </exclusion>
          <exclusion>
            <groupId>classworlds</groupId>
            <artifactId>classworlds</artifactId>
          </exclusion>
          <exclusion>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
          </exclusion>
          <exclusion>
            <groupId>velocity</groupId>
            <artifactId>velocity-dep</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.apache.maven</groupId>
            <artifactId>maven-plugin-registry</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.apache.maven</groupId>
            <artifactId>maven-settings</artifactId>
          </exclusion>
          <exclusion>
            <groupId>com.google.code.atinject</groupId>
            <artifactId>atinject</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.sonatype.sisu</groupId>
            <artifactId>sisu-guava</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.sonatype.sisu</groupId>
            <artifactId>sisu-guice</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.apache.maven.resolver</groupId>
            <artifactId>*</artifactId>
          </exclusion>
          <exclusion>
            <groupId>aopalliance</groupId>
            <artifactId>aopalliance</artifactId>
          </exclusion>
          <exclusion>
            <groupId>com.google.inject</groupId>
            <artifactId>guice</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.apache.maven.archetype</groupId>
        <artifactId>archetype-common</artifactId>
        <version>3.0.1</version>
        <exclusions>
          <exclusion>
            <groupId>org.apache.maven</groupId>
            <artifactId>*</artifactId>
          </exclusion>
          <exclusion>
            <groupId>asm</groupId>
            <artifactId>*</artifactId>
          </exclusion>
           <exclusion>
            <groupId>org.sonatype.sisu</groupId>
            <artifactId>*</artifactId>
          </exclusion>
        </exclusions>
      </dependency>


      <dependency>
        <groupId>com.zaxxer</groupId>
        <artifactId>HikariCP</artifactId>
        <version>2.6.3</version>
      </dependency>

      <!--
      use this layer as some modules need to use maven apis
      until we find a better solution
      -->

      <dependency>
        <groupId>org.eclipse.sisu</groupId>
        <artifactId>org.eclipse.sisu.plexus</artifactId>
        <version>${sisu-inject-plexus.version}</version>
        <exclusions>
          <exclusion>
            <groupId>org.sonatype.sisu</groupId>
            <artifactId>sisu-guice</artifactId>
          </exclusion>
          <exclusion>
            <groupId>javax.annotation</groupId>
            <artifactId>jsr250-api</artifactId>
          </exclusion>
        </exclusions>
      </dependency>



      <!-- START SNIPPET: rest-dependencies -->
      <dependency>
        <groupId>com.fasterxml.jackson.jaxrs</groupId>
        <artifactId>jackson-jaxrs-json-provider</artifactId>
        <version>${jackson.version}</version>
      </dependency>
      <dependency>
        <groupId>com.fasterxml.jackson.jaxrs</groupId>
        <artifactId>jackson-jaxrs-xml-provider</artifactId>
        <version>${jackson.version}</version>
      </dependency>
      <dependency>
        <groupId>com.fasterxml.jackson.core</groupId>
        <artifactId>jackson-annotations</artifactId>
        <version>${jackson.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.cxf</groupId>
        <artifactId>cxf-rt-frontend-jaxrs</artifactId>
        <version>${cxf.version}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.cxf</groupId>
        <artifactId>cxf-rt-rs-client</artifactId>
        <version>${cxf.version}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.cxf</groupId>
        <artifactId>cxf-rt-rs-extension-providers</artifactId>
        <version>${cxf.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>archiva-rest-api</artifactId>
        <version>${project.version}</version>
      </dependency>
      <!-- END SNIPPET: rest-dependencies -->

      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>archiva-rest-services</artifactId>
        <version>${project.version}</version>
      </dependency>

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

      <dependency>
        <groupId>commons-codec</groupId>
        <artifactId>commons-codec</artifactId>
        <version>${commons.codec.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-configuration2</artifactId>
        <version>${commons.configuration.version}</version>
        <exclusions>
          <exclusion>
            <groupId>commons-beanutils</groupId>
            <artifactId>commons-beanutils-core</artifactId>
          </exclusion>
          <!-- targeting JDK 1.5, xml parser/apis not needed -->
          <exclusion>
            <groupId>xerces</groupId>
            <artifactId>xerces</artifactId>
          </exclusion>
          <exclusion>
            <groupId>xerces</groupId>
            <artifactId>xercesImpl</artifactId>
          </exclusion>
          <exclusion>
            <groupId>xml-apis</groupId>
            <artifactId>xml-apis</artifactId>
          </exclusion>
          <exclusion>
            <groupId>servletapi</groupId>
            <artifactId>servletapi</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>commons-digester</groupId>
        <artifactId>commons-digester</artifactId>
        <version>1.8.1</version>
        <exclusions>
          <exclusion>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>commons-beanutils</groupId>
        <artifactId>commons-beanutils</artifactId>
        <version>${commons.beanutils.version}</version>
        <exclusions>
          <exclusion>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-collections4</artifactId>
        <version>${commons.collections.version}</version>
      </dependency>
      <dependency>
        <groupId>commons-fileupload</groupId>
        <artifactId>commons-fileupload</artifactId>
        <version>${commons.fileupload.version}</version>
      </dependency>
      <dependency>
        <groupId>commons-io</groupId>
        <artifactId>commons-io</artifactId>
        <version>${commons.io.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-lang3</artifactId>
        <version>${commons.lang3.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-text</artifactId>
        <version>${commons.text.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.derby</groupId>
        <artifactId>derby</artifactId>
        <version>${derbyVersion}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.derby</groupId>
        <artifactId>derbytools</artifactId>
        <version>${derbyVersion}</version>
      </dependency>
      <dependency>
        <groupId>org.hsqldb</groupId>
        <artifactId>hsqldb</artifactId>
        <version>${hsqldb.version}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva</groupId>
        <artifactId>archiva-lucene-consumers</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.lucene</groupId>
        <artifactId>lucene-core</artifactId>
        <version>${lucene.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.lucene</groupId>
        <artifactId>lucene-queries</artifactId>
        <version>${lucene.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.lucene</groupId>
        <artifactId>lucene-memory</artifactId>
        <version>${lucene.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.lucene</groupId>
        <artifactId>lucene-highlighter</artifactId>
        <version>${lucene.version}</version>
      </dependency>
      <dependency>
        <groupId>javax.mail</groupId>
        <artifactId>mail</artifactId>
        <version>${javax.mail.version}</version>
      </dependency>


      <!-- Maven related dependencies -->
      <dependency>
        <groupId>org.apache.maven</groupId>
        <artifactId>maven-model</artifactId>
        <version>${maven3x.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.maven</groupId>
        <artifactId>maven-model-v3</artifactId>
        <version>2.0</version>
      </dependency>
      <dependency>
        <groupId>org.apache.maven</groupId>
        <artifactId>maven-model-builder</artifactId>
        <version>${maven3x.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.maven</groupId>
        <artifactId>maven-core</artifactId>
        <version>${maven3x.version}</version>
        <exclusions>
          <exclusion>
            <groupId>com.google.inject</groupId>
            <artifactId>guice</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.eclipse.sisu</groupId>
            <artifactId>org.eclipse.sisu.plexus</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.eclipse.sisu</groupId>
            <artifactId>org.eclipse.sisu.inject</artifactId>
          </exclusion>
          <exclusion>
            <groupId>com.google.guava</groupId>
            <artifactId>guava</artifactId>
          </exclusion>
        </exclusions>
      </dependency>

      <dependency>
        <groupId>org.apache.maven</groupId>
        <artifactId>maven-artifact</artifactId>
        <version>${maven3x.version}</version>
      </dependency>


      <dependency>
        <groupId>org.apache.maven</groupId>
        <artifactId>maven-repository-metadata</artifactId>
        <version>${maven3x.version}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.maven</groupId>
        <artifactId>maven-resolver-provider</artifactId>
        <version>${maven3x.version}</version>
        <type>pom</type>
      </dependency>


      <dependency>
        <groupId>org.apache.maven</groupId>
        <artifactId>maven-resolver-provider</artifactId>
        <version>${maven3x.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.maven.resolver</groupId>
        <artifactId>maven-resolver-api</artifactId>
        <version>${maven.resolver.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.maven.resolver</groupId>
        <artifactId>maven-resolver-impl</artifactId>
        <version>${maven.resolver.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.maven.resolver</groupId>
        <artifactId>maven-resolver-util</artifactId>
        <version>${maven.resolver.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.maven.resolver</groupId>
        <artifactId>maven-resolver</artifactId>
        <version>${maven.resolver.version}</version>
        <type>pom</type>
      </dependency>
      <dependency>
        <groupId>org.apache.maven.resolver</groupId>
        <artifactId>maven-resolver-spi</artifactId>
        <version>${maven.resolver.version}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.maven.resolver</groupId>
        <artifactId>maven-resolver-transport-file</artifactId>
        <version>${maven.resolver.version}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.maven.resolver</groupId>
        <artifactId>maven-resolver-connector-basic</artifactId>
        <version>${maven.resolver.version}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.maven.resolver</groupId>
        <artifactId>maven-resolver-transport-http</artifactId>
        <version>${maven.resolver.version}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.archiva.components</groupId>
        <artifactId>archiva-components-expression-evaluator</artifactId>
        <version>${archiva.comp.version}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.archiva.components</groupId>
        <artifactId>archiva-components-spring-taskqueue</artifactId>
        <version>${archiva.comp.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva.components</groupId>
        <artifactId>archiva-components-spring-quartz</artifactId>
        <version>${archiva.comp.version}</version>
        <exclusions>
          <exclusion>
            <groupId>javax.annotation</groupId>
            <artifactId>javax.annotation-api</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.quartz-scheduler</groupId>
        <artifactId>quartz</artifactId>
        <version>${quartz.version}</version>
        <exclusions>
          <exclusion>
            <groupId>com.mchange</groupId>
            <artifactId>c3p0</artifactId>
          </exclusion>
          <exclusion>
            <groupId>com.zaxxer</groupId>
            <artifactId>HikariCP-java7</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.codehaus.plexus</groupId>
        <artifactId>plexus-utils</artifactId>
        <version>${plexus-utils.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva.components.cache</groupId>
        <artifactId>archiva-components-spring-cache-api</artifactId>
        <version>${archiva.comp.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva.components.cache</groupId>
        <artifactId>archiva-components-spring-cache-ehcache</artifactId>
        <version>${archiva.comp.version}</version>
      </dependency>

      <!-- redback -->
      <dependency>
        <groupId>org.apache.archiva.redback</groupId>
        <artifactId>redback-users-api</artifactId>
        <version>${redback.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva.redback</groupId>
        <artifactId>redback-configuration</artifactId>
        <version>${redback.version}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.archiva.redback</groupId>
        <artifactId>redback-rbac-memory</artifactId>
        <version>${redback.version}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva.redback</groupId>
        <artifactId>redback-authorization-api</artifactId>
        <version>${redback.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva.redback</groupId>
        <artifactId>redback-users-memory</artifactId>
        <version>${redback.version}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva.redback</groupId>
        <artifactId>redback-keys-memory</artifactId>
        <version>${redback.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva.redback</groupId>
        <artifactId>redback-common-jpa</artifactId>
        <version>${redback.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva.redback</groupId>
        <artifactId>redback-keys-jpa</artifactId>
        <version>${redback.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva.redback</groupId>
        <artifactId>redback-keys-cached</artifactId>
        <version>${redback.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva.redback</groupId>
        <artifactId>redback-rbac-model</artifactId>
        <version>${redback.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva.redback</groupId>
        <artifactId>redback-authorization-rbac</artifactId>
        <version>${redback.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva.redback</groupId>
        <artifactId>redback-rbac-role-manager</artifactId>
        <version>${redback.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva.redback</groupId>
        <artifactId>redback-system</artifactId>
        <version>${redback.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva.redback</groupId>
        <artifactId>redback-common-integrations</artifactId>
        <version>${redback.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva.redback</groupId>
        <artifactId>redback-integrations-security</artifactId>
        <version>${redback.version}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.archiva.redback</groupId>
        <artifactId>redback-rbac-cached</artifactId>
        <version>${redback.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva.redback</groupId>
        <artifactId>redback-rbac-ldap</artifactId>
        <version>${redback.version}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.archiva.redback</groupId>
        <artifactId>redback-rest-api</artifactId>
        <version>${redback.version}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.archiva.redback</groupId>
        <artifactId>redback-rest-services</artifactId>
        <version>${redback.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva.redback</groupId>
        <artifactId>redback-rest-services</artifactId>
        <version>${redback.version}</version>
        <classifier>tests</classifier>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva.redback</groupId>
        <artifactId>redback-common-test-resources</artifactId>
        <version>${redback.version}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva.redback</groupId>
        <artifactId>redback-authentication-api</artifactId>
        <version>${redback.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva.redback</groupId>
        <artifactId>redback-common-ldap</artifactId>
        <version>${redback.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva.redback</groupId>
        <artifactId>redback-policy</artifactId>
        <version>${redback.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva.redback</groupId>
        <artifactId>redback-users-jpa</artifactId>
        <version>${redback.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva.redback</groupId>
        <artifactId>redback-keys-api</artifactId>
        <version>${redback.version}</version>
      </dependency>



      <dependency>
        <groupId>org.apache.archiva.redback</groupId>
        <artifactId>redback-rbac-jpa</artifactId>
        <version>${redback.version}</version>
        <scope>test</scope>
      </dependency>


      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-tx</artifactId>
        <version>${spring.version}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-orm</artifactId>
        <version>${spring.version}</version>
      </dependency>

      <!-- redback components -->

      <dependency>
        <groupId>org.apache.archiva.components.registry</groupId>
        <artifactId>archiva-components-spring-registry-api</artifactId>
        <version>${archiva.comp.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.archiva.components.registry</groupId>
        <artifactId>archiva-components-spring-registry-commons</artifactId>
        <version>${archiva.comp.version}</version>
      </dependency>
      <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>javax.servlet-api</artifactId>
        <version>${javax.servlet.version}</version>
      </dependency>
      <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-api</artifactId>
        <version>${slf4j.version}</version>
      </dependency>
      <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>jcl-over-slf4j</artifactId>
        <version>${slf4j.version}</version>
      </dependency>
      <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-ext</artifactId>
        <version>${slf4j.version}</version>
      </dependency>
      <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-jdk14</artifactId>
        <version>${slf4j.version}</version>
        <scope>runtime</scope>
      </dependency>
      <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-simple</artifactId>
        <version>${slf4j.version}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-log4j12</artifactId>
        <version>${slf4j.version}</version>
        <scope>runtime</scope>
      </dependency>
      <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>jul-to-slf4j</artifactId>
        <version>${slf4j.version}</version>
        <scope>test</scope>
      </dependency>

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

      <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-core</artifactId>
        <version>${log4j.version}</version>
        <scope>runtime</scope>
      </dependency>
      <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-slf4j-impl</artifactId>
        <version>${log4j.version}</version>
        <scope>runtime</scope>
      </dependency>
      <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-jcl</artifactId>
        <version>${log4j.version}</version>
        <scope>runtime</scope>
      </dependency>
      <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-1.2-api</artifactId>
        <version>${log4j.version}</version>
        <scope>runtime</scope>
      </dependency>
      <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-to-slf4j</artifactId>
        <version>${log4j.version}</version>
        <scope>runtime</scope>
      </dependency>

      <dependency>
        <groupId>org.apache.maven.wagon</groupId>
        <artifactId>wagon-file</artifactId>
        <version>${wagon.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.maven.wagon</groupId>
        <artifactId>wagon-http-lightweight</artifactId>
        <version>${wagon.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.maven.wagon</groupId>
        <artifactId>wagon-http-shared</artifactId>
        <version>${wagon.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.maven.wagon</groupId>
        <artifactId>wagon-http</artifactId>
        <version>${wagon.version}</version>
        <exclusions>
          <exclusion>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.apache.httpcomponents</groupId>
        <artifactId>httpclient</artifactId>
        <version>${httpclient.version}</version>
        <exclusions>
          <exclusion>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.apache.httpcomponents</groupId>
        <artifactId>httpcore</artifactId>
        <version>${httpclient.core.version}</version>
        <exclusions>
          <exclusion>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
          </exclusion>
        </exclusions>
      </dependency>

      <dependency>
        <groupId>org.apache.maven.wagon</groupId>
        <artifactId>wagon-provider-api</artifactId>
        <version>${wagon.version}</version>
      </dependency>


      <dependency>
        <groupId>org.xmlunit</groupId>
        <artifactId>xmlunit-core</artifactId>
        <version>${xmlunit.version}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.xmlunit</groupId>
        <artifactId>xmlunit-assertj</artifactId>
        <version>${xmlunit.version}</version>
        <scope>test</scope>
      </dependency>

      <dependency>
        <groupId>joda-time</groupId>
        <artifactId>joda-time</artifactId>
        <version>${joda.time.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-server</artifactId>
        <version>${jetty.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-plus</artifactId>
        <version>${jetty.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-servlet</artifactId>
        <version>${jetty.version}</version>
      </dependency>


      <!-- JCR -->
      <dependency>
        <groupId>javax.jcr</groupId>
        <artifactId>jcr</artifactId>
        <version>${javax.jcr.version}</version>
      </dependency>

      <!-- Transitive versions to manage -->
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-context</artifactId>
        <version>${spring.version}</version>
        <exclusions>
          <exclusion>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-context-support</artifactId>
        <version>${spring.version}</version>
        <exclusions>
          <exclusion>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-web</artifactId>
        <version>${spring.version}</version>
        <exclusions>
          <exclusion>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-beans</artifactId>
        <version>${spring.version}</version>
        <exclusions>
          <exclusion>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-core</artifactId>
        <version>${spring.version}</version>
        <exclusions>
          <exclusion>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-expression</artifactId>
        <version>${spring.version}</version>
        <exclusions>
          <exclusion>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-test</artifactId>
        <version>${spring.version}</version>
        <exclusions>
          <exclusion>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>cglib</groupId>
        <artifactId>cglib</artifactId>
        <version>${cglib.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.maven.shared</groupId>
        <artifactId>maven-model-converter</artifactId>
        <version>${maven-model-converter.version}</version>
        <exclusions>
          <exclusion>
            <groupId>org.codehaus.plexus</groupId>
            <artifactId>plexus-container-default</artifactId>
          </exclusion>
        </exclusions>
      </dependency>

      <dependency>
        <groupId>net.sf.ehcache</groupId>
        <artifactId>ehcache</artifactId>
        <version>${ehcache.version}</version>
        <exclusions>
          <exclusion>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.jsoup</groupId>
        <artifactId>jsoup</artifactId>
        <version>${jsoup.version}</version>
      </dependency>


      <!-- Used by Apache Cassandra as transitive dependency -->
      <dependency>
        <groupId>org.jboss.logging</groupId>
        <artifactId>jboss-logging</artifactId>
        <version>3.2.1.Final</version>
      </dependency>

      <!-- Dependencies for JDK >=9 update -->
      <dependency>
        <groupId>org.glassfish.jaxb</groupId>
        <artifactId>jaxb-runtime</artifactId>
        <version>${glassfish.jaxb.version}</version>
      </dependency>
      <!-- END - Dependencies for JDK >=9 update -->

      <dependency>
        <groupId>com.rometools</groupId>
        <artifactId>rome</artifactId>
        <version>${rome.version}</version>
      </dependency>

      <dependency>
        <groupId>com.cronutils</groupId>
        <artifactId>cron-utils</artifactId>
        <version>${cronutils.version}</version>
      </dependency>

      <dependency>
        <groupId>io.dropwizard.metrics</groupId>
        <artifactId>metrics-core</artifactId>
        <version>${metrics-core.version}</version>
      </dependency>

      <!-- Testing and mock frameworks -->
      <dependency>
        <groupId>org.assertj</groupId>
        <artifactId>assertj-core</artifactId>
        <version>3.13.2</version>
        <scope>test</scope>
        <exclusions>
          <exclusion>
            <groupId>org.junit</groupId>
            <artifactId>junit-bom</artifactId>
          </exclusion>
        </exclusions>
      </dependency>

      <dependency>
        <groupId>org.mockito</groupId>
        <artifactId>mockito-all</artifactId>
        <version>${mockito.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.kubek2k</groupId>
        <artifactId>springockito</artifactId>
        <version>${springockito.version}</version>
        <scope>test</scope>
      </dependency>


      <!-- JUNIT 5 -->
      <dependency>
        <groupId>org.junit.platform</groupId>
        <artifactId>junit-platform-launcher</artifactId>
        <version>${junit.platform.version}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.junit.platform</groupId>
        <artifactId>junit-platform-console-standalone</artifactId>
        <version>${junit.platform.version}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.junit.jupiter</groupId>
        <artifactId>junit-jupiter-engine</artifactId>
        <version>${junit.jupiter.version}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.junit.vintage</groupId>
        <artifactId>junit-vintage-engine</artifactId>
        <version>${junit.jupiter.version}</version>
        <scope>test</scope>
      </dependency>

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

      <dependency>
        <groupId>org.json</groupId>
        <artifactId>json</artifactId>
        <version>20200518</version>
        <scope>test</scope>
      </dependency>


      <dependency>
        <groupId>jakarta.xml.bind</groupId>
        <artifactId>jakarta.xml.bind-api</artifactId>
        <version>2.3.3</version>
        <scope>provided</scope>
      </dependency>

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

      <dependency>
        <groupId>org.apache.cxf</groupId>
        <artifactId>cxf-rt-transports-http</artifactId>
        <version>${cxf.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.cxf</groupId>
        <artifactId>cxf-core</artifactId>
        <version>${cxf.version}</version>
      </dependency>


    </dependencies>
  </dependencyManagement>

  <dependencies>
    <!-- These dependencies are used throughout the modules -->

    <!-- slf4j -->
    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-api</artifactId>
    </dependency>

    <!-- JUNIT 5 -->
    <dependency>
      <groupId>org.junit.platform</groupId>
      <artifactId>junit-platform-launcher</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.junit.platform</groupId>
      <artifactId>junit-platform-console-standalone</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.junit.jupiter</groupId>
      <artifactId>junit-jupiter-engine</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.junit.vintage</groupId>
      <artifactId>junit-vintage-engine</artifactId>
      <scope>test</scope>
    </dependency>
    

    <!--
    <dependency>
      <groupId>org.easymock</groupId>
      <artifactId>easymock</artifactId>
      <version>3.2</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.easymock</groupId>
      <artifactId>easymockclassextension</artifactId>
      <version>3.2</version>
      <scope>test</scope>
    </dependency>
    -->
  </dependencies>


  <build>
    <plugins>
      <!-- We want to package up license resources in the JARs produced -->
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-remote-resources-plugin</artifactId>
        <executions>
          <execution>
            <goals>
              <goal>process</goal>
            </goals>
            <configuration>
              <resourceBundles>
                <resourceBundle>org.apache:apache-jar-resource-bundle:1.3</resourceBundle>
              </resourceBundles>
            </configuration>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-enforcer-plugin</artifactId>
        <executions>
          <execution>
            <goals>
              <goal>enforce</goal>
            </goals>
            <configuration>
              <rules>
                <bannedDependencies>
                  <excludes>
                    <exclude>org.codehaus.plexus:plexus-container-default</exclude>
                    <exclude>org.codehaus.plexus:plexus-log4j-logging</exclude>
                    <exclude>org.codehaus.plexus:plexus-quartz</exclude>
                    <exclude>org.codehaus.plexus:plexus-spring</exclude>
                    <exclude>org.codehaus.redback:plexus-spring</exclude>
                    <exclude>org.slf4j:jcl104-over-slf4j</exclude>
                    <exclude>velocity:velocity-dep</exclude>
                    <exclude>velocity:velocity</exclude>
                    <exclude>classworlds:classworlds</exclude>
                    <exclude>javax.transaction:jta</exclude>
                    <exclude>*:geronimo-spec-jta</exclude>
                    <exclude>javax.sql:jdbc-stdext</exclude>
                    <exclude>ant:ant-optional</exclude>
                    <exclude>xom:xom</exclude>
                    <exclude>struts:struts</exclude>
                    <exclude>stax:stax-api</exclude>
                    <exclude>org.codehaus.plexus:plexus-xwork-integration</exclude>
                    <exclude>org.codehaus.plexus:plexus-component-api</exclude>
                    <exclude>org.codehaus.plexus:plexus-container-default</exclude>
                    <exclude>plexus:plexus-utils</exclude>
                    <exclude>com.google.code.atinject:atinject</exclude>
                    <exclude>org.codehaus.plexus.cache:plexus-cache-api</exclude>
                    <exclude>org.codehaus.plexus.cache:plexus-cache-ehcache</exclude>
                    <exclude>net.sf.ehcache:ehcache-core</exclude>
                    <exclude>org.codehaus.plexus.registry:plexus-registry-api</exclude>
                    <exclude>org.codehaus.plexus.registry:plexus-registry-commons</exclude>
                    <exclude>org.codehaus.plexus:plexus-taskqueue</exclude>

                    <exclude>commons-logging:commons-logging-api</exclude>
                    <exclude>log4j:log4j</exclude>

                    <exclude>org.sonatype.sisu:sisu-guava</exclude>
                    <exclude>org.sonatype.sisu:sisu-guice</exclude>

                    <!--
                    <exclude>org.slf4j:jcl-over-slf4j</exclude>
                    <exclude>org.slf4j:slf4j-log4j12</exclude>
                    -->

                  </excludes>
                </bannedDependencies>
              </rules>
            </configuration>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.apache.rat</groupId>
        <artifactId>apache-rat-plugin</artifactId>
        <executions>
          <execution>
            <id>rat-verify</id>
            <phase>test</phase>
            <goals>
              <goal>check</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
   </plugins>
    <pluginManagement>
      <plugins>
        <plugin>
          <groupId>org.codehaus.mojo</groupId>
          <artifactId>appassembler-maven-plugin</artifactId>
          <version>1.7</version>
          <dependencies>
            <dependency>
              <groupId>org.codehaus.plexus</groupId>
              <artifactId>plexus-utils</artifactId>
              <version>${plexusUtilsPluginsVersion}</version>
            </dependency>
          </dependencies>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-release-plugin</artifactId>
          <configuration>
            <localCheckout>true</localCheckout>
            <useReleaseProfile>false</useReleaseProfile>
            <autoVersionSubmodules>true</autoVersionSubmodules>
            <goals>deploy</goals>
            <preparationGoals>${release.preparationGoals}</preparationGoals>
            <arguments>-Prelease -DretryFailedDeploymentCount=5</arguments>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-surefire-plugin</artifactId>
          <configuration>
            <argLine></argLine>
            <redirectTestOutputToFile>${surefire.redirectTestOutputToFile}</redirectTestOutputToFile>
            <runOrder>alphabetical</runOrder>
            <systemPropertyVariables>
              <java.io.tmpdir>${project.build.directory}</java.io.tmpdir>
            </systemPropertyVariables>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.eclipse.jetty</groupId>
          <artifactId>jetty-maven-plugin</artifactId>
          <version>${jetty.version}</version>
        </plugin>
        <plugin>
          <groupId>org.apache.rat</groupId>
          <artifactId>apache-rat-plugin</artifactId>
          <configuration>
            <excludes>
              <exclude>.gitignore</exclude>
              <exclude>DEPENDENCIES</exclude>
              <exclude>README.*</exclude>
              <exclude>*.sh</exclude>
              <exclude>.git/**</exclude>
              <exclude>src/test/resources/projects/compile/goal.txt</exclude>
              <exclude>**/*.iml</exclude>
              <exclude>build-number.txt</exclude>
              <exclude>.idea/**</exclude>
              <exclude>.repository/**</exclude>
              <exclude>*.patch</exclude>
              <exclude>**/target/**</exclude>
              <exclude>**/.java-version</exclude>
              <exclude>patch.diff</exclude>
              <exclude>**/overlays/**</exclude>
              <exclude>nbactions.xml</exclude>
              <exclude>nb-configuration.xml</exclude>
              <exclude>.travis.yml</exclude>
              <exclude>out/**</exclude>
              <exclude>Jenkinsfile</exclude>
              <exclude>**/*.log</exclude>
              <exclude>**/.site-content/**</exclude>
              <exclude>**/git-sparse-checkout-pattern</exclude>
              <exclude>status-dep.txt</exclude>
            </excludes>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-dependency-plugin</artifactId>
          <version>3.1.1</version>
              <configuration>
                <ignoredDependencies>
                  <ignoredDependency>org.easymock</ignoredDependency>
                  <ignoredDependency>junit:junit</ignoredDependency>
                </ignoredDependencies>

                <!-- ignore annotations for "used but undeclared" warnings
                <ignoredUsedUndeclaredDependencies>
                  <ignoredUsedUndeclaredDependency>org.easymock</ignoredUsedUndeclaredDependency>
                </ignoredUsedUndeclaredDependencies>

                <ignoredUnusedDeclaredDependencies>
                  <ignoredUnusedDeclaredDependency>org.easymock</ignoredUnusedDeclaredDependency>
                </ignoredUnusedDeclaredDependencies>
                -->
              </configuration>
        </plugin>

      </plugins>
    </pluginManagement>
  </build>

  <profiles>
    <profile>
      <id>release</id>
      <build>
        <pluginManagement>
          <plugins>
            <plugin>
              <artifactId>maven-assembly-plugin</artifactId>
              <inherited>false</inherited>
              <configuration>
                <appendAssemblyId>false</appendAssemblyId>
                <finalName>apache-archiva-${project.version}-src</finalName>
                <descriptors>
                  <descriptor>${basedir}/src/main/assembly/src.xml</descriptor>
                </descriptors>
              </configuration>
              <executions>
                <execution>
                  <inherited>false</inherited>
                  <id>source-release-assembly</id>
                  <phase>package</phase>
                  <goals>
                    <goal>single</goal>
                  </goals>
                  <configuration>
                    <runOnlyAtExecutionRoot>true</runOnlyAtExecutionRoot>
                    <tarLongFileMode>posix</tarLongFileMode>
                  </configuration>
                </execution>
              </executions>
            </plugin>
          </plugins>
        </pluginManagement>
      </build>
    </profile>

    <profile>
      <!-- profile to run javascript webapp and it tests -->
      <id>it-js</id>
      <modules>
        <module>archiva-modules/archiva-web/archiva-webapp-test</module>
      </modules>
    </profile>
    <profile>
      <id>jacoco-coverage</id>
      <activation>
        <activeByDefault>false</activeByDefault>
      </activation>
      <build>
        <plugins>
          <plugin>
            <groupId>org.jacoco</groupId>
            <artifactId>jacoco-maven-plugin</artifactId>
            <version>${jacoco.plugin.version}</version>
            <executions>
              <execution>
                <goals>
                  <goal>prepare-agent</goal>
                </goals>
                <configuration>
                  <propertyName>jacocoproperty</propertyName>
                </configuration>
              </execution>
              <execution>
                <id>report</id>
                <phase>prepare-package</phase>
                <goals>
                  <goal>report</goal>
                </goals>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>
    <profile>
      <id>modernizer</id>
      <build>
        <plugins>
          <plugin>
            <groupId>org.gaul</groupId>
            <artifactId>modernizer-maven-plugin</artifactId>
            <version>1.9.0</version>
            <configuration>
              <javaVersion>1.8</javaVersion>
            </configuration>
            <executions>
              <execution>
                <id>modernizer</id>
                <goals>
                  <goal>modernizer</goal>
                </goals>
                <phase>process-test-classes</phase>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>
    <profile>
      <id>licence-check</id>
      <build>
        <plugins>
          <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>license-maven-plugin</artifactId>
            <version>2.0.0</version>
            <executions>
              <execution>
                <id>aggregate-download-licenses</id>
                <goals>
                  <goal>aggregate-download-licenses</goal>
                </goals>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>
  </profiles>

  <repositories>
    <repository>
      <id>archiva.snapshots</id>
      <name>Archiva VM Snapshots Repository</name>
      <url>https://archiva-repository.apache.org/archiva/repository/snapshots</url>
      <releases>
        <enabled>false</enabled>
      </releases>
      <snapshots>
        <enabled>true</enabled>
      </snapshots>
    </repository>
    <repository>
      <id>jetty.snapshots</id>
      <name>Jetty Snapshots</name>
      <url>https://oss.sonatype.org/content/repositories/jetty-snapshots/</url>
      <releases>
        <enabled>false</enabled>
      </releases>
      <snapshots>
        <enabled>true</enabled>
      </snapshots>
    </repository>
  </repositories>
  <pluginRepositories>
    <pluginRepository>
      <id>archiva.snapshots</id>
      <name>Archiva VM Snapshots Repository</name>
      <url>https://archiva-repository.apache.org/archiva/repository/snapshots</url>
      <releases>
        <enabled>false</enabled>
      </releases>
      <snapshots>
        <enabled>true</enabled>
      </snapshots>
    </pluginRepository>
    <pluginRepository>
      <id>jetty.snapshots</id>
      <name>Jetty Snapshots</name>
      <url>https://oss.sonatype.org/content/repositories/jetty-snapshots/</url>
      <releases>
        <enabled>false</enabled>
      </releases>
      <snapshots>
        <enabled>true</enabled>
      </snapshots>
    </pluginRepository>
  </pluginRepositories>
</project>