<?xml version="1.0" encoding="UTF-8"?>
<!--
  Licensed 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/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <parent>
    <groupId>org.apache</groupId>
    <artifactId>apache</artifactId>
    <version>14</version>
  </parent>
  <groupId>org.apache.hive</groupId>
  <artifactId>hive</artifactId>
  <version>2.3.8</version>
  <packaging>pom</packaging>

  <name>Hive</name>
  <url>https://hive.apache.org</url>
  <prerequisites>
    <maven>2.2.1</maven>
  </prerequisites>

  <modules>
    <module>accumulo-handler</module>
    <module>vector-code-gen</module>
    <module>beeline</module>
    <module>cli</module>
    <module>common</module>
    <module>contrib</module>
    <module>druid-handler</module>
    <module>hbase-handler</module>
    <module>jdbc-handler</module>
    <module>hcatalog</module>
    <module>hplsql</module>
    <module>jdbc</module>
    <module>metastore</module>
    <module>ql</module>
    <module>serde</module>
    <module>service-rpc</module>
    <module>service</module>
    <module>llap-common</module>
    <module>llap-client</module>
    <module>llap-ext-client</module>
    <module>llap-tez</module>
    <module>llap-server</module>
    <module>shims</module>
    <module>spark-client</module>
    <module>testutils</module>
    <module>packaging</module>
  </modules>

  <properties>
    <hive.version.shortname>2.3.0</hive.version.shortname>

    <!-- Build Properties -->
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <maven.compiler.useIncrementalCompilation>false</maven.compiler.useIncrementalCompilation>
    <maven.repo.local>${settings.localRepository}</maven.repo.local>
    <hive.path.to.root>.</hive.path.to.root>
    <hive.jdbc.driver.classifier>standalone</hive.jdbc.driver.classifier>
    <checkstyle.conf.dir>${hive.path.to.root}/checkstyle</checkstyle.conf.dir>

    <!-- Test Properties -->
    <test.extra.path></test.extra.path>
    <test.hive.hadoop.classpath>${maven.test.classpath}</test.hive.hadoop.classpath>
    <test.log4j.scheme>file://</test.log4j.scheme>
    <test.tmp.dir>${project.build.directory}/tmp</test.tmp.dir>
    <test.conf.dir>${project.build.directory}/testconf</test.conf.dir>
    <test.tmp.dir.uri>file://${test.tmp.dir}</test.tmp.dir.uri>
    <!-- Determines the log level of the console logger, hive.log is independent of this-->
    <test.console.log.level>INFO</test.console.log.level>
    <test.warehouse.dir>${project.build.directory}/warehouse</test.warehouse.dir>
    <test.warehouse.scheme>pfile://</test.warehouse.scheme>

    <!-- To add additional exclude patterns set this property -->
    <test.excludes.additional></test.excludes.additional>
    <skip.spark.files></skip.spark.files>

    <!-- Plugin and Plugin Dependency Versions -->
    <ant.contrib.version>1.0b3</ant.contrib.version>
    <datanucleus.maven.plugin.version>3.3.0-release</datanucleus.maven.plugin.version>
    <maven.test.jvm.args>-Xmx1024m -XX:MaxPermSize=256M</maven.test.jvm.args>
    <maven.antrun.plugin.version>1.7</maven.antrun.plugin.version>
    <maven.assembly.plugin.version>2.3</maven.assembly.plugin.version>
    <maven.checkstyle.plugin.version>2.12.1</maven.checkstyle.plugin.version>
    <maven.compiler.plugin.version>3.1</maven.compiler.plugin.version>
    <maven.enforcer.plugin.version>1.3.1</maven.enforcer.plugin.version>
    <maven.install.plugin.version>2.4</maven.install.plugin.version>
    <maven.jar.plugin.version>2.4</maven.jar.plugin.version>
    <maven.javadoc.plugin.version>2.4</maven.javadoc.plugin.version>
    <maven.shade.plugin.version>2.4.3</maven.shade.plugin.version>
    <maven.surefire.plugin.version>3.0.0-M4</maven.surefire.plugin.version>
    <maven.war.plugin.version>2.4</maven.war.plugin.version>
    <maven.dependency.plugin.version>2.8</maven.dependency.plugin.version>
    <maven.eclipse.plugin.version>2.9</maven.eclipse.plugin.version>
    <maven.build-helper.plugin.version>1.8</maven.build-helper.plugin.version>

    <!-- Library Dependency Versions -->
    <accumulo.version>1.7.3</accumulo.version>
    <activemq.version>5.5.0</activemq.version>
    <ant.version>1.9.1</ant.version>
    <antlr.version>3.5.2</antlr.version>
    <apache-directory-server.version>1.5.6</apache-directory-server.version>
    <apache-directory-clientapi.version>0.1</apache-directory-clientapi.version>
    <avatica.version>1.8.0</avatica.version>
    <avro.version>1.8.2</avro.version>
    <bonecp.version>0.8.0.RELEASE</bonecp.version>
    <calcite.version>1.10.0</calcite.version>
    <datanucleus-api-jdo.version>4.2.4</datanucleus-api-jdo.version>
    <datanucleus-core.version>4.1.17</datanucleus-core.version>
    <datanucleus-rdbms.version>4.1.19</datanucleus-rdbms.version>
    <datanucleus-jdo.version>3.2.0-m3</datanucleus-jdo.version>
    <commons-cli.version>1.2</commons-cli.version>
    <commons-codec.version>1.4</commons-codec.version>
    <commons-collections.version>3.2.2</commons-collections.version>
    <commons-compress.version>1.9</commons-compress.version>
    <commons-exec.version>1.1</commons-exec.version>
    <commons-httpclient.version>3.0.1</commons-httpclient.version>
    <commons-io.version>2.4</commons-io.version>
    <commons-lang.version>2.6</commons-lang.version>
    <commons-lang3.version>3.1</commons-lang3.version>
    <commons-pool.version>1.5.4</commons-pool.version>
    <commons-dbcp.version>1.4</commons-dbcp.version>
    <derby.version>10.10.2.0</derby.version>
    <dropwizard.version>3.1.0</dropwizard.version>
    <dropwizard-metrics-hadoop-metrics2-reporter.version>0.1.2</dropwizard-metrics-hadoop-metrics2-reporter.version>
    <druid.version>0.9.2</druid.version>
    <eigenbase-properties.version>1.1.5</eigenbase-properties.version>
    <guava.version>14.0.1</guava.version>
    <groovy.version>2.4.4</groovy.version>
    <h2database.version>1.3.166</h2database.version>
    <hadoop.version>2.7.2</hadoop.version>
    <hadoop.bin.path>${basedir}/${hive.path.to.root}/testutils/hadoop</hadoop.bin.path>
    <hamcrest.version>1.1</hamcrest.version>
    <hbase.version>1.1.1</hbase.version>
    <!-- required for logging test to avoid including hbase which pulls disruptor transitively -->
    <disruptor.version>3.3.0</disruptor.version>
    <hikaricp.version>2.5.1</hikaricp.version>
    <!-- httpcomponents are not always in version sync -->
    <httpcomponents.client.version>4.4</httpcomponents.client.version>
    <httpcomponents.core.version>4.4</httpcomponents.core.version>
    <ivy.version>2.4.0</ivy.version>
    <jackson.version>1.9.13</jackson.version>
    <!-- jackson 1 and 2 lines can coexist without issue, as they have different artifactIds -->
    <jackson.new.version>2.6.5</jackson.new.version>
    <jasper.version>5.5.23</jasper.version>
    <jamon.plugin.version>2.3.4</jamon.plugin.version>
    <jamon-runtime.version>2.3.1</jamon-runtime.version>
    <janino.version>2.7.6</janino.version>
    <javaewah.version>0.3.2</javaewah.version>
    <javax-servlet.version>3.0.0.v201112011016</javax-servlet.version>
    <javolution.version>5.5.1</javolution.version>
    <jdo-api.version>3.0.1</jdo-api.version>
    <jetty.version>7.6.0.v20120127</jetty.version>
    <jettison.version>1.1</jettison.version>
    <jersey.version>1.14</jersey.version>
    <!-- Glassfish jersey is included for Spark client test only -->
    <glassfish.jersey.version>2.22.2</glassfish.jersey.version>
    <jline.version>2.12</jline.version>
    <jms.version>2.0.2</jms.version>
    <joda.version>2.8.1</joda.version>
    <jodd.version>3.5.2</jodd.version>
    <json.version>1.8</json.version>
    <junit.version>4.11</junit.version>
    <kryo.version>3.0.3</kryo.version>
    <libfb303.version>0.9.3</libfb303.version>
    <libthrift.version>0.9.3</libthrift.version>
    <log4j2.version>2.6.2</log4j2.version>
    <opencsv.version>2.3</opencsv.version>
    <orc.version>1.3.4</orc.version>
    <mockito-all.version>1.9.5</mockito-all.version>
    <mina.version>2.0.0-M5</mina.version>
    <netty.version>4.0.52.Final</netty.version>
    <parquet.version>1.8.1</parquet.version>
    <pentaho-aggdesigner.version>5.1.5-jhyde</pentaho-aggdesigner.version>
    <pig.version>0.16.0</pig.version>
    <protobuf.version>2.5.0</protobuf.version>
    <stax.version>1.0.1</stax.version>
    <slf4j.version>1.7.10</slf4j.version>
    <ST4.version>4.0.4</ST4.version>
    <storage-api.version>2.4.0</storage-api.version>
    <tez.version>0.8.4</tez.version>
    <slider.version>0.90.2-incubating</slider.version>
    <super-csv.version>2.2.0</super-csv.version>
    <spark.version>2.0.0</spark.version>
    <scala.binary.version>2.11</scala.binary.version>
    <scala.version>2.11.8</scala.version>
    <tempus-fugit.version>1.1</tempus-fugit.version>
    <snappy.version>0.2</snappy.version>
    <wadl-resourcedoc-doclet.version>1.4</wadl-resourcedoc-doclet.version>
    <velocity.version>1.5</velocity.version>
    <xerces.version>2.9.1</xerces.version>
    <zookeeper.version>3.4.6</zookeeper.version>
    <jpam.version>1.1</jpam.version>
    <felix.version>2.4.0</felix.version>
    <curator.version>2.7.1</curator.version>
    <jsr305.version>3.0.0</jsr305.version>
    <tephra.version>0.6.0</tephra.version>
    <gson.version>2.2.4</gson.version>
  </properties>

  <repositories>
    <repository>
      <id>central</id>
      <name>central</name>
      <url>https://repo.maven.apache.org/maven2</url>
      <layout>default</layout>
      <releases>
        <enabled>true</enabled>
        <checksumPolicy>warn</checksumPolicy>
      </releases>
    </repository>
    <repository>
      <id>conjars</id>
      <name>Conjars</name>
      <url>http://conjars.org/repo</url>
      <layout>default</layout>
      <releases>
        <enabled>true</enabled>
        <updatePolicy>always</updatePolicy>
        <checksumPolicy>warn</checksumPolicy>
      </releases>
    </repository>
  </repositories>

  <dependencyManagement>
    <dependencies>
      <!-- dependencies are always listed in sorted order by groupId, artifectId -->
      <dependency>
        <groupId>com.esotericsoftware</groupId>
        <artifactId>kryo-shaded</artifactId>
        <version>${kryo.version}</version>
      </dependency>
      <dependency>
        <groupId>com.google.guava</groupId>
        <artifactId>guava</artifactId>
        <version>${guava.version}</version>
      </dependency>
      <dependency>
        <groupId>com.google.protobuf</groupId>
        <artifactId>protobuf-java</artifactId>
        <version>${protobuf.version}</version>
      </dependency>
      <dependency>
        <groupId>com.google.code.tempus-fugit</groupId>
        <artifactId>tempus-fugit</artifactId>
        <version>${tempus-fugit.version}</version>
        <exclusions>
          <exclusion>
            <groupId>org.hamcrest</groupId>
            <artifactId>hamcrest-core</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>com.googlecode.javaewah</groupId>
        <artifactId>JavaEWAH</artifactId>
        <version>${javaewah.version}</version>
      </dependency>
      <dependency>
        <groupId>com.jolbox</groupId>
        <artifactId>bonecp</artifactId>
        <version>${bonecp.version}</version>
      </dependency>
      <dependency>
        <groupId>com.zaxxer</groupId>
        <artifactId>HikariCP</artifactId>
        <version>${hikaricp.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.parquet</groupId>
        <artifactId>parquet</artifactId>
        <version>${parquet.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.parquet</groupId>
        <artifactId>parquet-column</artifactId>
        <version>${parquet.version}</version>
        <classifier>tests</classifier>
      </dependency>
      <dependency>
        <groupId>com.sun.jersey</groupId>
        <artifactId>jersey-core</artifactId>
        <version>${jersey.version}</version>
      </dependency>
      <dependency>
        <groupId>com.sun.jersey</groupId>
        <artifactId>jersey-json</artifactId>
        <version>${jersey.version}</version>
      </dependency>
      <dependency>
        <groupId>com.sun.jersey</groupId>
        <artifactId>jersey-server</artifactId>
        <version>${jersey.version}</version>
      </dependency>
      <dependency>
        <groupId>com.sun.jersey.contribs</groupId>
        <artifactId>wadl-resourcedoc-doclet</artifactId>
        <version>${wadl-resourcedoc-doclet.version}</version>
      </dependency>
      <dependency>
        <groupId>com.sun.jersey</groupId>
        <artifactId>jersey-servlet</artifactId>
        <version>${jersey.version}</version>
      </dependency>
      <dependency>
        <groupId>commons-cli</groupId>
        <artifactId>commons-cli</artifactId>
        <version>${commons-cli.version}</version>
      </dependency>
      <dependency>
        <groupId>commons-codec</groupId>
        <artifactId>commons-codec</artifactId>
        <version>${commons-codec.version}</version>
      </dependency>
       <dependency>
        <groupId>commons-collections</groupId>
        <artifactId>commons-collections</artifactId>
        <version>${commons-collections.version}</version>
      </dependency>
     <dependency>
        <groupId>commons-httpclient</groupId>
        <artifactId>commons-httpclient</artifactId>
        <version>${commons-httpclient.version}</version>
      </dependency>
      <dependency>
        <groupId>commons-io</groupId>
        <artifactId>commons-io</artifactId>
        <version>${commons-io.version}</version>
      </dependency>
      <dependency>
        <groupId>commons-lang</groupId>
        <artifactId>commons-lang</artifactId>
        <version>${commons-lang.version}</version>
      </dependency>
      <dependency>
        <groupId>io.netty</groupId>
        <artifactId>netty-all</artifactId>
        <version>${netty.version}</version>
      </dependency>
      <dependency>
        <groupId>javax.jdo</groupId>
        <artifactId>jdo-api</artifactId>
        <version>${jdo-api.version}</version>
      </dependency>
      <dependency>
        <groupId>javax.jms</groupId>
        <artifactId>jms</artifactId>
        <version>${jms.version}</version>
      </dependency>
      <dependency>
        <groupId>javolution</groupId>
        <artifactId>javolution</artifactId>
        <version>${javolution.version}</version>
      </dependency>
      <dependency>
        <groupId>jline</groupId>
        <artifactId>jline</artifactId>
        <version>${jline.version}</version>
      </dependency>
      <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>${junit.version}</version>
      </dependency>
      <dependency>
        <groupId>net.hydromatic</groupId>
        <artifactId>eigenbase-properties</artifactId>
        <version>${eigenbase-properties.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-1.2-api</artifactId>
        <version>${log4j2.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-web</artifactId>
        <version>${log4j2.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-slf4j-impl</artifactId>
        <version>${log4j2.version}</version>
      </dependency>
      <dependency>
        <groupId>org.antlr</groupId>
        <artifactId>antlr-runtime</artifactId>
        <version>${antlr.version}</version>
      </dependency>
      <dependency>
        <groupId>org.antlr</groupId>
        <artifactId>ST4</artifactId>
        <version>${ST4.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-compress</artifactId>
        <version>${commons-compress.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-exec</artifactId>
        <version>${commons-exec.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.accumulo</groupId>
        <artifactId>accumulo-core</artifactId>
        <version>${accumulo.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.accumulo</groupId>
        <artifactId>accumulo-fate</artifactId>
        <version>${accumulo.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.accumulo</groupId>
        <artifactId>accumulo-minicluster</artifactId>
        <version>${accumulo.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.accumulo</groupId>
        <artifactId>accumulo-start</artifactId>
        <version>${accumulo.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.accumulo</groupId>
        <artifactId>accumulo-trace</artifactId>
        <version>${accumulo.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.activemq</groupId>
        <artifactId>activemq-core</artifactId>
        <version>${activemq.version}</version>
        <exclusions>
          <exclusion>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.apache.activemq</groupId>
        <artifactId>kahadb</artifactId>
        <version>${activemq.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.avro</groupId>
        <artifactId>avro</artifactId>
        <version>${avro.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.avro</groupId>
        <artifactId>avro-mapred</artifactId>
        <classifier>hadoop2</classifier>
        <version>${avro.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.derby</groupId>
        <artifactId>derby</artifactId>
        <version>${derby.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.httpcomponents</groupId>
        <artifactId>httpclient</artifactId>
        <version>${httpcomponents.client.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.httpcomponents</groupId>
        <artifactId>httpcore</artifactId>
        <version>${httpcomponents.core.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.velocity</groupId>
        <artifactId>velocity</artifactId>
        <version>${velocity.version}</version>
      </dependency>
      <dependency>
        <groupId>stax</groupId>
        <artifactId>stax-api</artifactId>
        <version>${stax.version}</version>
      </dependency>
       <dependency>
        <groupId>org.apache.orc</groupId>
        <artifactId>orc-core</artifactId>
        <version>${orc.version}</version>
        <exclusions>
          <exclusion>
            <groupId>org.apache.hadoop</groupId>
            <artifactId>hadoop-common</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.apache.hive</groupId>
            <artifactId>hive-storage-api</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.apache.hive</groupId>
        <artifactId>hive-storage-api</artifactId>
        <version>${storage-api.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.pig</groupId>
        <artifactId>pig</artifactId>
        <version>${pig.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.thrift</groupId>
        <artifactId>libfb303</artifactId>
        <version>${libfb303.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.thrift</groupId>
        <artifactId>libthrift</artifactId>
        <version>${libthrift.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.zookeeper</groupId>
        <artifactId>zookeeper</artifactId>
        <version>${zookeeper.version}</version>
        <exclusions>
            <exclusion>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-log4j12</artifactId>
          </exclusion>
          <exclusion>
            <groupId>commmons-logging</groupId>
            <artifactId>commons-logging</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.apache.httpcomponents</groupId>
            <artifactId>httpcore</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.apache.httpcomponents</groupId>
            <artifactId>httpclient</artifactId>
          </exclusion>
         <exclusion>
            <groupId>org.jboss.netty</groupId>
            <artifactId>netty</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.apache.curator</groupId>
        <artifactId>curator-client</artifactId>
        <version>${curator.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.curator</groupId>
        <artifactId>curator-framework</artifactId>
        <version>${curator.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.curator</groupId>
        <artifactId>curator-recipes</artifactId>
        <version>${curator.version}</version>
      </dependency>
      <dependency>
        <groupId>org.codehaus.groovy</groupId>
        <artifactId>groovy-all</artifactId>
        <version>${groovy.version}</version>
      </dependency>
      <dependency>
        <groupId>org.codehaus.jackson</groupId>
        <artifactId>jackson-core-asl</artifactId>
        <version>${jackson.version}</version>
      </dependency>
      <dependency>
        <groupId>org.codehaus.jackson</groupId>
        <artifactId>jackson-mapper-asl</artifactId>
        <version>${jackson.version}</version>
      </dependency>
      <dependency>
        <groupId>org.codehaus.jackson</groupId>
        <artifactId>jackson-jaxrs</artifactId>
        <version>${jackson.version}</version>
      </dependency>
      <dependency>
        <groupId>org.codehaus.jackson</groupId>
        <artifactId>jackson-xc</artifactId>
        <version>${jackson.version}</version>
      </dependency>
      <dependency>
        <groupId>org.codehaus.janino</groupId>
        <artifactId>commons-compiler</artifactId>
        <version>${janino.version}</version>
      </dependency>
      <dependency>
        <groupId>org.codehaus.janino</groupId>
        <artifactId>janino</artifactId>
        <version>${janino.version}</version>
      </dependency>
      <dependency>
        <groupId>org.codehaus.jettison</groupId>
        <artifactId>jettison</artifactId>
        <version>${jettison.version}</version>
        <exclusions>
          <exclusion>
            <groupId>stax</groupId>
            <artifactId>stax-api</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-rewrite</artifactId>
        <version>${jetty.version}</version>
      </dependency>
      <dependency>
        <groupId>org.datanucleus</groupId>
        <artifactId>datanucleus-api-jdo</artifactId>
        <version>${datanucleus-api-jdo.version}</version>
      </dependency>
      <dependency>
        <groupId>org.datanucleus</groupId>
        <artifactId>datanucleus-core</artifactId>
        <version>${datanucleus-core.version}</version>
      </dependency>
      <dependency>
        <groupId>org.datanucleus</groupId>
        <artifactId>datanucleus-rdbms</artifactId>
        <version>${datanucleus-rdbms.version}</version>
      </dependency>
      <dependency>
        <groupId>org.datanucleus</groupId>
        <artifactId>javax.jdo</artifactId>
        <version>${datanucleus-jdo.version}</version>
      </dependency>
      <dependency>
        <groupId>com.tdunning</groupId>
        <artifactId>json</artifactId>
        <version>${json.version}</version>
      </dependency>
      <dependency>
        <groupId>org.mockito</groupId>
        <artifactId>mockito-all</artifactId>
        <version>${mockito-all.version}</version>
      </dependency>
      <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-api</artifactId>
        <version>${slf4j.version}</version>
      </dependency>
      <dependency>
        <groupId>xerces</groupId>
        <artifactId>xercesImpl</artifactId>
        <version>${xerces.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.hadoop</groupId>
        <artifactId>hadoop-client</artifactId>
        <version>${hadoop.version}</version>
         <exclusions>
           <exclusion>
            <groupId>commmons-logging</groupId>
            <artifactId>commons-logging</artifactId>
          </exclusion>
         </exclusions>
     </dependency>
      <dependency>
        <groupId>org.apache.hadoop</groupId>
        <artifactId>hadoop-common</artifactId>
        <version>${hadoop.version}</version>
        <exclusions>
            <exclusion>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-log4j12</artifactId>
          </exclusion>
          <exclusion>
            <groupId>commmons-logging</groupId>
            <artifactId>commons-logging</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.apache.httpcomponents</groupId>
            <artifactId>httpcore</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.apache.httpcomponents</groupId>
            <artifactId>httpclient</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.apache.hadoop</groupId>
        <artifactId>hadoop-hdfs</artifactId>
        <version>${hadoop.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.hadoop</groupId>
        <artifactId>hadoop-mapreduce-client-jobclient</artifactId>
        <version>${hadoop.version}</version>
          <exclusions>
            <exclusion>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-log4j12</artifactId>
          </exclusion>
          <exclusion>
            <groupId>commmons-logging</groupId>
            <artifactId>commons-logging</artifactId>
          </exclusion>
        </exclusions>
     </dependency>
      <dependency>
        <groupId>org.apache.hadoop</groupId>
        <artifactId>hadoop-mapreduce-client-core</artifactId>
        <version>${hadoop.version}</version>
         <exclusions>
            <exclusion>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-log4j12</artifactId>
          </exclusion>
          <exclusion>
            <groupId>commmons-logging</groupId>
            <artifactId>commons-logging</artifactId>
          </exclusion>
        </exclusions>
     </dependency>
      <dependency>
        <groupId>org.apache.hadoop</groupId>
        <artifactId>hadoop-minikdc</artifactId>
        <version>${hadoop.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.hbase</groupId>
        <artifactId>hbase-common</artifactId>
        <version>${hbase.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.hbase</groupId>
        <artifactId>hbase-hadoop-compat</artifactId>
        <version>${hbase.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.hbase</groupId>
        <artifactId>hbase-hadoop2-compat</artifactId>
        <version>${hbase.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.hbase</groupId>
        <artifactId>hbase-server</artifactId>
        <version>${hbase.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.hadoop</groupId>
        <artifactId>hadoop-minicluster</artifactId>
        <version>${hadoop.version}</version>
      </dependency>
      <dependency>
        <groupId>org.pentaho</groupId>
        <artifactId>pentaho-aggdesigner-algorithm</artifactId>
        <version>${pentaho-aggdesigner.version}</version>
      </dependency>
      <dependency>
        <groupId>org.scala-lang</groupId>
        <artifactId>scala-library</artifactId>
        <version>${scala.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.spark</groupId>
        <artifactId>spark-core_${scala.binary.version}</artifactId>
        <version>${spark.version}</version>
        <exclusions>
          <exclusion>
            <groupId>org.apache.hadoop</groupId>
            <artifactId>hadoop-core</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.jamon</groupId>
        <artifactId>jamon-runtime</artifactId>
        <version>${jamon-runtime.version}</version>
      </dependency>
    </dependencies>
  </dependencyManagement>

  <dependencies>
    <!-- dependencies are always listed in sorted order by groupId, artifectId -->
    <!-- global dependencies -->
    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-api</artifactId>
      <version>${slf4j.version}</version>
    </dependency>
    <dependency>
      <groupId>org.mockito</groupId>
      <artifactId>mockito-all</artifactId>
      <scope>test</scope>
    </dependency>
  </dependencies>

  <build>
    <pluginManagement>
      <plugins>
        <!-- plugins are always listed in sorted order by groupId, artifectId -->
        <plugin>
          <groupId>org.antlr</groupId>
          <artifactId>antlr3-maven-plugin</artifactId>
          <version>${antlr.version}</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-compiler-plugin</artifactId>
          <version>${maven.compiler.plugin.version}</version>
          <configuration>
            <source>1.7</source>
            <target>1.7</target>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-antrun-plugin</artifactId>
          <version>${maven.antrun.plugin.version}</version>
          <dependencies>
            <dependency>
              <groupId>ant-contrib</groupId>
              <artifactId>ant-contrib</artifactId>
              <version>${ant.contrib.version}</version>
              <exclusions>
                <exclusion>
                  <groupId>ant</groupId>
                  <artifactId>ant</artifactId>
                </exclusion>
              </exclusions>
            </dependency>
          </dependencies>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-assembly-plugin</artifactId>
          <version>${maven.assembly.plugin.version}</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-eclipse-plugin</artifactId>
          <version>${maven.eclipse.plugin.version}</version>
          <configuration>
            <downloadJavadocs>true</downloadJavadocs>
            <downloadSources>true</downloadSources>
            <workspaceActiveCodeStyleProfileName>Hive</workspaceActiveCodeStyleProfileName>
            <workspaceCodeStylesURL>${basedir}/dev-support/eclipse-styles.xml</workspaceCodeStylesURL>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-checkstyle-plugin</artifactId>
          <version>${maven.checkstyle.plugin.version}</version>
        </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-install-plugin</artifactId>
          <version>${maven.install.plugin.version}</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-shade-plugin</artifactId>
          <version>${maven.shade.plugin.version}</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-surefire-plugin</artifactId>
          <version>${maven.surefire.plugin.version}</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-jar-plugin</artifactId>
          <version>${maven.jar.plugin.version}</version>
          <configuration>
            <archive>
              <manifest>
                <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
              </manifest>
            </archive>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-war-plugin</artifactId>
          <version>${maven.war.plugin.version}</version>
        </plugin>
        <plugin>
          <groupId>org.datanucleus</groupId>
          <artifactId>datanucleus-maven-plugin</artifactId>
          <version>${datanucleus.maven.plugin.version}</version>
          <dependencies>
            <dependency>
              <groupId>org.datanucleus</groupId>
              <artifactId>datanucleus-core</artifactId>
              <version>${datanucleus-core.version}</version>
            </dependency>
          </dependencies>
        </plugin>
        <plugin>
          <groupId>org.apache.felix</groupId>
          <artifactId>maven-bundle-plugin</artifactId>
          <version>${felix.version}</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-dependency-plugin</artifactId>
          <version>${maven.dependency.plugin.version}</version>
        </plugin>
        <plugin>
          <groupId>org.codehaus.mojo</groupId>
          <artifactId>build-helper-maven-plugin</artifactId>
          <version>${maven.build-helper.plugin.version}</version>
        </plugin>
      </plugins>
    </pluginManagement>

    <plugins>
      <!-- plugins are always listed in sorted order by groupId, artifectId -->
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-antrun-plugin</artifactId>
        <executions>
          <execution>
            <id>define-classpath</id>
            <phase>process-resources</phase>
            <goals>
              <goal>run</goal>
            </goals>
            <configuration>
              <exportAntProperties>true</exportAntProperties>
              <target>
                <property name="maven.test.classpath" refid="maven.test.classpath"/>
              </target>
            </configuration>
          </execution>
          <execution>
            <id>setup-test-dirs</id>
            <phase>process-test-resources</phase>
            <goals>
              <goal>run</goal>
            </goals>
            <configuration>
              <target>
                <delete dir="${test.tmp.dir}" />
                <delete dir="${test.conf.dir}" />
                <delete dir="${test.warehouse.dir}" />
                <mkdir dir="${test.tmp.dir}" />
                <mkdir dir="${test.warehouse.dir}" />
                <mkdir dir="${test.conf.dir}" />
                <!-- copies hive-site.xml so it can be modified -->
                <copy todir="${test.conf.dir}">
                  <fileset dir="${basedir}/${hive.path.to.root}/data/conf/"/>
                </copy>
              </target>
            </configuration>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-clean-plugin</artifactId>
        <version>2.5</version>
        <configuration>
          <filesets>
            <fileset>
              <directory>./</directory>
              <includes>
                <include>datanucleus.log</include>
                <include>derby.log</include>
              </includes>
              <followSymlinks>false</followSymlinks>
            </fileset>
            <fileset>
              <directory>build</directory>
              <followSymlinks>false</followSymlinks>
            </fileset>
          </filesets>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-checkstyle-plugin</artifactId>
        <configuration>
          <configLocation>${checkstyle.conf.dir}/checkstyle.xml</configLocation>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-enforcer-plugin</artifactId>
        <executions>
          <execution>
            <id>enforce-no-snapshots</id>
            <goals>
              <goal>enforce</goal>
            </goals>
            <configuration>
              <rules>
                <requireReleaseDeps>
                  <message>Release builds are not allowed to have SNAPSHOT depenendencies</message>
                  <searchTransitive>true</searchTransitive>
                  <onlyWhenRelease>true</onlyWhenRelease>
                </requireReleaseDeps>
              </rules>
              <fail>true</fail>
            </configuration>
          </execution>
          <execution>
            <id>enforce-banned-dependencies</id>
            <goals>
              <goal>enforce</goal>
            </goals>
            <configuration>
              <rules>
                <bannedDependencies>
                  <excludes>
                    <!--LGPL licenced library-->
                    <exclude>com.google.code.findbugs:annotations</exclude>
                  </excludes>
                </bannedDependencies>
              </rules>
              <fail>true</fail>
            </configuration>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
        <configuration>
          <excludes>
            <exclude>**/TestSerDe.java</exclude>
            <exclude>**/TestHiveMetaStore.java</exclude>
            <exclude>**/ql/exec/vector/util/*.java</exclude>
            <exclude>**/ql/exec/vector/udf/legacy/*.java</exclude>
            <exclude>**/ql/exec/vector/udf/generic/*.java</exclude>
            <exclude>**/TestHiveServer2Concurrency.java</exclude>
            <exclude>${test.excludes.additional}</exclude>
            <exclude>${skip.spark.files}</exclude>
          </excludes>
          <redirectTestOutputToFile>true</redirectTestOutputToFile>
          <reuseForks>false</reuseForks>
          <failIfNoTests>false</failIfNoTests>
          <argLine>${maven.test.jvm.args}</argLine>
          <trimStackTrace>false</trimStackTrace>
          <additionalClasspathElements>
            <additionalClasspathElement>${test.conf.dir}</additionalClasspathElement>
            <additionalClasspathElement>${basedir}/${hive.path.to.root}/conf</additionalClasspathElement>
          </additionalClasspathElements>
          <environmentVariables>
            <TZ>US/Pacific</TZ>
            <LANG>en_US.UTF-8</LANG>
            <HADOOP_CLASSPATH>${test.conf.dir}:${basedir}/${hive.path.to.root}/conf</HADOOP_CLASSPATH>
            <HIVE_HADOOP_TEST_CLASSPATH>${test.hive.hadoop.classpath}</HIVE_HADOOP_TEST_CLASSPATH>
            <SPARK_SUBMIT_CLASSPATH>${spark.home}/lib/spark-assembly-${spark.version}-hadoop2.4.0.jar:${test.hive.hadoop.classpath}</SPARK_SUBMIT_CLASSPATH>
            <SPARK_OSX_TEST_OPTS>-Dorg.xerial.snappy.tempdir=/tmp -Dorg.xerial.snappy.lib.name=libsnappyjava.jnilib</SPARK_OSX_TEST_OPTS>
            <PATH>${env.PATH}${test.extra.path}</PATH>
          </environmentVariables>
          <systemPropertyVariables>
            <build.dir>${project.build.directory}</build.dir>
            <!-- required by zk test ClientBase -->
            <build.test.dir>${test.tmp.dir}</build.test.dir>
            <!-- required by a few tests to find the derby jar -->
            <derby.version>${derby.version}</derby.version>
            <derby.stream.error.file>${test.tmp.dir}/derby.log</derby.stream.error.file>
            <hadoop.bin.path>${hadoop.bin.path}</hadoop.bin.path>
            <!-- required by Hadoop's JobHistory -->
            <hadoop.log.dir>${test.tmp.dir}</hadoop.log.dir>
            <hive.root>${basedir}/${hive.path.to.root}/</hive.root>
            <hive.version>${project.version}</hive.version>
            <!-- required for hive-exec jar path and tests which reference a jar -->
            <maven.local.repository>${maven.repo.local}</maven.local.repository>
            <mapred.job.tracker>local</mapred.job.tracker>
            <log4j.configurationFile>${test.log4j.scheme}${test.conf.dir}/hive-log4j2.properties</log4j.configurationFile>
            <hive.test.console.log.level>${test.console.log.level}</hive.test.console.log.level>
            <log4j.debug>true</log4j.debug>
            <!-- don't diry up /tmp -->
            <java.io.tmpdir>${test.tmp.dir}</java.io.tmpdir>
            <spark.home>${spark.home}</spark.home>
            <!-- Hadoop's minidfs class uses this -->
            <test.build.data>${test.tmp.dir}</test.build.data>
            <!-- required by QTestUtil -->
            <test.data.files>${basedir}/${hive.path.to.root}/data/files</test.data.files>
            <test.data.dir>${basedir}/${hive.path.to.root}/data/files</test.data.dir>
            <test.tmp.dir>${test.tmp.dir}</test.tmp.dir>
            <test.tmp.dir.uri>${test.tmp.dir.uri}</test.tmp.dir.uri>
            <test.dfs.mkdir>${test.dfs.mkdir}</test.dfs.mkdir>
            <test.output.overwrite>${test.output.overwrite}</test.output.overwrite>
            <test.warehouse.dir>${test.warehouse.scheme}${test.warehouse.dir}</test.warehouse.dir>
            <java.net.preferIPv4Stack>true</java.net.preferIPv4Stack>
            <!-- EnforceReadOnlyTables hook and QTestUtil -->
            <test.src.tables>src,src1,srcbucket,srcbucket2,src_json,src_thrift,src_sequencefile,srcpart,alltypesorc,src_hbase,cbo_t1,cbo_t2,cbo_t3,src_cbo,part,lineitem</test.src.tables>
            <java.security.krb5.conf>${test.conf.dir}/krb5.conf</java.security.krb5.conf>
            <!-- Required by spark to work around SPARK-14958 -->
            <antlr.version>${antlr.version}</antlr.version>
            <qfile>${qfile}</qfile>
            <initScript>${initScript}</initScript>
            <clustermode>${clustermode}</clustermode>
            <qfile_regex>${qfile_regex}</qfile_regex>
            <run_disabled>${run_disabled}</run_disabled>
          </systemPropertyVariables>
        </configuration>
      </plugin>
      <plugin>
	<groupId>org.apache.rat</groupId>
	<artifactId>apache-rat-plugin</artifactId>
	<version>0.10</version>
	<configuration>
	  <excludes>
	    <exclude>binary-package-licenses/**</exclude>
	    <exclude>data/**</exclude>
	    <exclude>conf/**</exclude>
	    <exclude>checkstyle/**</exclude>
	    <exclude>bin/**</exclude>
	    <exclude>itests/**</exclude>
	    <exclude>docs/**</exclude>
            <exclude>**/README.md</exclude>
            <exclude>**/*.iml</exclude>
	    <exclude>**/*.txt</exclude>
	    <exclude>**/*.log</exclude>
	    <exclude>**/*.arcconfig</exclude>
	    <exclude>**/package-info.java</exclude>
	    <exclude>**/*.properties</exclude>
	    <exclude>**/*.q</exclude>
	    <exclude>**/*.q.out</exclude>
	    <exclude>**/*.xml</exclude>
	    <exclude>**/gen/**</exclude>
	    <exclude>**/scripts/**</exclude>
	    <exclude>**/resources/**</exclude>
	    <exclude>**/*.rc</exclude>
	    <exclude>**/*.rcfile</exclude>
	    <exclude>**/*.qv</exclude>
	    <exclude>**/*.out</exclude>
	    <exclude>**/RecordTestObj.java</exclude>
	    <exclude>**/*.m</exclude>
	    <exclude>**/gen-java/**</exclude>
	    <exclude>**/testdata/**</exclude>
	    <exclude>**/ptest2/*.md</exclude>
	    <exclude>**/test/org/apache/hadoop/hive/hbase/avro/**</exclude>
	    <exclude>**/avro_test.avpr</exclude>
	    <exclude>**/xmlReport.pl</exclude>
	    <exclude>**/*.html</exclude>
	    <exclude>**/sit</exclude>
      <exclude>**/test/queries/**/*.sql</exclude>
	  </excludes>
	</configuration>
      </plugin>
      <plugin>
        <groupId>org.jamon</groupId>
        <artifactId>jamon-maven-plugin</artifactId>
        <version>${jamon.plugin.version}</version>
      </plugin>
    </plugins>
  </build>

  <profiles>
    <profile>
      <id>thriftif</id>
      <build>
        <plugins>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-antrun-plugin</artifactId>
            <executions>
              <execution>
                <id>generate-thrift-sources</id>
                <phase>generate-sources</phase>
                <configuration>
                  <target>
                    <taskdef name="for" classname="net.sf.antcontrib.logic.ForTask"
                      classpathref="maven.plugin.classpath" />
                    <property name="thrift.args" value="-I ${thrift.home} --gen java:beans,hashcode,generated_annotations=undated --gen cpp --gen php --gen py --gen rb"/>
                    <property name="thrift.gen.dir" value="${basedir}/src/gen/thrift"/>
                    <delete dir="${thrift.gen.dir}"/>
                    <mkdir dir="${thrift.gen.dir}"/>
                    <for param="thrift.file">
                      <path>
                        <fileset dir="." includes="if/*.thrift,if/test/*.thrift" />
                      </path>
                      <sequential>
                        <echo message="Generating Thrift code for @{thrift.file}"/>
                        <exec executable="${thrift.home}/bin/thrift"  failonerror="true" dir=".">
                          <arg line="${thrift.args} -I ${basedir}/include -I ${basedir}/.. -o ${thrift.gen.dir} @{thrift.file} " />
                        </exec>
                      </sequential>
                    </for>
                  </target>
                </configuration>
                <goals>
                  <goal>run</goal>
                </goals>
              </execution>
            </executions>
          </plugin>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-enforcer-plugin</artifactId>
            <executions>
              <execution>
                <id>enforce-property</id>
                <goals>
                  <goal>enforce</goal>
                </goals>
                <configuration>
                  <rules>
                    <requireProperty>
                      <property>thrift.home</property>
                    </requireProperty>
                  </rules>
                  <fail>true</fail>
                </configuration>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>

    <profile>
      <id>sources</id>
      <build>
        <plugins>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-source-plugin</artifactId>
            <executions>
              <execution>
                <id>attach-sources</id>
                <goals>
                  <goal>jar</goal>
                </goals>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>

    <profile>
      <id>javadoc</id>
      <build>
        <plugins>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-javadoc-plugin</artifactId>
            <executions>
              <execution>
                <id>attach-javadocs</id>
                <goals>
                  <goal>jar</goal>
                </goals>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>

    <profile>
    <id>findbugs</id>
      <reporting>
        <plugins>
          <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>findbugs-maven-plugin</artifactId>
            <version>3.0.0</version>
            <configuration>
              <fork>true</fork>
              <maxHeap>2048</maxHeap>
              <jvmArgs>-Djava.awt.headless=true -Xmx2048m -Xms512m</jvmArgs>
              <excludeFilterFile>${basedir}/${hive.path.to.root}/findbugs/findbugs-exclude.xml</excludeFilterFile>
            </configuration>
          </plugin>
        </plugins>
      </reporting>
    </profile>
    <profile>
      <!-- Windows-specific settings to allow unit tests to work -->
      <id>windows-test</id>
      <activation>
        <os>
          <family>Windows</family>
       </os>
      </activation>
      <build>
        <plugins>
          <!-- maven.test.classpath (used for HIVE_HADOOP_TEST_CLASSPATH) exceeds the 8K Windows -->
          <!-- command shell limit which causes tests which call hadoop command to fail.         -->
          <!-- Workaround is to copy all necessary jars to a single location to shorten the      -->
          <!-- the length of the environment variable.                                           -->
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-dependency-plugin</artifactId>
            <version>2.8</version>
            <executions>
              <execution>
                <id>copy-dependencies</id>
                <phase>package</phase>
                <goals>
                  <goal>copy-dependencies</goal>
                </goals>
                <configuration>
                  <outputDirectory>${project.build.directory}/deplibs/</outputDirectory>
                  <overWriteReleases>false</overWriteReleases>
                  <overWriteSnapshots>false</overWriteSnapshots>
                  <overWriteIfNewer>true</overWriteIfNewer>
                </configuration>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
      <properties>
        <hadoop.bin.path>${basedir}/${hive.path.to.root}/testutils/hadoop.cmd</hadoop.bin.path>
        <test.extra.path>;${env.HADOOP_HOME}/bin</test.extra.path>
        <test.hive.hadoop.classpath>${project.build.directory}/deplibs/*</test.hive.hadoop.classpath>
        <test.tmp.dir.uri>file:///${test.tmp.dir}</test.tmp.dir.uri>
        <test.log4j.scheme>file:/</test.log4j.scheme>
      </properties>
    </profile>
    <profile>
      <id>spark-test</id>
      <activation>
	<property>
          <name>!skipSparkTests</name>
	</property>
      </activation>
      <properties>
        <skip.spark.files>
          **/ql/exec/spark/session/TestSparkSessionManagerImpl.java,**/TestMultiSessionsHS2WithLocalClusterSpark.java,**/TestJdbcWithLocalClusterSpark.java
        </skip.spark.files>
      </properties>
    </profile>
    <profile>
      <id>itests</id>
      <modules>
        <module>itests</module>
      </modules>
    </profile>
  </profiles>
</project>
