<?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</groupId>
    <artifactId>apache</artifactId>
    <version>19</version>
    <relativePath />
    <!-- no parent resolution -->
  </parent>

  <groupId>org.apache.kylin</groupId>
  <artifactId>kylin</artifactId>
  <packaging>pom</packaging>
  <version>3.1.1</version>

  <name>Apache Kylin</name>
  <url>http://kylin.apache.org</url>
  <inceptionYear>2014</inceptionYear>


  <properties>
    <!-- General Properties -->
    <javaVersion>1.8</javaVersion>
    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>
    <maven-model.version>3.3.9</maven-model.version>
    <maven-compiler.version>3.5.1</maven-compiler.version>
    <maven-site.version>3.5.1</maven-site.version>
    <maven-install.version>2.5.2</maven-install.version>
    <maven-resources.version>3.0.1</maven-resources.version>
    <maven-shade.version>3.1.0</maven-shade.version>
    <maven-jar.version>3.0.2</maven-jar.version>
    <maven-war.version>2.6</maven-war.version>
    <maven-release.version>2.5.3</maven-release.version>
    <maven-checkstyle.version>2.17</maven-checkstyle.version>
    <checksum-maven.version>1.3</checksum-maven.version>
    <exec-maven.version>1.6.0</exec-maven.version>
    <maven-dependency.version>2.10</maven-dependency.version>
    <maven-project-info-reports.version>2.9</maven-project-info-reports.version>
    <eclipse.lifecycle-mapping.version>1.0.1</eclipse.lifecycle-mapping.version>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
    <puppycrawl.version>8.18</puppycrawl.version>
    <spotbugs.version>3.1.1</spotbugs.version>

    <kylin.version>3.0.0</kylin.version>

    <!-- Hadoop versions -->
    <hadoop2.version>2.7.1</hadoop2.version>
    <yarn.version>2.7.1</yarn.version>

    <!-- Hive versions -->
    <hive.version>1.2.2</hive.version>
    <hive-hcatalog.version>1.2.2</hive-hcatalog.version>

    <!-- HBase versions -->
    <hbase-hadoop2.version>1.1.1</hbase-hadoop2.version>

    <!-- Kafka versions -->
    <kafka.version>2.1.1</kafka.version>

    <!-- Spark versions -->
    <spark.version>2.4.5</spark.version>
    <kryo.version>4.0.0</kryo.version>

    <!-- Flink versions -->
    <flink.version>1.9.2</flink.version>

    <!-- mysql versions -->
    <mysql-connector.version>5.1.8</mysql-connector.version>

    <!-- Scala versions -->
    <scala.version>2.11.12</scala.version>

    <reflections.version>0.9.10</reflections.version>

    <!-- Calcite Version, the kylin fork is: https://github.com/Kyligence/calcite -->
    <calcite.version>1.16.0-kylin-r5</calcite.version>
    <avatica.version>1.12.0</avatica.version>

    <!-- Hadoop Common deps, keep compatible with hadoop2.version -->
    <zookeeper.version>3.4.14</zookeeper.version>
    <curator.version>2.12.0</curator.version>
    <jsr305.version>3.0.1</jsr305.version>
    <!-- kylin use shaded-guava, this version for unify guava version of other dependencies -->
    <guava.version>14.0</guava.version>
    <jsch.version>0.1.54</jsch.version>
    <commons-cli.version>1.2</commons-cli.version>
    <commons-lang.version>2.6</commons-lang.version>
    <commons-httpclient.version>3.1</commons-httpclient.version>
    <commons-io.version>2.4</commons-io.version>
    <commons-upload.version>1.3.3</commons-upload.version>
    <commons-math3.version>3.1.1</commons-math3.version>
    <commons-collections.version>3.2.2</commons-collections.version>
    <commons-pool.version>2.5.0</commons-pool.version>

    <!-- Calcite deps, keep compatible with calcite.version -->
    <jackson.version>2.10.0</jackson.version>

    <!-- Test Dependency versions -->
    <antlr.version>3.4</antlr.version>
    <junit.version>4.12</junit.version>
    <mrunit.version>1.1.0</mrunit.version>
    <dbunit.version>2.5.4</dbunit.version>
    <h2.version>1.4.196</h2.version>
    <jetty.version>9.4.26.v20200117</jetty.version>
    <jamm.version>0.3.1</jamm.version>
    <mockito.version>2.7.14</mockito.version>
    <mockito-all.version>1.9.5</mockito-all.version>
    <powermock.version>1.7.0</powermock.version>
    <guava-testlib.version>28.2-jre</guava-testlib.version>

    <!-- Commons -->
    <commons-lang3.version>3.4</commons-lang3.version>
    <commons-email.version>1.5</commons-email.version>
    <commons-validator.version>1.4.0</commons-validator.version>
    <commons-compress.version>1.19</commons-compress.version>
    <commons-dbcp.version>1.4</commons-dbcp.version>

    <!-- Utility -->
    <log4j.version>1.2.17</log4j.version>
    <slf4j.version>1.7.21</slf4j.version>
    <xerces.version>2.12.0</xerces.version>
    <xalan.version>2.7.2</xalan.version>
    <ehcache.version>2.10.2.2.21</ehcache.version>
    <memcached.verion>2.12.3</memcached.verion>
    <apache-httpclient.version>4.3.6</apache-httpclient.version>
    <roaring.version>0.6.18</roaring.version>
    <cglib.version>3.2.4</cglib.version>
    <supercsv.version>2.4.0</supercsv.version>
    <cors.version>2.5</cors.version>
    <tomcat.version>7.0.100</tomcat.version>
    <t-digest.version>3.1</t-digest.version>
    <freemarker.version>2.3.23</freemarker.version>
    <rocksdb.version>5.9.2</rocksdb.version>
    <lz4.version>1.3.0</lz4.version>
    <mssql-jdbc.version>6.2.2.jre8</mssql-jdbc.version>
    <!--metric-->
    <dropwizard.version>3.1.2</dropwizard.version>
    <!-- REST Service, ref https://github.com/spring-projects/spring-boot/blob/v1.3.8.RELEASE/spring-boot-dependencies/pom.xml -->
    <spring.boot.version>1.3.8.RELEASE</spring.boot.version>
    <spring.framework.version>4.3.26.RELEASE</spring.framework.version>
    <spring.framework.security.version>4.2.14.RELEASE</spring.framework.security.version>
    <spring.framework.security.extensions.version>1.0.2.RELEASE</spring.framework.security.extensions.version>
    <opensaml.version>2.6.6</opensaml.version>
    <aspectj.version>1.8.9</aspectj.version>
    <!-- API forbidden -->
    <forbiddenapis.version>2.3</forbiddenapis.version>

    <!-- Sonar -->
    <jacoco.version>0.8.2</jacoco.version>
    <sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
    <sonar.dynamicAnalysis>reuseReports</sonar.dynamicAnalysis>
    <sonar.jacoco.reportPaths>${project.basedir}/../target/jacoco.exec</sonar.jacoco.reportPaths>
    <sonar.language>java</sonar.language>
    <sonar.jacoco.excludes>
      org/apache/kylin/**/tools/**:**/*CLI.java
    </sonar.jacoco.excludes>

    <!-- JVM Args for Testing -->
    <argLine>-Xms1G -Xmx2G -XX:MaxPermSize=512M -noverify -Duser.timezone=UTC</argLine>
  </properties>

  <licenses>
    <license>
      <name>The Apache Software License, Version 2.0</name>
      <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
    </license>
  </licenses>

  <organization>
    <name>Apache Software Foundation</name>
    <url>http://www.apache.org</url>
  </organization>

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


  <mailingLists>
    <mailingList>
      <name>kylin-user</name>
      <subscribe>user-subscribe@kylin.apache.org</subscribe>
      <unsubscribe>user-unsubscribe@kylin.apache.org</unsubscribe>
      <post>user@kylin.apache.org</post>
      <archive>http://mail-archives.apache.org/mod_mbox/kylin-user/</archive>
    </mailingList>
    <mailingList>
      <name>kylin-dev</name>
      <subscribe>dev-subscribe@kylin.apache.org</subscribe>
      <unsubscribe>dev-unsubscribe@kylin.apache.org</unsubscribe>
      <post>dev@kylin.apache.org</post>
      <archive>http://mail-archives.apache.org/mod_mbox/kylin-dev/</archive>
    </mailingList>
    <mailingList>
      <name>kylin-issues</name>
      <subscribe>issues-subscribe@kylin.apache.org</subscribe>
      <unsubscribe>issues-unsubscribe@kylin.apache.org</unsubscribe>
      <post>issues@kylin.apache.org</post>
      <archive>http://mail-archives.apache.org/mod_mbox/kylin-issues/</archive>
    </mailingList>
    <mailingList>
      <name>kylin-commits</name>
      <subscribe>commits-subscribe@kylin.apache.org</subscribe>
      <unsubscribe>commits-unsubscribe@kylin.apache.org</unsubscribe>
      <post>commits@kylin.apache.org</post>
      <archive>http://mail-archives.apache.org/mod_mbox/kylin-commits/</archive>
    </mailingList>
  </mailingLists>

  <scm>
    <connection>scm:git:git://github.com/apache/kylin.git</connection>
    <developerConnection>scm:git:ssh://git@github.com/apache/kylin.git
    </developerConnection>
    <url>https://github.com/apache/kylin</url>
    <tag>kylin-3.1.1</tag>
  </scm>

  <dependencyManagement>
    <dependencies>
      <!-- Kylin -->
      <dependency>
        <groupId>org.apache.kylin</groupId>
        <artifactId>atopcalcite</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.kylin</groupId>
        <artifactId>kylin-shaded-guava</artifactId>
        <version>3.1.0</version>
      </dependency>
      <dependency>
        <groupId>org.apache.kylin</groupId>
        <artifactId>kylin-core-common</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.kylin</groupId>
        <artifactId>kylin-core-metrics</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.kylin</groupId>
        <artifactId>kylin-metrics-reporter-hive</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.kylin</groupId>
        <artifactId>kylin-metrics-reporter-kafka</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.kylin</groupId>
        <artifactId>kylin-core-metadata</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.kylin</groupId>
        <artifactId>kylin-core-dictionary</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.kylin</groupId>
        <artifactId>kylin-core-cube</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.kylin</groupId>
        <artifactId>kylin-core-job</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.kylin</groupId>
        <artifactId>kylin-core-storage</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.kylin</groupId>
        <artifactId>kylin-cache</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.kylin</groupId>
        <artifactId>kylin-engine-mr</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.kylin</groupId>
        <artifactId>kylin-engine-spark</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.kylin</groupId>
        <artifactId>kylin-engine-flink</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.kylin</groupId>
        <artifactId>kylin-source-hive</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.kylin</groupId>
        <artifactId>kylin-source-jdbc</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.kylin</groupId>
        <artifactId>kylin-source-kafka</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.kylin</groupId>
        <artifactId>kylin-storage-hbase</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.kylin</groupId>
        <artifactId>kylin-query</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.kylin</groupId>
        <artifactId>kylin-server-base</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.kylin</groupId>
        <artifactId>kylin-server</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.kylin</groupId>
        <artifactId>kylin-jdbc</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.kylin</groupId>
        <artifactId>kylin-assembly</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.kylin</groupId>
        <artifactId>kylin-cube-migration</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.kylin</groupId>
        <artifactId>kylin-tool</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.kylin</groupId>
        <artifactId>kylin-tool-assembly</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.kylin</groupId>
        <artifactId>kylin-it</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.kylin</groupId>
        <artifactId>kylin-core-common</artifactId>
        <version>${project.version}</version>
        <type>test-jar</type>
      </dependency>
      <dependency>
        <groupId>org.apache.kylin</groupId>
        <artifactId>kylin-core-metadata</artifactId>
        <version>${project.version}</version>
        <type>test-jar</type>
      </dependency>
      <dependency>
        <groupId>org.apache.kylin</groupId>
        <artifactId>kylin-core-storage</artifactId>
        <version>${project.version}</version>
        <type>test-jar</type>
      </dependency>
      <dependency>
        <groupId>org.apache.kylin</groupId>
        <artifactId>kylin-storage-hbase</artifactId>
        <version>${project.version}</version>
        <type>test-jar</type>
      </dependency>
      <dependency>
        <groupId>org.apache.kylin</groupId>
        <artifactId>kylin-server-base</artifactId>
        <version>${project.version}</version>
        <type>test-jar</type>
      </dependency>
      <dependency>
        <groupId>org.apache.kylin</groupId>
        <artifactId>kylin-core-job</artifactId>
        <version>${project.version}</version>
        <type>test-jar</type>
      </dependency>
      <dependency>
        <groupId>org.apache.kylin</groupId>
        <artifactId>kylin-core-cube</artifactId>
        <version>${project.version}</version>
        <type>test-jar</type>
      </dependency>

      <dependency>
        <groupId>org.apache.kylin</groupId>
        <artifactId>kylin-stream-core</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.kylin</groupId>
        <artifactId>kylin-stream-coordinator</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.kylin</groupId>
        <artifactId>kylin-stream-source-kafka</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.kylin</groupId>
        <artifactId>kylin-storage-stream</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.kylin</groupId>
        <artifactId>kylin-stream-receiver</artifactId>
        <version>${project.version}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.kylin</groupId>
        <artifactId>kylin-datasource-sdk</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.kylin</groupId>
        <artifactId>kylin-datasource-sdk</artifactId>
        <version>${project.version}</version>
        <classifier>framework</classifier>
      </dependency>
      <dependency>
        <groupId>org.apache.kylin</groupId>
        <artifactId>kylin-assembly</artifactId>
        <version>${project.version}</version>
        <type>test-jar</type>
      </dependency>

      <!-- Hadoop2 dependencies -->
      <dependency>
        <groupId>org.apache.hadoop</groupId>
        <artifactId>hadoop-common</artifactId>
        <version>${hadoop2.version}</version>
        <scope>provided</scope>
        <exclusions>
          <exclusion>
            <groupId>javax.servlet</groupId>
            <artifactId>servlet-api</artifactId>
          </exclusion>
          <exclusion>
            <groupId>net.java.dev.jets3t</groupId>
            <artifactId>jets3t</artifactId>
          </exclusion>
          <exclusion>
            <groupId>javax.servlet.jsp</groupId>
            <artifactId>jsp-api</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.apache.hadoop</groupId>
        <artifactId>hadoop-hdfs</artifactId>
        <version>${hadoop2.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.hadoop</groupId>
        <artifactId>hadoop-mapreduce-client-app</artifactId>
        <version>${hadoop2.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.hadoop</groupId>
        <artifactId>hadoop-yarn-api</artifactId>
        <version>${hadoop2.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.hadoop</groupId>
        <artifactId>hadoop-yarn-common</artifactId>
        <version>${hadoop2.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.hadoop</groupId>
        <artifactId>hadoop-mapreduce-client-core</artifactId>
        <version>${hadoop2.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.hadoop</groupId>
        <artifactId>hadoop-mapreduce-client-jobclient</artifactId>
        <version>${hadoop2.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.hadoop</groupId>
        <artifactId>hadoop-mapreduce-client-jobclient</artifactId>
        <version>${hadoop2.version}</version>
        <type>test-jar</type>
      </dependency>
      <dependency>
        <groupId>org.apache.hadoop</groupId>
        <artifactId>hadoop-annotations</artifactId>
        <version>${hadoop2.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.hadoop</groupId>
        <artifactId>hadoop-auth</artifactId>
        <version>${hadoop2.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.hadoop</groupId>
        <artifactId>hadoop-minicluster</artifactId>
        <version>${hadoop2.version}</version>
        <optional>true</optional>
      </dependency>
      <dependency>
        <groupId>org.apache.hadoop</groupId>
        <artifactId>hadoop-distcp</artifactId>
        <version>${hadoop2.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.zookeeper</groupId>
        <artifactId>zookeeper</artifactId>
        <version>${zookeeper.version}</version>
        <scope>provided</scope>
      </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.apache.curator</groupId>
        <artifactId>curator-client</artifactId>
        <version>${curator.version}</version>
      </dependency>
      <dependency>
        <groupId>com.google.guava</groupId>
        <artifactId>guava</artifactId>
        <version>${guava.version}</version>
      </dependency>
      <dependency>
        <groupId>com.google.code.findbugs</groupId>
        <artifactId>jsr305</artifactId>
        <version>${jsr305.version}</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>com.jcraft</groupId>
        <artifactId>jsch</artifactId>
        <version>${jsch.version}</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>commons-cli</groupId>
        <artifactId>commons-cli</artifactId>
        <version>${commons-cli.version}</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>commons-lang</groupId>
        <artifactId>commons-lang</artifactId>
        <version>${commons-lang.version}</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>commons-httpclient</groupId>
        <artifactId>commons-httpclient</artifactId>
        <version>${commons-httpclient.version}</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-math3</artifactId>
        <version>${commons-math3.version}</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>commons-io</groupId>
        <artifactId>commons-io</artifactId>
        <version>${commons-io.version}</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>commons-fileupload</groupId>
        <artifactId>commons-fileupload</artifactId>
        <version>${commons-upload.version}</version>
      </dependency>
      <dependency>
        <groupId>commons-collections</groupId>
        <artifactId>commons-collections</artifactId>
        <version>${commons-collections.version}</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-pool2</artifactId>
        <version>${commons-pool.version}</version>
      </dependency>

      <!-- HBase2 dependencies -->
      <dependency>
        <groupId>org.apache.hbase</groupId>
        <artifactId>hbase-hadoop2-compat</artifactId>
        <version>${hbase-hadoop2.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.hbase</groupId>
        <artifactId>hbase-common</artifactId>
        <version>${hbase-hadoop2.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.hbase</groupId>
        <artifactId>hbase-client</artifactId>
        <version>${hbase-hadoop2.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.hbase</groupId>
        <artifactId>hbase-server</artifactId>
        <version>${hbase-hadoop2.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.mrunit</groupId>
        <artifactId>mrunit</artifactId>
        <version>${mrunit.version}</version>
        <classifier>hadoop2</classifier>
      </dependency>
      <dependency>
        <groupId>org.apache.hbase</groupId>
        <artifactId>hbase-testing-util</artifactId>
        <version>${hbase-hadoop2.version}</version>
        <scope>test</scope>
      </dependency>
        <!-- jdbc dependencies -->
      <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>${mysql-connector.version}</version>
        <scope>provided</scope>
      </dependency>
      <!-- Hive dependencies -->
      <dependency>
        <groupId>org.apache.hive</groupId>
        <artifactId>hive-jdbc</artifactId>
        <version>${hive.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.hive.hcatalog</groupId>
        <artifactId>hive-hcatalog-core</artifactId>
        <version>${hive-hcatalog.version}</version>
      </dependency>
      <!-- Yarn dependencies -->
      <dependency>
        <groupId>org.apache.hadoop</groupId>
        <artifactId>hadoop-yarn-server-resourcemanager</artifactId>
        <version>${yarn.version}</version>
      </dependency>

      <!-- Calcite dependencies -->
      <dependency>
        <groupId>org.apache.calcite</groupId>
        <artifactId>calcite-core</artifactId>
        <version>${calcite.version}</version>
        <exclusions>
          <exclusion>
            <groupId>com.google.protobuf</groupId>
            <artifactId>protobuf-java</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.apache.calcite</groupId>
        <artifactId>calcite-linq4j</artifactId>
        <version>${calcite.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.calcite.avatica</groupId>
        <artifactId>avatica-core</artifactId>
        <version>${avatica.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.calcite.avatica</groupId>
        <artifactId>avatica</artifactId>
        <version>${avatica.version}</version>
      </dependency>
      <!-- Workaround for hive 0.14 avatica dependency -->
      <dependency>
        <groupId>org.apache.calcite</groupId>
        <artifactId>calcite-avatica</artifactId>
        <version>1.6.0</version>
        <exclusions>
          <exclusion>
            <groupId>com.google.protobuf</groupId>
            <artifactId>protobuf-java</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>com.fasterxml.jackson.core</groupId>
        <artifactId>jackson-core</artifactId>
        <version>${jackson.version}</version>
      </dependency>
      <dependency>
        <groupId>com.fasterxml.jackson.core</groupId>
        <artifactId>jackson-databind</artifactId>
        <version>${jackson.version}</version>
      </dependency>
      <dependency>
        <groupId>com.fasterxml.jackson.core</groupId>
        <artifactId>jackson-annotations</artifactId>
        <version>${jackson.version}</version>
      </dependency>
      <dependency>
        <groupId>com.fasterxml.jackson.dataformat</groupId>
        <artifactId>jackson-dataformat-xml</artifactId>
        <version>${jackson.version}</version>
      </dependency>

      <!-- Spark dependency -->
      <dependency>
        <groupId>org.apache.spark</groupId>
        <artifactId>spark-core_2.11</artifactId>
        <version>${spark.version}</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>org.apache.spark</groupId>
        <artifactId>spark-sql_2.11</artifactId>
        <version>${spark.version}</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>org.apache.spark</groupId>
        <artifactId>spark-hive_2.11</artifactId>
        <version>${spark.version}</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>com.esotericsoftware</groupId>
        <artifactId>kryo-shaded</artifactId>
        <version>${kryo.version}</version>
        <scope>provided</scope>
      </dependency>
      <!-- Flink dependency -->
      <dependency>
        <groupId>org.apache.flink</groupId>
        <artifactId>flink-java</artifactId>
        <version>${flink.version}</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>org.apache.flink</groupId>
        <artifactId>flink-scala_2.11</artifactId>
        <version>${flink.version}</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>org.apache.flink</groupId>
        <artifactId>flink-hadoop-compatibility_2.11</artifactId>
        <version>${flink.version}</version>
      </dependency>
      <!-- Kafka dependency -->
      <dependency>
        <groupId>org.apache.kafka</groupId>
        <artifactId>kafka_2.11</artifactId>
        <version>${kafka.version}</version>
      </dependency>

      <!-- Other dependencies -->
      <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-lang3</artifactId>
        <version>${commons-lang3.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-email</artifactId>
        <version>${commons-email.version}</version>
      </dependency>
      <dependency>
        <groupId>commons-validator</groupId>
        <artifactId>commons-validator</artifactId>
        <version>${commons-validator.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-compress</artifactId>
        <version>${commons-compress.version}</version>
      </dependency>
      <dependency>
        <groupId>org.freemarker</groupId>
        <artifactId>freemarker</artifactId>
        <version>${freemarker.version}</version>
      </dependency>
      <dependency>
        <groupId>org.rocksdb</groupId>
        <artifactId>rocksdbjni</artifactId>
        <version>${rocksdb.version}</version>
      </dependency>

      <!-- Logging -->
      <dependency>
        <groupId>log4j</groupId>
        <artifactId>log4j</artifactId>
        <version>${log4j.version}</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-log4j12</artifactId>
        <version>${slf4j.version}</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>jcl-over-slf4j</artifactId>
        <version>${slf4j.version}</version>
      </dependency>
      <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-api</artifactId>
        <version>${slf4j.version}</version>
      </dependency>

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

      <!-- Test -->
      <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>${junit.version}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.dbunit</groupId>
        <artifactId>dbunit</artifactId>
        <version>${dbunit.version}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.apache.maven</groupId>
        <artifactId>maven-model</artifactId>
        <version>${maven-model.version}</version>
      </dependency>
      <dependency>
        <groupId>com.h2database</groupId>
        <artifactId>h2</artifactId>
        <version>${h2.version}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>xerces</groupId>
        <artifactId>xercesImpl</artifactId>
        <version>${xerces.version}</version>
      </dependency>
      <dependency>
        <groupId>xalan</groupId>
        <artifactId>xalan</artifactId>
        <version>${xalan.version}</version>
      </dependency>
      <dependency>
        <groupId>com.github.jbellis</groupId>
        <artifactId>jamm</artifactId>
        <version>${jamm.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.httpcomponents</groupId>
        <artifactId>httpclient</artifactId>
        <version>${apache-httpclient.version}</version>
      </dependency>
      <dependency>
        <groupId>org.roaringbitmap</groupId>
        <artifactId>RoaringBitmap</artifactId>
        <version>${roaring.version}</version>
      </dependency>
      <dependency>
        <groupId>com.tdunning</groupId>
        <artifactId>t-digest</artifactId>
        <version>${t-digest.version}</version>
      </dependency>
      <dependency>
        <groupId>cglib</groupId>
        <artifactId>cglib</artifactId>
        <version>${cglib.version}</version>
      </dependency>
      <dependency>
        <groupId>net.sf.supercsv</groupId>
        <artifactId>super-csv</artifactId>
        <version>${supercsv.version}</version>
      </dependency>
      <dependency>
        <groupId>org.aspectj</groupId>
        <artifactId>aspectjrt</artifactId>
        <version>${aspectj.version}</version>
      </dependency>
      <dependency>
        <groupId>org.aspectj</groupId>
        <artifactId>aspectjweaver</artifactId>
        <version>${aspectj.version}</version>
      </dependency>
      <dependency>
        <groupId>com.thetransactioncompany</groupId>
        <artifactId>cors-filter</artifactId>
        <version>${cors.version}</version>
      </dependency>
      <dependency>
        <groupId>net.sf.ehcache</groupId>
        <artifactId>ehcache</artifactId>
        <version>${ehcache.version}</version>
      </dependency>
      <dependency>
        <groupId>net.spy</groupId>
        <artifactId>spymemcached</artifactId>
        <version>${memcached.verion}</version>
      </dependency>
      <dependency>
        <groupId>org.opensaml</groupId>
        <artifactId>opensaml</artifactId>
        <version>${opensaml.version}</version>
      </dependency>

      <!-- Spring Core -->
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-webmvc</artifactId>
        <version>${spring.framework.version}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-jdbc</artifactId>
        <version>${spring.framework.version}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-aop</artifactId>
        <version>${spring.framework.version}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-context-support</artifactId>
        <version>${spring.framework.version}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-test</artifactId>
        <version>${spring.framework.version}</version>
      </dependency>
      <!-- Spring Security -->
      <dependency>
        <groupId>org.springframework.security</groupId>
        <artifactId>spring-security-acl</artifactId>
        <version>${spring.framework.security.version}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework.security</groupId>
        <artifactId>spring-security-config</artifactId>
        <version>${spring.framework.security.version}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework.security</groupId>
        <artifactId>spring-security-core</artifactId>
        <version>${spring.framework.security.version}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework.security</groupId>
        <artifactId>spring-security-ldap</artifactId>
        <version>${spring.framework.security.version}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework.security</groupId>
        <artifactId>spring-security-web</artifactId>
        <version>${spring.framework.security.version}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework.security.extensions</groupId>
        <artifactId>spring-security-saml2-core</artifactId>
        <version>${spring.framework.security.extensions.version}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework.security</groupId>
        <artifactId>spring-security-cas</artifactId>
        <version>${spring.framework.security.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-servlet</artifactId>
        <version>${jetty.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-webapp</artifactId>
        <version>${jetty.version}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.apache.tomcat</groupId>
        <artifactId>tomcat-catalina</artifactId>
        <version>${tomcat.version}</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>org.apache.tomcat</groupId>
        <artifactId>tomcat-jasper</artifactId>
        <version>${tomcat.version}</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>org.apache.tomcat.embed</groupId>
        <artifactId>tomcat-embed-core</artifactId>
        <version>${tomcat.version}</version>
        <scope>provided</scope>
      </dependency>

      <dependency>
        <groupId>org.scala-lang</groupId>
        <artifactId>scala-library</artifactId>
        <version>${scala.version}</version>
      </dependency>

      <dependency>
        <groupId>org.scala-lang</groupId>
        <artifactId>scala-compiler</artifactId>
        <version>${scala.version}</version>
      </dependency>

      <dependency>
        <groupId>org.scala-lang</groupId>
        <artifactId>scala-reflect</artifactId>
        <version>${scala.version}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.curator</groupId>
        <artifactId>curator-x-discovery</artifactId>
        <version>${curator.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.curator</groupId>
        <artifactId>curator-test</artifactId>
        <version>${curator.version}</version>
        <scope>test</scope>
      </dependency>
    </dependencies>
  </dependencyManagement>

  <dependencies>

    <!-- the logging dependencies are inherited by all modules for their generality
        log4j and slf4j-log4j12 test scope only for UT/IT use -->
    <dependency>
      <groupId>log4j</groupId>
      <artifactId>log4j</artifactId>
      <scope>provided</scope>
    </dependency>
    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-log4j12</artifactId>
      <scope>provided</scope>
    </dependency>
    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>jcl-over-slf4j</artifactId>
    </dependency>
    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-api</artifactId>
    </dependency>
    <!--for transitive dependencies like commons-collectinos, commons-lang -->
    <dependency>
      <groupId>org.apache.hadoop</groupId>
      <artifactId>hadoop-common</artifactId>
    </dependency>
  </dependencies>

  <repositories>
    <repository>
      <id>central</id>
      <name>Central Repository</name>
      <url>https://repo.maven.apache.org/maven2</url>
      <layout>default</layout>
      <snapshots>
        <enabled>false</enabled>
      </snapshots>
    </repository>

    <repository>
      <id>conjars</id>
      <url>https://conjars.org/repo/</url>
    </repository>

    <repository>
      <id>cloudera</id>
      <url>https://repository.cloudera.com/artifactory/cloudera-repos/</url>
    </repository>

    <repository>
      <id>shibboleth</id>
      <url>https://build.shibboleth.net/nexus/content/repositories/releases/</url>
    </repository>

    <repository>
      <id>kyligence</id>
      <name>Kyligence Repository</name>
      <url>https://repository.kyligence.io/repository/maven-public/
      </url>
      <releases>
        <enabled>true</enabled>
      </releases>
      <snapshots>
        <enabled>true</enabled>
      </snapshots>
    </repository>
  </repositories>

  <build>
    <pluginManagement>
      <plugins>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-compiler-plugin</artifactId>
          <version>${maven-compiler.version}</version>
          <configuration>
            <source>${javaVersion}</source>
            <target>${javaVersion}</target>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-site-plugin</artifactId>
          <version>${maven-site.version}</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-install-plugin</artifactId>
          <version>${maven-install.version}</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-resources-plugin</artifactId>
          <version>${maven-resources.version}</version>
          <configuration>
            <encoding>UTF-8</encoding>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-jar-plugin</artifactId>
          <version>${maven-jar.version}</version>
          <executions>
            <execution>
              <goals>
                <goal>test-jar</goal>
              </goals>
            </execution>
          </executions>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-shade-plugin</artifactId>
          <version>${maven-shade.version}</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-war-plugin</artifactId>
          <version>${maven-war.version}</version>
          <configuration>
            <packagingExcludes>
              WEB-INF/lib/servlet-api-*.jar,
              WEB-INF/lib/zookeeper-*.jar
            </packagingExcludes>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-antrun-plugin</artifactId>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-source-plugin</artifactId>
          <version>${maven-resources.version}</version>
          <executions>
            <execution>
              <id>attach-sources</id>
              <phase>package</phase>
              <goals>
                <goal>jar-no-fork</goal>
              </goals>
            </execution>
          </executions>
          <configuration>
            <includePom>true</includePom>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-release-plugin</artifactId>
          <version>${maven-release.version}</version>
        </plugin>
        <plugin>
          <groupId>org.jacoco</groupId>
          <artifactId>jacoco-maven-plugin</artifactId>
          <version>${jacoco.version}</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-checkstyle-plugin</artifactId>
          <version>${maven-checkstyle.version}</version>
          <dependencies>
            <dependency>
              <groupId>com.puppycrawl.tools</groupId>
              <artifactId>checkstyle</artifactId>
              <version>${puppycrawl.version}</version>
            </dependency>
          </dependencies>
          <executions>
            <execution>
              <id>check-style</id>
              <phase>validate</phase>
              <configuration>
                <configLocation>dev-support/checkstyle.xml</configLocation>
                <suppressionsLocation>dev-support/checkstyle-suppressions.xml</suppressionsLocation>
                <includeTestSourceDirectory>true</includeTestSourceDirectory>
                <consoleOutput>true</consoleOutput>
                <failsOnError>true</failsOnError>
              </configuration>
              <goals>
                <goal>check</goal>
              </goals>
            </execution>
          </executions>
        </plugin>
        <plugin>
          <groupId>com.github.spotbugs</groupId>
          <artifactId>spotbugs-maven-plugin</artifactId>
          <version>${spotbugs.version}</version>
          <configuration>
            <xmlOutput>true</xmlOutput>
            <effort>Max</effort>
            <threshold>Low</threshold>
            <failOnError>false</failOnError>
          </configuration>
        </plugin>
        <plugin>
          <groupId>net.ju-n.maven.plugins</groupId>
          <artifactId>checksum-maven-plugin</artifactId>
          <version>${checksum-maven.version}</version>
        </plugin>
        <plugin>
          <groupId>org.codehaus.mojo</groupId>
          <artifactId>exec-maven-plugin</artifactId>
          <version>${exec-maven.version}</version>
        </plugin>
        <plugin>
          <groupId>org.springframework.boot</groupId>
          <artifactId>spring-boot-maven-plugin</artifactId>
          <version>${spring.boot.version}</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-dependency-plugin</artifactId>
          <version>${maven-dependency.version}</version>
        </plugin>

        <plugin>
          <groupId>de.thetaphi</groupId>
          <artifactId>forbiddenapis</artifactId>
          <version>${forbiddenapis.version}</version>
        </plugin>
      </plugins>
    </pluginManagement>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-checkstyle-plugin</artifactId>
      </plugin>
      <plugin>
        <groupId>com.github.spotbugs</groupId>
        <artifactId>spotbugs-maven-plugin</artifactId>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-dependency-plugin</artifactId>
        <executions>
          <execution>
            <id>analyze</id>
            <goals>
              <goal>analyze-only</goal>
            </goals>
            <!--<configuration>-->
            <!--<failOnWarning>true</failOnWarning>-->
            <!--</configuration>-->
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-javadoc-plugin</artifactId>
        <configuration>
          <excludePackageNames>org.apache.kylin.*</excludePackageNames>
        </configuration>
      </plugin>
      <plugin>
        <groupId>net.alchim31.maven</groupId>
        <artifactId>scala-maven-plugin</artifactId>
        <!-- uncomment this on release -->
        <version>3.4.1</version>
      </plugin>
    </plugins>
  </build>

  <modules>
<!--    <module>external</module>-->
    <module>core-common</module>
    <module>core-metadata</module>
    <module>core-dictionary</module>
    <module>core-cube</module>
    <module>core-job</module>
    <module>core-storage</module>
    <module>engine-mr</module>
    <module>engine-spark</module>
    <module>source-hive</module>
    <module>source-jdbc</module>
    <module>source-kafka</module>
    <module>storage-hbase</module>
    <module>query</module>
    <module>server-base</module>
    <module>server</module>
    <module>jdbc</module>
    <module>assembly</module>
    <module>tool</module>
    <module>tool-assembly</module>
    <module>kylin-it</module>
    <module>tomcat-ext</module>
    <module>core-metrics</module>
    <module>metrics-reporter-hive</module>
    <module>metrics-reporter-kafka</module>
    <module>cache</module>
    <module>cube-migration</module>
    <module>datasource-sdk</module>
    <module>storage-stream</module>
    <module>stream-receiver</module>
    <module>stream-coordinator</module>
    <module>stream-core</module>
    <module>stream-source-kafka</module>
    <module>engine-flink</module>
  </modules>

  <reporting>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-project-info-reports-plugin</artifactId>
        <version>${maven-project-info-reports.version}</version>
        <reportSets>
          <reportSet>
            <reports>
              <report>index</report>
              <report>summary</report>
              <report>dependency-info</report>
              <report>project-team</report>
              <report>scm</report>
              <report>issue-tracking</report>
              <report>mailing-list</report>
              <!-- <report>dependency-management</report> -->
              <!-- <report>dependencies</report> -->
              <!-- <report>dependency-convergence</report> -->
              <report>cim</report>
              <report>plugin-management</report>
              <report>plugins</report>
              <report>distribution-management</report>
              <report>license</report>
              <report>modules</report>
            </reports>
          </reportSet>
        </reportSets>
      </plugin>
      <plugin>
        <groupId>com.github.spotbugs</groupId>
        <artifactId>spotbugs-maven-plugin</artifactId>
        <version>${spotbugs.version}</version>
      </plugin>
    </plugins>
  </reporting>

  <profiles>
    <profile>
      <id>sandbox</id>
      <activation>
        <activeByDefault>true</activeByDefault>
        <property>
          <name>pre-commit</name>
        </property>
      </activation>
      <build>
        <plugins>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <configuration>
              <fork>true</fork>
              <meminitial>1024m</meminitial>
              <maxmem>2048m</maxmem>
            </configuration>
          </plugin>

          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-dependency-plugin</artifactId>
            <executions>
              <execution>
                <id>copy-jamm</id>
                <goals>
                  <goal>copy</goal>
                </goals>
                <phase>generate-test-resources</phase>
                <configuration>
                  <artifactItems>
                    <artifactItem>
                      <groupId>com.github.jbellis</groupId>
                      <artifactId>jamm</artifactId>
                      <outputDirectory>${project.build.testOutputDirectory}
                      </outputDirectory>
                      <destFileName>jamm.jar</destFileName>
                    </artifactItem>
                  </artifactItems>
                </configuration>
              </execution>
            </executions>
          </plugin>
          <plugin>
            <groupId>de.thetaphi</groupId>
            <artifactId>forbiddenapis</artifactId>
            <configuration>
              <!--
              if the used Java version is too new, don't fail, just do nothing:
             -->
              <failOnUnsupportedJava>false</failOnUnsupportedJava>
              <bundledSignatures>
                <bundledSignature>jdk-unsafe</bundledSignature>
                <bundledSignature>jdk-deprecated</bundledSignature>
                <!--<bundledSignature>jdk-non-portable</bundledSignature>-->
              </bundledSignatures>
              <signaturesFiles>
                <signaturesFile>
                  ${user.dir}/dev-support/signatures.txt
                </signaturesFile>
              </signaturesFiles>
            </configuration>

            <executions>
              <execution>
                <phase>test-compile</phase>
                <goals>
                  <goal>check</goal>
                  <goal>testCheck</goal>
                </goals>
              </execution>
            </executions>
          </plugin>

          <plugin>
            <groupId>org.jacoco</groupId>
            <artifactId>jacoco-maven-plugin</artifactId>
            <executions>
              <execution>
                <id>pre-test</id>
                <goals>
                  <goal>prepare-agent</goal>
                </goals>
                <configuration>
                  <append>true</append>
                  <destFile>${sonar.jacoco.reportPaths}</destFile>
                  <propertyName>surefireArgLine</propertyName>
                </configuration>
              </execution>
              <execution>
                <id>post-test</id>
                <phase>test</phase>
                <goals>
                  <goal>report</goal>
                </goals>
                <configuration>
                  <dataFile>${sonar.jacoco.reportPaths}</dataFile>
                </configuration>
              </execution>
            </executions>
          </plugin>

          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            <version>2.21.0</version>
            <configuration>
              <reportsDirectory>${project.basedir}/../target/surefire-reports
              </reportsDirectory>
              <excludes>
                <exclude>**/IT*.java</exclude>
              </excludes>
              <systemProperties>
                <property>
                  <name>buildCubeUsingProvidedData</name>
                  <value>false</value>
                </property>
                <property>
                  <name>log4j.configuration</name>
                  <value>
                    file:${project.basedir}/../build/conf/kylin-tools-log4j.properties
                  </value>
                </property>
              </systemProperties>
              <argLine>-javaagent:${project.build.testOutputDirectory}/jamm.jar
                ${argLine} ${surefireArgLine}
              </argLine>
            </configuration>
          </plugin>
          <plugin>
            <groupId>org.eluder.coveralls</groupId>
            <artifactId>coveralls-maven-plugin</artifactId>
            <version>4.2.0</version>
          </plugin>
        </plugins>
      </build>
    </profile>
    <profile>
      <id>cdh5.7</id>
      <properties>
        <hadoop2.version>2.6.0-cdh5.7.0</hadoop2.version>
        <yarn.version>2.6.0-cdh5.7.0</yarn.version>
        <hive.version>1.1.0-cdh5.7.0</hive.version>
        <hive-hcatalog.version>1.1.0-cdh5.7.0</hive-hcatalog.version>
        <hbase-hadoop2.version>1.2.0-cdh5.7.0</hbase-hadoop2.version>
        <zookeeper.version>3.4.5-cdh5.7.0</zookeeper.version>
      </properties>
      <build>
        <plugins>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <configuration>
              <fork>true</fork>
              <meminitial>1024m</meminitial>
              <maxmem>2048m</maxmem>
            </configuration>
          </plugin>

    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-dependency-plugin</artifactId>
      <executions>
        <execution>
          <id>copy-jamm</id>
          <goals>
            <goal>copy</goal>
          </goals>
          <phase>generate-test-resources</phase>
          <configuration>
            <artifactItems>
              <artifactItem>
                <groupId>com.github.jbellis</groupId>
                <artifactId>jamm</artifactId>
                <outputDirectory>${project.build.testOutputDirectory}
                </outputDirectory>
                <destFileName>jamm.jar</destFileName>
              </artifactItem>
            </artifactItems>
          </configuration>
        </execution>
      </executions>
    </plugin>

    <plugin>
      <groupId>org.jacoco</groupId>
      <artifactId>jacoco-maven-plugin</artifactId>
      <configuration>
        <append>true</append>
        <destFile>
          ${sonar.jacoco.reportPaths}
        </destFile>
      </configuration>
      <executions>
        <execution>
          <id>pre-test</id>
          <goals>
            <goal>prepare-agent</goal>
          </goals>
          <configuration>
            <propertyName>surefireArgLine</propertyName>
          </configuration>
        </execution>
        <execution>
          <id>post-test</id>
          <phase>test</phase>
          <goals>
            <goal>report</goal>
          </goals>
        </execution>
      </executions>
    </plugin>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-surefire-plugin</artifactId>
      <version>2.21.0</version>
      <configuration>
        <reportsDirectory>${project.basedir}/../target/surefire-reports
        </reportsDirectory>
        <excludes>
          <exclude>**/IT*.java</exclude>
        </excludes>
        <systemProperties>
          <property>
            <name>buildCubeUsingProvidedData</name>
            <value>false</value>
          </property>
          <property>
            <name>log4j.configuration</name>
            <value>
              file:${project.basedir}/../build/conf/kylin-tools-log4j.properties
            </value>
          </property>
        </systemProperties>
        <argLine>-javaagent:${project.build.testOutputDirectory}/jamm.jar
          ${argLine} ${surefireArgLine}
        </argLine>
      </configuration>
    </plugin>
  </plugins>
</build>
</profile>
<profile>
<!-- This profile adds/overrides few features of the 'apache-release'
     profile in the parent pom. -->
      <id>apache-release</id>
      <activation>
        <property>
          <name>pre-commit</name>
        </property>
      </activation>
      <build>
        <plugins>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-gpg-plugin</artifactId>
            <configuration>
              <skip>false</skip>
            </configuration>
          </plugin>
          <!-- Override the parent assembly execution to customize the assembly
              descriptor and final name. -->
          <plugin>
            <artifactId>maven-assembly-plugin</artifactId>
            <executions>
              <execution>
                <id>source-release-assembly</id>
                <phase>package</phase>
                <goals>
                  <goal>single</goal>
                </goals>
                <configuration>
                  <tarLongFileMode>posix</tarLongFileMode>
                  <runOnlyAtExecutionRoot>true</runOnlyAtExecutionRoot>
                  <appendAssemblyId>true</appendAssemblyId>
                  <descriptors>
                    <descriptor>
                    assembly/src/main/config/assemblies/source-assembly.xml
                    </descriptor>
                  </descriptors>
                  <finalName>apache-kylin-${project.version}</finalName>
                </configuration>
              </execution>
            </executions>
          </plugin>

          <!-- Apache-RAT checks for files without headers.
               If run on a messy developer's sandbox, it will fail.
               This serves as a reminder to only build a release in a clean
               sandbox! -->
          <plugin>
            <groupId>org.apache.rat</groupId>
            <artifactId>apache-rat-plugin</artifactId>
            <configuration>
              <!-- Used to print file with unapproved licenses in project to stand output -->
              <consoleOutput>true</consoleOutput>

              <!-- Exclude files/folders for apache release -->
              <excludes>
                <exclude>DEPENDENCIES</exclude>
                <exclude>.settings/**</exclude>
                <exclude>**/LICENSE*</exclude>
                <!-- Local git repo -->
                <exclude>.git/**</exclude>
                <exclude>.gitconfig</exclude>
                <!-- IDE files -->
                <exclude>.idea/**</exclude>
                <exclude>**/*.iml</exclude>
                <exclude>**/.classpath</exclude>
                <exclude>**/.project</exclude>
                <exclude>**/.settings/**</exclude>

                <!-- image files constitute images required for documentation. .pptx contain the sources for images -->
                <exclude>**/*.png</exclude>
                <exclude>**/*.jpg</exclude>
                <exclude>**/*.gif</exclude>
                <exclude>**/*.ico</exclude>
                <exclude>**/*.svg</exclude>

                <!--Test Data-->
                <exclude>**/src/test/resources/**</exclude>
                <exclude>examples/sample_cube/template/**</exclude>
                <exclude>examples/test_case_data/localmeta/**</exclude>
                <exclude>examples/test_metadata/**</exclude>

                <!-- generated files -->
                <exclude>**/target/**</exclude>
                <exclude>lib/**</exclude>
                <exclude>dist/**</exclude>
                <exclude>website/**</exclude>
                <exclude>**/dependency-reduced-pom.xml</exclude>

                <!-- text files without comments -->
                <exclude>**/*.csv</exclude>
                <exclude>**/*.json</exclude>
                <exclude>**/*.json.bad</exclude>
                <exclude>**/*.md</exclude>

                <!-- binary files -->
                <exclude>**/*.dict</exclude>
                <exclude>**/*.dic</exclude>
                <exclude>**/*.snapshot</exclude>
                <exclude>**/*.pdf</exclude>
                <exclude>**/*.docx</exclude>
                <exclude>**/*.doc</exclude>
                <exclude>**/*.txt</exclude>
                <exclude>**/.checkstyle</exclude>
                <exclude>**/*.eot</exclude>
                <exclude>**/*.ttf</exclude>
                <exclude>**/*.woff</exclude>

                <!-- Kylin's website content -->
                <exclude>**/.sass-cache/**</exclude>

                <!-- tomcat package -->
                <exclude>tomcat/**</exclude>

                <!-- front end libary and generated files -->
                <exclude>webapp/node_modules/**</exclude>
                <exclude>webapp/dist/**</exclude>
                <exclude>webapp/app/components/**</exclude>
                <!-- json configuration file-->
                <exclude>webapp/.bowerrc</exclude>
                <exclude>webapp/.jshintrc</exclude>
                <!-- generated dict files -->
                <exclude>dictionary/metastore_db/**</exclude>

                <!-- MIT license -->
                <exclude>webapp/app/css/AdminLTE.css</exclude>
                <exclude>webapp/app/css/messenger-theme-ice.css</exclude>
                <exclude>webapp/app/js/directives/kylin_abn_tree_directive.js</exclude>
                <exclude>webapp/app/js/directives/angular-tree-control.js</exclude>
                <exclude>webapp/app/js/directives/datetimepicker.js</exclude>
                <exclude>webapp/app/js/directives/select.js</exclude>
                <exclude>webapp/app/js/directives/ui-grid.js</exclude>

                <!-- BSD license -->
                <exclude>webapp/app/js/utils/liquidFillGauge.js</exclude>

                <!--configuration file -->
                <exclude>webapp/app/routes.json</exclude>
                <exclude>webapp/bower.json</exclude>
                <exclude>webapp/grunt.json</exclude>
                <exclude>webapp/package.json</exclude>

                <!-- logs -->
                <exclude>**/*.log</exclude>
                <exclude>jdbc/kylin_jdbc.log*</exclude>
                <exclude>server/logs/**</exclude>

                <!-- jdbc service -->
                <exclude>**/java.sql.Driver</exclude>

                <!--ODBC sub project is a VS project, exclude related files -->
                <exclude>**/*.sln</exclude>
                <exclude>**/*.vcxproj</exclude>
                <exclude>**/*.vcxproj.filters</exclude>
                <exclude>**/*.vcxproj.user</exclude>
                <exclude>**/*.props</exclude>
                <exclude>**/*.RC</exclude>
                <exclude>**/*.dsp</exclude>
                <exclude>**/*.DEF</exclude>
                <exclude>**/*.isl</exclude>
                <exclude>**/*.isproj</exclude>
                <exclude>**/*.bmp</exclude>

                <!-- protobuf generated -->
                <exclude>
                  src/main/java/org/apache/kylin/storage/hbase/ii/coprocessor/endpoint/generated/IIProtos.java
                </exclude>
                <exclude>
                  src/main/java/org/apache/kylin/storage/hbase/cube/v1/filter/generated/FilterProtosExt.java
                </exclude>
                <exclude>
                  src/main/java/org/apache/kylin/storage/hbase/cube/v2/coprocessor/endpoint/generated/CubeVisitProtos.java
                </exclude>
              </excludes>
            </configuration>
            <executions>
              <execution>
                <phase>verify</phase>
                <goals>
                  <goal>check</goal>
                </goals>
              </execution>
            </executions>
            <dependencies>
              <dependency>
                <groupId>org.apache.maven.doxia</groupId>
                <artifactId>doxia-core</artifactId>
                <version>1.7</version>
                <exclusions>
                  <exclusion>
                    <groupId>xerces</groupId>
                    <artifactId>xercesImpl</artifactId>
                  </exclusion>
                </exclusions>
              </dependency>
            </dependencies>
          </plugin>
          <plugin>
            <groupId>net.ju-n.maven.plugins</groupId>
            <artifactId>checksum-maven-plugin</artifactId>
            <executions>
              <execution>
                <goals>
                  <goal>artifacts</goal>
                </goals>
              </execution>
            </executions>
            <configuration>
              <algorithms>
                <algorithm>SHA-256</algorithm>
              </algorithms>
              <failOnError>false</failOnError>
            </configuration>
          </plugin>
        </plugins>
      </build>
    </profile>

    <profile>
      <id>m2e-only</id>
      <activation>
        <property>
          <name>m2e.version</name>
        </property>
      </activation>
      <build>
        <pluginManagement>
          <plugins>
            <!-- for development support in Eclipse IDE -->
            <!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.-->
            <plugin>
              <groupId>org.eclipse.m2e</groupId>
              <artifactId>lifecycle-mapping</artifactId>
              <version>${eclipse.lifecycle-mapping.version}</version>
              <configuration>
                <lifecycleMappingMetadata>
                  <pluginExecutions>
                    <pluginExecution>
                      <pluginExecutionFilter>
                        <groupId>
                          org.apache.maven.plugins
                        </groupId>
                        <artifactId>
                          maven-checkstyle-plugin
                        </artifactId>
                        <versionRange>
                          [2.13,)
                        </versionRange>
                        <goals>
                          <goal>check</goal>
                        </goals>
                      </pluginExecutionFilter>
                      <action>
                        <ignore />
                      </action>
                    </pluginExecution>
                  </pluginExecutions>
                </lifecycleMappingMetadata>
              </configuration>
            </plugin>
          </plugins>
        </pluginManagement>
      </build>
    </profile>
  </profiles>
</project>
