- Redo all classes based on org.parquet only - remove unuused dependencies like parquet-hadoop, common-configuration2 - timeline-service does not build a fat jar anymore - Fix utilities and hadoop-mr bundles based on above
377 lines
14 KiB
XML
377 lines
14 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/xsd/maven-4.0.0.xsd">
|
|
<parent>
|
|
<artifactId>hudi</artifactId>
|
|
<groupId>org.apache.hudi</groupId>
|
|
<version>0.5.0-SNAPSHOT</version>
|
|
<relativePath>../../pom.xml</relativePath>
|
|
</parent>
|
|
<modelVersion>4.0.0</modelVersion>
|
|
|
|
<groupId>org.apache.hudi</groupId>
|
|
<artifactId>hudi-spark-bundle</artifactId>
|
|
<packaging>jar</packaging>
|
|
|
|
<properties>
|
|
<log4j.version>1.2.17</log4j.version>
|
|
<junit.version>4.10</junit.version>
|
|
<checkstyle.skip>true</checkstyle.skip>
|
|
<notice.dir>${project.basedir}/src/main/resources/META-INF</notice.dir>
|
|
<notice.file>HUDI_NOTICE.txt</notice.file>
|
|
</properties>
|
|
|
|
<build>
|
|
<resources>
|
|
<resource>
|
|
<directory>src/main/resources</directory>
|
|
</resource>
|
|
</resources>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-dependency-plugin</artifactId>
|
|
<executions>
|
|
<execution>
|
|
<id>copy-dependencies</id>
|
|
<phase>prepare-package</phase>
|
|
<goals>
|
|
<goal>copy-dependencies</goal>
|
|
</goals>
|
|
<configuration>
|
|
<outputDirectory>${project.build.directory}/lib</outputDirectory>
|
|
<overWriteReleases>true</overWriteReleases>
|
|
<overWriteSnapshots>true</overWriteSnapshots>
|
|
<overWriteIfNewer>true</overWriteIfNewer>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.rat</groupId>
|
|
<artifactId>apache-rat-plugin</artifactId>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-shade-plugin</artifactId>
|
|
<version>2.4</version>
|
|
<executions>
|
|
<execution>
|
|
<phase>package</phase>
|
|
<goals>
|
|
<goal>shade</goal>
|
|
</goals>
|
|
<configuration>
|
|
<createSourcesJar>true</createSourcesJar>
|
|
<relocations>
|
|
<relocation>
|
|
<pattern>com.beust.</pattern>
|
|
<shadedPattern>org.apache.hudi.com.beust.</shadedPattern>
|
|
</relocation>
|
|
<relocation>
|
|
<pattern>org.joda.</pattern>
|
|
<shadedPattern>org.apache.hudi.org.joda.</shadedPattern>
|
|
</relocation>
|
|
<relocation>
|
|
<pattern>com.google.</pattern>
|
|
<shadedPattern>org.apache.hudi.com.google.</shadedPattern>
|
|
</relocation>
|
|
<relocation>
|
|
<pattern>org.slf4j.</pattern>
|
|
<shadedPattern>org.apache.hudi.org.slf4j.</shadedPattern>
|
|
</relocation>
|
|
<relocation>
|
|
<pattern>org.apache.</pattern>
|
|
<shadedPattern>org.apache.hudi.org.apache.</shadedPattern>
|
|
<excludes>
|
|
<exclude>com.databricks.spark.**</exclude>
|
|
<exclude>org.apache.avro.**</exclude>
|
|
<exclude>org.apache.derby.**</exclude>
|
|
<exclude>org.apache.hadoop.**</exclude>
|
|
<exclude>org.apache.hive.**</exclude>
|
|
<exclude>org.apache.hudi.**</exclude>
|
|
<exclude>org.apache.logging.log4j.**</exclude>
|
|
<exclude>org.apache.log4j.**</exclude>
|
|
<exclude>org.apache.spark.**</exclude>
|
|
<exclude>org.apache.thrift.**</exclude>
|
|
</excludes>
|
|
</relocation>
|
|
<relocation>
|
|
<pattern>parquet.column</pattern>
|
|
<shadedPattern>org.apache.hudi.parquet.column</shadedPattern>
|
|
</relocation>
|
|
<relocation>
|
|
<pattern>parquet.format.</pattern>
|
|
<shadedPattern>org.apache.hudi.parquet.format.</shadedPattern>
|
|
</relocation>
|
|
<relocation>
|
|
<pattern>parquet.hadoop.</pattern>
|
|
<shadedPattern>org.apache.hudi.parquet.hadoop.</shadedPattern>
|
|
</relocation>
|
|
<relocation>
|
|
<pattern>parquet.schema</pattern>
|
|
<shadedPattern>org.apache.hudi.parquet.schema</shadedPattern>
|
|
</relocation>
|
|
<!-- TODO: Revisit GH ISSUE #533 & PR#633-->
|
|
<!--
|
|
<relocation>
|
|
<pattern>org.apache.hive.jdbc.</pattern>
|
|
<shadedPattern>org.apache.hudi.org.apache.hive.jdbc.</shadedPattern>
|
|
</relocation>
|
|
<relocation>
|
|
<pattern>org.apache.hadoop.hive.metastore.</pattern>
|
|
<shadedPattern>org.apache.hudi.org.apache.hadoop_hive.metastore.</shadedPattern>
|
|
</relocation>
|
|
<relocation>
|
|
<pattern>org.apache.hive.common.</pattern>
|
|
<shadedPattern>org.apache.hudi.org.apache.hive.common.</shadedPattern>
|
|
</relocation>
|
|
<relocation>
|
|
<pattern>org.apache.hadoop.hive.common.</pattern>
|
|
<shadedPattern>org.apache.hudi.org.apache.hadoop_hive.common.</shadedPattern>
|
|
</relocation>
|
|
<relocation>
|
|
<pattern>org.apache.hadoop.hive.conf.</pattern>
|
|
<shadedPattern>org.apache.hudi.org.apache.hadoop_hive.conf.</shadedPattern>
|
|
</relocation>
|
|
<relocation>
|
|
<pattern>org.apache.hive.service.</pattern>
|
|
<shadedPattern>org.apache.hudi.org.apache.hive.service.</shadedPattern>
|
|
</relocation>
|
|
<relocation>
|
|
<pattern>org.apache.hadoop.hive.service.</pattern>
|
|
<shadedPattern>org.apache.hudi.org.apache.hadoop_hive.service.</shadedPattern>
|
|
</relocation>
|
|
<relocation>
|
|
<pattern>org.apache.hadoop.hive.serde2.</pattern>
|
|
<shadedPattern>org.apache.hudi.org.apache.hadoop_hive.serde2.</shadedPattern>
|
|
</relocation>
|
|
-->
|
|
<relocation>
|
|
<pattern>com.esotericsoftware.kryo.</pattern>
|
|
<shadedPattern>org.apache.hudi.com.esotericsoftware.kryo.</shadedPattern>
|
|
</relocation>
|
|
<relocation>
|
|
<pattern>org.objenesis.</pattern>
|
|
<shadedPattern>org.apache.hudi.org.objenesis.</shadedPattern>
|
|
</relocation>
|
|
<relocation>
|
|
<pattern>com.esotericsoftware.minlog.</pattern>
|
|
<shadedPattern>org.apache.hudi.com.esotericsoftware.minlog.</shadedPattern>
|
|
</relocation>
|
|
</relocations>
|
|
<createDependencyReducedPom>false</createDependencyReducedPom>
|
|
<artifactSet>
|
|
<excludes>
|
|
<exclude>com.databricks:spark-avro_2.11</exclude>
|
|
<exclude>log4j:*</exclude>
|
|
<exclude>org.apache.avro:*</exclude>
|
|
<exclude>org.apache.derby:derby</exclude>
|
|
<exclude>org.apache.hadoop:*</exclude>
|
|
<exclude>org.apache.hbase:*</exclude>
|
|
<!-- Just include hive-common, hive-serde, hive-service, hive-metastore and hive-jdbc -->
|
|
<exclude>org.apache.hive:hive-exec</exclude>
|
|
<exclude>org.apache.hive:hive-shims</exclude>
|
|
<exclude>org.apache.spark:*</exclude>
|
|
</excludes>
|
|
</artifactSet>
|
|
<filters>
|
|
<filter>
|
|
<artifact>*:*</artifact>
|
|
<excludes>
|
|
<exclude>META-INF/*.SF</exclude>
|
|
<exclude>META-INF/*.DSA</exclude>
|
|
<exclude>META-INF/*.RSA</exclude>
|
|
<!-- Use this jar's NOTICE and license file -->
|
|
<exclude>META-INF/NOTICE*</exclude>
|
|
<exclude>META-INF/LICENSE*</exclude>
|
|
</excludes>
|
|
</filter>
|
|
</filters>
|
|
<finalName>${project.artifactId}-${project.version}</finalName>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
|
|
<dependencies>
|
|
<!-- Scala -->
|
|
<dependency>
|
|
<groupId>org.scala-lang</groupId>
|
|
<artifactId>scala-library</artifactId>
|
|
<version>${scala.version}</version>
|
|
</dependency>
|
|
|
|
<!-- Hoodie -->
|
|
<dependency>
|
|
<groupId>org.apache.hudi</groupId>
|
|
<artifactId>hudi-client</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.apache.hudi</groupId>
|
|
<artifactId>hudi-common</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.apache.hudi</groupId>
|
|
<artifactId>hudi-hadoop-mr</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.apache.hudi</groupId>
|
|
<artifactId>hudi-hive</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.apache.hudi</groupId>
|
|
<artifactId>hudi-spark</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
|
|
<!-- Logging -->
|
|
<dependency>
|
|
<groupId>log4j</groupId>
|
|
<artifactId>log4j</artifactId>
|
|
<version>${log4j.version}</version>
|
|
</dependency>
|
|
|
|
<!-- Fasterxml -->
|
|
<dependency>
|
|
<groupId>com.fasterxml.jackson.core</groupId>
|
|
<artifactId>jackson-annotations</artifactId>
|
|
</dependency>
|
|
|
|
<!-- Avro -->
|
|
<dependency>
|
|
<groupId>org.apache.avro</groupId>
|
|
<artifactId>avro</artifactId>
|
|
</dependency>
|
|
|
|
<!-- Spark -->
|
|
<dependency>
|
|
<groupId>org.apache.spark</groupId>
|
|
<artifactId>spark-core_2.11</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.apache.spark</groupId>
|
|
<artifactId>spark-sql_2.11</artifactId>
|
|
</dependency>
|
|
|
|
<!-- Spark (Packages) -->
|
|
<dependency>
|
|
<groupId>com.databricks</groupId>
|
|
<artifactId>spark-avro_2.11</artifactId>
|
|
<version>4.0.0</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>com.beust</groupId>
|
|
<artifactId>jcommander</artifactId>
|
|
</dependency>
|
|
|
|
<!-- Apache Commons -->
|
|
<dependency>
|
|
<groupId>commons-codec</groupId>
|
|
<artifactId>commons-codec</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>commons-dbcp</groupId>
|
|
<artifactId>commons-dbcp</artifactId>
|
|
</dependency>
|
|
|
|
<!-- Hadoop -->
|
|
<dependency>
|
|
<groupId>org.apache.hadoop</groupId>
|
|
<artifactId>hadoop-client</artifactId>
|
|
<exclusions>
|
|
<exclusion>
|
|
<groupId>javax.servlet</groupId>
|
|
<artifactId>*</artifactId>
|
|
</exclusion>
|
|
</exclusions>
|
|
<scope>provided</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.apache.hadoop</groupId>
|
|
<artifactId>hadoop-common</artifactId>
|
|
<scope>provided</scope>
|
|
</dependency>
|
|
|
|
<!-- Hive - Compile -->
|
|
<dependency>
|
|
<groupId>${hive.groupid}</groupId>
|
|
<artifactId>hive-jdbc</artifactId>
|
|
<version>${hive.version}</version>
|
|
<classifier>standalone</classifier>
|
|
<exclusions>
|
|
<exclusion>
|
|
<groupId>org.slf4j</groupId>
|
|
<artifactId>slf4j-api</artifactId>
|
|
</exclusion>
|
|
<exclusion>
|
|
<groupId>javax.servlet</groupId>
|
|
<artifactId>servlet-api</artifactId>
|
|
</exclusion>
|
|
</exclusions>
|
|
</dependency>
|
|
<!-- TODO: Reinvestigate PR 633 -->
|
|
<dependency>
|
|
<groupId>${hive.groupid}</groupId>
|
|
<artifactId>hive-service</artifactId>
|
|
<version>${hive.version}</version>
|
|
<scope>compile</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>${hive.groupid}</groupId>
|
|
<artifactId>hive-jdbc</artifactId>
|
|
<version>${hive.version}</version>
|
|
<scope>compile</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>${hive.groupid}</groupId>
|
|
<artifactId>hive-serde</artifactId>
|
|
<version>${hive.version}</version>
|
|
<scope>compile</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>${hive.groupid}</groupId>
|
|
<artifactId>hive-metastore</artifactId>
|
|
<version>${hive.version}</version>
|
|
<scope>compile</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>${hive.groupid}</groupId>
|
|
<artifactId>hive-common</artifactId>
|
|
<version>${hive.version}</version>
|
|
<scope>compile</scope>
|
|
</dependency>
|
|
<!-- TODO: Reinvestigate PR 633 -->
|
|
|
|
<dependency>
|
|
<groupId>org.scalatest</groupId>
|
|
<artifactId>scalatest_2.11</artifactId>
|
|
<version>${scalatest.version}</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
</dependencies>
|
|
</project>
|
|
|