mirror of
https://github.com/apache/impala.git
synced 2026-01-31 00:00:20 -05:00
Our dependency on Hadoop 3 means we already required Java 8. This just fixes the pom so we are compiling to Java 8 classes. This will also allow us to start using some Java 8 features like lambdas for more concise code. Change-Id: I0a5e4cf3f4171eecf218f6d4dd7cdfece9dc9152 Reviewed-on: http://gerrit.cloudera.org:8080/11351 Reviewed-by: Philip Zeyliger <philip@cloudera.com> Tested-by: Impala Public Jenkins <impala-public-jenkins@cloudera.com>
928 lines
31 KiB
XML
928 lines
31 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
|
|
<!--
|
|
Licensed to the Apache Software Foundation (ASF) under one
|
|
or more contributor license agreements. See the NOTICE file
|
|
distributed with this work for additional information
|
|
regarding copyright ownership. The ASF licenses this file
|
|
to you under the Apache License, Version 2.0 (the
|
|
"License"); you may not use this file except in compliance
|
|
with the License. You may obtain a copy of the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing,
|
|
software distributed under the License is distributed on an
|
|
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
KIND, either express or implied. See the License for the
|
|
specific language governing permissions and limitations
|
|
under the License.
|
|
-->
|
|
|
|
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
|
|
<parent>
|
|
<groupId>org.apache.impala</groupId>
|
|
<artifactId>impala-parent</artifactId>
|
|
<version>0.1-SNAPSHOT</version>
|
|
<relativePath>../impala-parent/pom.xml</relativePath>
|
|
</parent>
|
|
<modelVersion>4.0.0</modelVersion>
|
|
<groupId>org.apache.impala</groupId>
|
|
<artifactId>impala-frontend</artifactId>
|
|
<version>0.1-SNAPSHOT</version>
|
|
<packaging>jar</packaging>
|
|
|
|
<name>Apache Impala Query Engine Frontend</name>
|
|
|
|
<dependencies>
|
|
<!-- Force json-smart dependency.
|
|
See https://issues.apache.org/jira/browse/HADOOP-14903 -->
|
|
<dependency>
|
|
<groupId>net.minidev</groupId>
|
|
<artifactId>json-smart</artifactId>
|
|
<version>2.3</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.impala</groupId>
|
|
<artifactId>impala-data-source-api</artifactId>
|
|
<version>${impala.extdatasrc.api.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.apache.hadoop</groupId>
|
|
<artifactId>hadoop-hdfs</artifactId>
|
|
<version>${hadoop.version}</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.hadoop</groupId>
|
|
<artifactId>hadoop-common</artifactId>
|
|
<version>${hadoop.version}</version>
|
|
<exclusions>
|
|
<!-- https://issues.apache.org/jira/browse/HADOOP-14903 -->
|
|
<exclusion>
|
|
<groupId>net.minidev</groupId>
|
|
<artifactId>json-smart</artifactId>
|
|
</exclusion>
|
|
</exclusions>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.hadoop</groupId>
|
|
<artifactId>hadoop-auth</artifactId>
|
|
<version>${hadoop.version}</version>
|
|
<exclusions>
|
|
<!-- https://issues.apache.org/jira/browse/HADOOP-14903 -->
|
|
<exclusion>
|
|
<groupId>net.minidev</groupId>
|
|
<artifactId>json-smart</artifactId>
|
|
</exclusion>
|
|
</exclusions>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.hadoop</groupId>
|
|
<artifactId>hadoop-aws</artifactId>
|
|
<version>${hadoop.version}</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.hadoop</groupId>
|
|
<artifactId>hadoop-azure-datalake</artifactId>
|
|
<version>${hadoop.version}</version>
|
|
<exclusions>
|
|
<!-- https://issues.apache.org/jira/browse/HADOOP-14903 -->
|
|
<exclusion>
|
|
<groupId>net.minidev</groupId>
|
|
<artifactId>json-smart</artifactId>
|
|
</exclusion>
|
|
</exclusions>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.sentry</groupId>
|
|
<artifactId>sentry-core-common</artifactId>
|
|
<version>${sentry.version}</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.impala</groupId>
|
|
<artifactId>yarn-extras</artifactId>
|
|
<version>${yarn-extras.version}</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.sentry</groupId>
|
|
<artifactId>sentry-core-model-db</artifactId>
|
|
<version>${sentry.version}</version>
|
|
<exclusions>
|
|
<!-- https://issues.apache.org/jira/browse/HADOOP-14903 -->
|
|
<exclusion>
|
|
<groupId>net.minidev</groupId>
|
|
<artifactId>json-smart</artifactId>
|
|
</exclusion>
|
|
</exclusions>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.sentry</groupId>
|
|
<artifactId>sentry-provider-common</artifactId>
|
|
<version>${sentry.version}</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.sentry</groupId>
|
|
<artifactId>sentry-provider-db</artifactId>
|
|
<version>${sentry.version}</version>
|
|
<exclusions>
|
|
<!-- https://issues.apache.org/jira/browse/HADOOP-14903 -->
|
|
<exclusion>
|
|
<groupId>net.minidev</groupId>
|
|
<artifactId>json-smart</artifactId>
|
|
</exclusion>
|
|
</exclusions>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.sentry</groupId>
|
|
<artifactId>sentry-provider-file</artifactId>
|
|
<version>${sentry.version}</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.sentry</groupId>
|
|
<artifactId>sentry-provider-cache</artifactId>
|
|
<version>${sentry.version}</version>
|
|
<exclusions>
|
|
<!-- https://issues.apache.org/jira/browse/HADOOP-14903 -->
|
|
<exclusion>
|
|
<groupId>net.minidev</groupId>
|
|
<artifactId>json-smart</artifactId>
|
|
</exclusion>
|
|
</exclusions>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.sentry</groupId>
|
|
<artifactId>sentry-policy-common</artifactId>
|
|
<version>${sentry.version}</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.sentry</groupId>
|
|
<artifactId>sentry-binding-hive</artifactId>
|
|
<version>${sentry.version}</version>
|
|
<exclusions>
|
|
<!-- https://issues.apache.org/jira/browse/HADOOP-14903 -->
|
|
<exclusion>
|
|
<groupId>net.minidev</groupId>
|
|
<artifactId>json-smart</artifactId>
|
|
</exclusion>
|
|
</exclusions>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.sentry</groupId>
|
|
<artifactId>sentry-policy-engine</artifactId>
|
|
<version>${sentry.version}</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.sentry</groupId>
|
|
<artifactId>sentry-service-api</artifactId>
|
|
<version>${sentry.version}</version>
|
|
<exclusions>
|
|
<!-- https://issues.apache.org/jira/browse/HADOOP-14903 -->
|
|
<exclusion>
|
|
<groupId>net.minidev</groupId>
|
|
<artifactId>json-smart</artifactId>
|
|
</exclusion>
|
|
</exclusions>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.parquet</groupId>
|
|
<artifactId>parquet-hadoop-bundle</artifactId>
|
|
<version>${parquet.version}</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.hbase</groupId>
|
|
<artifactId>hbase-client</artifactId>
|
|
<version>${hbase.version}</version>
|
|
<exclusions>
|
|
<!-- https://issues.apache.org/jira/browse/HADOOP-14903 -->
|
|
<exclusion>
|
|
<groupId>net.minidev</groupId>
|
|
<artifactId>json-smart</artifactId>
|
|
</exclusion>
|
|
</exclusions>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.hbase</groupId>
|
|
<artifactId>hbase-common</artifactId>
|
|
<version>${hbase.version}</version>
|
|
<exclusions>
|
|
<!-- https://issues.apache.org/jira/browse/HADOOP-14903 -->
|
|
<exclusion>
|
|
<groupId>net.minidev</groupId>
|
|
<artifactId>json-smart</artifactId>
|
|
</exclusion>
|
|
</exclusions>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.hbase</groupId>
|
|
<artifactId>hbase-protocol</artifactId>
|
|
<version>${hbase.version}</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>commons-lang</groupId>
|
|
<artifactId>commons-lang</artifactId>
|
|
<version>2.6</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>net.sourceforge.czt.dev</groupId>
|
|
<artifactId>java-cup</artifactId>
|
|
<version>0.11-a-czt02-cdh</version>
|
|
</dependency>
|
|
|
|
<!-- Moved above Hive, because Hive bundles its own Thrift version
|
|
which supercedes this one if it comes first in the dependency
|
|
tree -->
|
|
<dependency>
|
|
<groupId>org.apache.thrift</groupId>
|
|
<artifactId>libthrift</artifactId>
|
|
<version>${thrift.version}</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.hive</groupId>
|
|
<artifactId>hive-service</artifactId>
|
|
<version>${hive.version}</version>
|
|
<!--
|
|
hive-service pulls in an incoherent (not ${hadoop.version}) version of
|
|
hadoop-client via this dependency, which we don't need.
|
|
-->
|
|
<exclusions>
|
|
<exclusion>
|
|
<groupId>org.apache.hive</groupId>
|
|
<artifactId>hive-llap-server</artifactId>
|
|
</exclusion>
|
|
<!-- https://issues.apache.org/jira/browse/HADOOP-14903 -->
|
|
<exclusion>
|
|
<groupId>net.minidev</groupId>
|
|
<artifactId>json-smart</artifactId>
|
|
</exclusion>
|
|
</exclusions>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.hive</groupId>
|
|
<artifactId>hive-serde</artifactId>
|
|
<version>${hive.version}</version>
|
|
<exclusions>
|
|
<!-- https://issues.apache.org/jira/browse/HADOOP-14903 -->
|
|
<exclusion>
|
|
<groupId>net.minidev</groupId>
|
|
<artifactId>json-smart</artifactId>
|
|
</exclusion>
|
|
</exclusions>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.hive</groupId>
|
|
<artifactId>hive-exec</artifactId>
|
|
<version>${hive.version}</version>
|
|
<exclusions>
|
|
<!-- Impala uses log4j v1; avoid pulling in slf4j handling for log4j2 -->
|
|
<exclusion>
|
|
<groupId>org.apache.logging.log4j</groupId>
|
|
<artifactId>log4j-slf4j-impl</artifactId>
|
|
</exclusion>
|
|
<!-- Similarly, avoid pulling in the "Log4j 1.2 Bridge" -->
|
|
<exclusion>
|
|
<groupId>org.apache.logging.log4j</groupId>
|
|
<artifactId>log4j-1.2-api</artifactId>
|
|
</exclusion>
|
|
<!-- https://issues.apache.org/jira/browse/HADOOP-14903 -->
|
|
<exclusion>
|
|
<groupId>net.minidev</groupId>
|
|
<artifactId>json-smart</artifactId>
|
|
</exclusion>
|
|
</exclusions>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.hive</groupId>
|
|
<artifactId>hive-common</artifactId>
|
|
<version>${hive.version}</version>
|
|
<exclusions>
|
|
<!-- Impala uses log4j v1; avoid pulling in slf4j handling for log4j2 -->
|
|
<exclusion>
|
|
<groupId>org.apache.logging.log4j</groupId>
|
|
<artifactId>log4j-slf4j-impl</artifactId>
|
|
</exclusion>
|
|
<!-- Similarly, avoid pulling in the "Log4j 1.2 Bridge" -->
|
|
<exclusion>
|
|
<groupId>org.apache.logging.log4j</groupId>
|
|
<artifactId>log4j-1.2-api</artifactId>
|
|
</exclusion>
|
|
<!-- https://issues.apache.org/jira/browse/HADOOP-14903 -->
|
|
<exclusion>
|
|
<groupId>net.minidev</groupId>
|
|
<artifactId>json-smart</artifactId>
|
|
</exclusion>
|
|
</exclusions>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.hive</groupId>
|
|
<artifactId>hive-jdbc</artifactId>
|
|
<version>${hive.version}</version>
|
|
<scope>test</scope>
|
|
<exclusions>
|
|
<!-- Impala uses log4j v1; avoid pulling in slf4j handling for log4j2 -->
|
|
<exclusion>
|
|
<groupId>org.apache.logging.log4j</groupId>
|
|
<artifactId>log4j-slf4j-impl</artifactId>
|
|
</exclusion>
|
|
<exclusion>
|
|
<groupId>net.minidev</groupId>
|
|
<artifactId>json-smart</artifactId>
|
|
</exclusion>
|
|
</exclusions>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.hive</groupId>
|
|
<artifactId>hive-hbase-handler</artifactId>
|
|
<version>${hive.version}</version>
|
|
<exclusions>
|
|
<!-- Impala uses log4j v1; avoid pulling in slf4j handling for log4j2 -->
|
|
<exclusion>
|
|
<groupId>org.apache.logging.log4j</groupId>
|
|
<artifactId>log4j-slf4j-impl</artifactId>
|
|
</exclusion>
|
|
<!-- https://issues.apache.org/jira/browse/HADOOP-14903 -->
|
|
<exclusion>
|
|
<groupId>net.minidev</groupId>
|
|
<artifactId>json-smart</artifactId>
|
|
</exclusion>
|
|
</exclusions>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.hive</groupId>
|
|
<artifactId>hive-metastore</artifactId>
|
|
<version>${hive.version}</version>
|
|
<exclusions>
|
|
<!-- Impala uses log4j v1; avoid pulling in slf4j handling for log4j2 -->
|
|
<exclusion>
|
|
<groupId>org.apache.logging.log4j</groupId>
|
|
<artifactId>log4j-slf4j-impl</artifactId>
|
|
</exclusion>
|
|
<!-- https://issues.apache.org/jira/browse/HADOOP-14903 -->
|
|
<exclusion>
|
|
<groupId>net.minidev</groupId>
|
|
<artifactId>json-smart</artifactId>
|
|
</exclusion>
|
|
</exclusions>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.hive.shims</groupId>
|
|
<artifactId>hive-shims-common</artifactId>
|
|
<version>${hive.version}</version>
|
|
<exclusions>
|
|
<!-- Impala uses log4j v1; avoid pulling in slf4j handling for log4j2 -->
|
|
<exclusion>
|
|
<groupId>org.apache.logging.log4j</groupId>
|
|
<artifactId>log4j-slf4j-impl</artifactId>
|
|
</exclusion>
|
|
</exclusions>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.kudu</groupId>
|
|
<artifactId>kudu-client</artifactId>
|
|
<version>${kudu.version}</version>
|
|
</dependency>
|
|
|
|
<!-- This driver supports PostgreSQL 7.2 and newer -->
|
|
<dependency>
|
|
<groupId>postgresql</groupId>
|
|
<artifactId>postgresql</artifactId>
|
|
<version>9.0-801.jdbc4</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.antlr</groupId>
|
|
<artifactId>antlr-runtime</artifactId>
|
|
<version>3.3</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>commons-cli</groupId>
|
|
<artifactId>commons-cli</artifactId>
|
|
<version>1.2</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>commons-codec</groupId>
|
|
<artifactId>commons-codec</artifactId>
|
|
<version>1.9</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.slf4j</groupId>
|
|
<artifactId>slf4j-api</artifactId>
|
|
<version>${slf4j.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.slf4j</groupId>
|
|
<artifactId>slf4j-log4j12</artifactId>
|
|
<version>${slf4j.version}</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>com.google.guava</groupId>
|
|
<artifactId>guava</artifactId>
|
|
<version>${guava.version}</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>com.google.errorprone</groupId>
|
|
<artifactId>error_prone_annotations</artifactId>
|
|
<version>2.3.1</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>junit</groupId>
|
|
<artifactId>junit</artifactId>
|
|
<version>${junit.version}</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.ehcache</groupId>
|
|
<artifactId>sizeof</artifactId>
|
|
<version>0.3.0</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>com.googlecode.json-simple</groupId>
|
|
<artifactId>json-simple</artifactId>
|
|
<version>1.1.1</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.glassfish</groupId>
|
|
<artifactId>javax.json</artifactId>
|
|
<version>1.0.2</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>com.github.davidmoten</groupId>
|
|
<artifactId>flatbuffers-java</artifactId>
|
|
<version>1.6.0.1</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>io.dropwizard.metrics</groupId>
|
|
<artifactId>metrics-core</artifactId>
|
|
<version>3.2.2</version>
|
|
</dependency>
|
|
|
|
</dependencies>
|
|
|
|
<reporting>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.codehaus.mojo</groupId>
|
|
<artifactId>findbugs-maven-plugin</artifactId>
|
|
<version>2.5.2</version>
|
|
</plugin>
|
|
</plugins>
|
|
</reporting>
|
|
|
|
<build>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-compiler-plugin</artifactId>
|
|
<version>3.3</version>
|
|
<configuration>
|
|
<source>1.8</source>
|
|
<target>1.8</target>
|
|
</configuration>
|
|
</plugin>
|
|
|
|
<!-- Build fe/tests/ to jar -->
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-jar-plugin</artifactId>
|
|
<version>2.6</version>
|
|
<executions>
|
|
<execution>
|
|
<goals>
|
|
<goal>test-jar</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
|
|
<plugin>
|
|
<groupId>net.sourceforge.czt.dev</groupId>
|
|
<artifactId>cup-maven-plugin</artifactId>
|
|
<version>1.6-cdh</version>
|
|
<executions>
|
|
<execution>
|
|
<id>cup</id>
|
|
<phase>generate-sources</phase>
|
|
<goals>
|
|
<goal>generate</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
<configuration>
|
|
<cupDefinition>sql-parser.cup</cupDefinition>
|
|
<className>SqlParser</className>
|
|
<symbolsName>SqlParserSymbols</symbolsName>
|
|
<outputDirectory>${project.build.directory}/generated-sources/cup</outputDirectory>
|
|
</configuration>
|
|
</plugin>
|
|
|
|
<plugin>
|
|
<groupId>de.jflex</groupId>
|
|
<artifactId>maven-jflex-plugin</artifactId>
|
|
<version>1.4.3</version>
|
|
<executions>
|
|
<execution>
|
|
<id>jflex</id>
|
|
<phase>generate-sources</phase>
|
|
<goals>
|
|
<goal>generate</goal>
|
|
</goals>
|
|
<configuration>
|
|
<backup>false</backup>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-dependency-plugin</artifactId>
|
|
<version>2.10</version>
|
|
<executions>
|
|
<execution>
|
|
<id>copy-dependencies</id>
|
|
<phase>package</phase>
|
|
<goals>
|
|
<goal>copy-dependencies</goal>
|
|
</goals>
|
|
<configuration>
|
|
<excludeTypes>pom</excludeTypes>
|
|
<includeScope>runtime</includeScope>
|
|
<silent>true</silent>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-surefire-plugin</artifactId>
|
|
<version>2.18</version>
|
|
<configuration>
|
|
<reportsDirectory>${surefire.reports.dir}</reportsDirectory>
|
|
<redirectTestOutputToFile>true</redirectTestOutputToFile>
|
|
<argLine>-Djava.library.path=${java.library.path}:${backend.library.path} ${surefireJacocoArg}</argLine>
|
|
<systemProperties>
|
|
<property>
|
|
<name>testExecutionMode</name>
|
|
<value>${testExecutionMode}</value>
|
|
</property>
|
|
<property>
|
|
<name>beeswax_port</name>
|
|
<value>${beeswax_port}</value>
|
|
<name>impalad</name>
|
|
<value>${impalad}</value>
|
|
<name>use_external_impalad</name>
|
|
<value>${use_external_impalad}</value>
|
|
</property>
|
|
</systemProperties>
|
|
</configuration>
|
|
</plugin>
|
|
|
|
<plugin>
|
|
<groupId>org.codehaus.mojo</groupId>
|
|
<artifactId>build-helper-maven-plugin</artifactId>
|
|
<version>1.5</version>
|
|
<executions>
|
|
<!-- Tell maven about our generated files -->
|
|
<execution>
|
|
<id>add-source</id>
|
|
<phase>generate-sources</phase>
|
|
<goals>
|
|
<goal>add-source</goal>
|
|
</goals>
|
|
<configuration>
|
|
<sources>
|
|
<!-- Make sure Eclipse knows where to find generated sources.
|
|
Note that the flex plugin appears to do this for you, but we have
|
|
to do this manually for the CUP and Thrift generated code
|
|
-->
|
|
<source>${project.basedir}/generated-sources/gen-java</source>
|
|
<source>${project.build.directory}/generated-sources/cup</source>
|
|
</sources>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
|
|
<plugin>
|
|
<groupId>org.codehaus.mojo</groupId>
|
|
<artifactId>exec-maven-plugin</artifactId>
|
|
<version>1.4.0</version>
|
|
<executions>
|
|
<execution>
|
|
<goals>
|
|
<goal>java</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
<configuration>
|
|
<systemProperties>
|
|
<systemProperty>
|
|
<key>java.library.path</key>
|
|
<value>${java.library.path}:${backend.library.path}</value>
|
|
</systemProperty>
|
|
<systemProperty>
|
|
<key>test.hive.testdata</key>
|
|
<value>${project.basedir}/../testdata/target/AllTypes.txt</value>
|
|
</systemProperty>
|
|
</systemProperties>
|
|
</configuration>
|
|
</plugin>
|
|
|
|
<plugin>
|
|
<groupId>org.jacoco</groupId>
|
|
<artifactId>jacoco-maven-plugin</artifactId>
|
|
<version>0.7.6.201602180812</version>
|
|
<executions>
|
|
<execution>
|
|
<id>prepare-jacoco-agent</id>
|
|
<goals>
|
|
<goal>prepare-agent</goal>
|
|
</goals>
|
|
<configuration>
|
|
<destFile>${jacoco.data.file}</destFile>
|
|
<propertyName>surefireJacocoArg</propertyName>
|
|
</configuration>
|
|
</execution>
|
|
<execution>
|
|
<id>jacoco-report</id>
|
|
<phase>test</phase>
|
|
<goals>
|
|
<goal>report</goal>
|
|
</goals>
|
|
<configuration>
|
|
<dataFile>${jacoco.data.file}</dataFile>
|
|
<outputDirectory>${jacoco.report.dir}</outputDirectory>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
<configuration>
|
|
<!-- Code coverage reporting is disabled by default and must be enabled
|
|
when running tests like this: mvn test -DcodeCoverage -->
|
|
<skip>${jacoco.skip}</skip>
|
|
</configuration>
|
|
</plugin>
|
|
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-enforcer-plugin</artifactId>
|
|
<version>3.0.0-M1</version>
|
|
<executions>
|
|
<execution>
|
|
<id>enforce-banned-dependencies</id>
|
|
<goals>
|
|
<goal>enforce</goal>
|
|
</goals>
|
|
<configuration>
|
|
<rules>
|
|
<bannedDependencies>
|
|
<excludes>
|
|
<exclude>org.apache.logging.log4j:log4j-slf4j-impl</exclude>
|
|
<exclude>org.apache.logging.log4j:log4j-1.2-api</exclude>
|
|
<!-- Assert that we only use artifacts from only the specified
|
|
version of these components. -->
|
|
<exclude>org.apache.hadoop:*</exclude>
|
|
<exclude>org.apache.hbase:*</exclude>
|
|
<exclude>org.apache.hive:*</exclude>
|
|
<exclude>org.apache.kudu:*</exclude>
|
|
<exclude>org.apache.sentry:*</exclude>
|
|
<exclude>org.apache.parquet:*</exclude>
|
|
</excludes>
|
|
<includes>
|
|
<include>org.apache.hadoop:*:${hadoop.version}</include>
|
|
<include>org.apache.hbase:*:${hbase.version}</include>
|
|
<include>org.apache.hive:*:${hive.version}</include>
|
|
<include>org.apache.kudu:*:${kudu.version}</include>
|
|
<include>org.apache.sentry:*:${sentry.version}</include>
|
|
<include>org.apache.parquet:*:${parquet.version}</include>
|
|
</includes>
|
|
</bannedDependencies>
|
|
</rules>
|
|
<fail>true</fail>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
|
|
</plugins>
|
|
<pluginManagement>
|
|
<plugins>
|
|
<!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.-->
|
|
<plugin>
|
|
<groupId>org.eclipse.m2e</groupId>
|
|
<artifactId>lifecycle-mapping</artifactId>
|
|
<version>1.0.0</version>
|
|
<configuration>
|
|
<lifecycleMappingMetadata>
|
|
<pluginExecutions>
|
|
<pluginExecution>
|
|
<pluginExecutionFilter>
|
|
<groupId>net.sourceforge.czt</groupId>
|
|
<artifactId>maven-cup-plugin</artifactId>
|
|
<versionRange>[1.6.4,)</versionRange>
|
|
<goals>
|
|
<goal>generate</goal>
|
|
</goals>
|
|
</pluginExecutionFilter>
|
|
<action>
|
|
<ignore></ignore>
|
|
</action>
|
|
</pluginExecution>
|
|
<pluginExecution>
|
|
<pluginExecutionFilter>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-antrun-plugin</artifactId>
|
|
<versionRange>[1.6,)</versionRange>
|
|
<goals>
|
|
<goal>run</goal>
|
|
</goals>
|
|
</pluginExecutionFilter>
|
|
<action>
|
|
<ignore></ignore>
|
|
</action>
|
|
</pluginExecution>
|
|
<pluginExecution>
|
|
<pluginExecutionFilter>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-dependency-plugin</artifactId>
|
|
<versionRange>[2.0,)</versionRange>
|
|
<goals>
|
|
<goal>copy-dependencies</goal>
|
|
</goals>
|
|
</pluginExecutionFilter>
|
|
<action>
|
|
<ignore></ignore>
|
|
</action>
|
|
</pluginExecution>
|
|
</pluginExecutions>
|
|
</lifecycleMappingMetadata>
|
|
</configuration>
|
|
</plugin>
|
|
<!-- mvn eclipse:eclipse generates Eclipse .project and .classpath files -->
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins </groupId>
|
|
<artifactId>maven-eclipse-plugin</artifactId>
|
|
<version>2.10</version>
|
|
<configuration>
|
|
<!-- By default, we separate Eclipse-built files from Maven-built
|
|
files. Otherwise, they are both in target/classes, and Eclipse
|
|
and Maven may clobber each other, complicating attaching to
|
|
a running process. -->
|
|
<buildOutputDirectory>${eclipse.output.directory}</buildOutputDirectory>
|
|
<downloadSources>true</downloadSources>
|
|
<downloadJavadocs>false</downloadJavadocs>
|
|
<additionalConfig>
|
|
<file>
|
|
<!-- Saved "launch configuration" for attaching Eclipse debugger to port 30000 -->
|
|
<name>impala-fe-30000.launch</name>
|
|
<content><![CDATA[<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
<launchConfiguration type="org.eclipse.jdt.launching.remoteJavaApplication">
|
|
<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
|
|
<listEntry value="/impala-frontend"/>
|
|
</listAttribute>
|
|
<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
|
|
<listEntry value="4"/>
|
|
</listAttribute>
|
|
<booleanAttribute key="org.eclipse.jdt.launching.ALLOW_TERMINATE" value="false"/>
|
|
<mapAttribute key="org.eclipse.jdt.launching.CONNECT_MAP">
|
|
<mapEntry key="hostname" value="localhost"/>
|
|
<mapEntry key="port" value="30000"/>
|
|
</mapAttribute>
|
|
<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="impala-frontend"/>
|
|
<stringAttribute key="org.eclipse.jdt.launching.VM_CONNECTOR_ID" value="org.eclipse.jdt.launching.socketAttachConnector"/>
|
|
</launchConfiguration>
|
|
]]>
|
|
</content>
|
|
</file>
|
|
</additionalConfig>
|
|
</configuration>
|
|
</plugin>
|
|
</plugins>
|
|
</pluginManagement>
|
|
</build>
|
|
|
|
<profiles>
|
|
<profile>
|
|
<id>thrift-home-defined</id>
|
|
<activation>
|
|
<file>
|
|
<exists>${env.THRIFT_HOME}/bin/thrift</exists>
|
|
</file>
|
|
</activation>
|
|
<properties>
|
|
<thrift.executable>${env.THRIFT_HOME}/bin/thrift</thrift.executable>
|
|
</properties>
|
|
</profile>
|
|
<profile>
|
|
<id>jacoco-code-coverage</id>
|
|
<activation>
|
|
<property>
|
|
<!-- Enable code coverage if the 'codeCoverage' property is set.
|
|
Usage: mvn test -DcodeCoverage -->
|
|
<name>codeCoverage</name>
|
|
</property>
|
|
</activation>
|
|
<properties>
|
|
<jacoco.skip>false</jacoco.skip>
|
|
<!-- Due to Jacoco's runtime instrumentation some tests could fail.
|
|
In order to still produce a coverage report it is recommended
|
|
to ignore test failures. -->
|
|
<maven.test.failure.ignore>true</maven.test.failure.ignore>
|
|
</properties>
|
|
</profile>
|
|
|
|
<profile>
|
|
<id>errorprone</id>
|
|
<build>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-compiler-plugin</artifactId>
|
|
<version>3.3</version>
|
|
<configuration>
|
|
<showWarnings>true</showWarnings>
|
|
<compilerId>javac-with-errorprone</compilerId>
|
|
<forceJavacCompilerUse>true</forceJavacCompilerUse>
|
|
<compilerArgs>
|
|
<arg>-XepDisableWarningsInGeneratedCode</arg>
|
|
<arg>-XepExcludedPaths:.*/generated-.*/.*</arg>
|
|
</compilerArgs>
|
|
</configuration>
|
|
<dependencies>
|
|
<dependency>
|
|
<groupId>org.codehaus.plexus</groupId>
|
|
<artifactId>plexus-compiler-javac-errorprone</artifactId>
|
|
<version>2.8.3</version>
|
|
</dependency>
|
|
<!-- override plexus-compiler-javac-errorprone's dependency on
|
|
Error Prone with the latest version -->
|
|
<dependency>
|
|
<groupId>com.google.errorprone</groupId>
|
|
<artifactId>error_prone_core</artifactId>
|
|
<version>2.3.1</version>
|
|
</dependency>
|
|
</dependencies>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
</profile>
|
|
</profiles>
|
|
|
|
<dependencyManagement>
|
|
<dependencies>
|
|
<!--
|
|
Pin org.glassfish:javax.el explicitly.
|
|
|
|
HBase depends on this indirectly, and it's configured with
|
|
a range of versions. This causes Maven to talk to all configured
|
|
repositories, leading both to a lot of chattiness, and also
|
|
failures if one of the repositories is unavailable.
|
|
-->
|
|
<dependency>
|
|
<groupId>org.glassfish</groupId>
|
|
<artifactId>javax.el</artifactId>
|
|
<version>3.0.1-b08</version>
|
|
</dependency>
|
|
</dependencies>
|
|
</dependencyManagement>
|
|
</project>
|