blob: 0b121b3be8899213c30fecae75e8bca8b98e1369 [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<!--
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.apache.hive</groupId>
<artifactId>hive</artifactId>
<version>4.0.0</version>
<relativePath>../pom.xml</relativePath>
</parent>
<artifactId>hive-packaging</artifactId>
<packaging>pom</packaging>
<name>Hive Packaging</name>
<properties>
<hive.path.to.root>..</hive.path.to.root>
<hive.jdbc.driver.jar>apache-hive-${project.version}-jdbc.jar</hive.jdbc.driver.jar>
</properties>
<profiles>
<profile>
<id>dist</id>
<build>
<plugins>
<!-- plugins are always listed in sorted order by groupId, artifactId -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<executions>
<execution>
<id>assemble</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
<configuration>
<finalName>apache-hive-${project.version}</finalName>
<descriptors>
<descriptor>src/main/assembly/bin.xml</descriptor>
<descriptor>src/main/assembly/src.xml</descriptor>
</descriptors>
<tarLongFileMode>posix</tarLongFileMode>
</configuration>
</execution>
<execution>
<id>assemble-beeline</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
<configuration>
<finalName>apache-hive-beeline-${project.version}</finalName>
<appendAssemblyId>false</appendAssemblyId>
<descriptors>
<descriptor>src/main/assembly/beeline.xml</descriptor>
</descriptors>
<tarLongFileMode>posix</tarLongFileMode>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>copy</id>
<phase>package</phase>
<goals>
<goal>copy</goal>
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>${project.groupId}</groupId>
<artifactId>hive-jdbc</artifactId>
<version>${project.version}</version>
<type>jar</type>
<classifier>${hive.jdbc.driver.classifier}</classifier>
<overWrite>true</overWrite>
<outputDirectory>${project.build.directory}</outputDirectory>
<destFileName>${hive.jdbc.driver.jar}</destFileName>
</artifactItem>
</artifactItems>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<execution>
<id>create-bin-license</id>
<phase>generate-resources</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<target>
<concat destfile="${project.build.directory}/generated-resources/LICENSE" force="yes">
<fileset dir="../">
<include name="LICENSE"/>
<include name="LICENSE-binary"/>
</fileset>
</concat>
</target>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>license-maven-plugin</artifactId>
<version>${maven.license.plugin.version}</version>
<executions>
<execution>
<id>license-fetch</id>
<phase>generate-resources</phase>
<goals>
<goal>download-licenses</goal>
</goals>
</execution>
</executions>
<configuration>
<includeOptional>false</includeOptional>
<artifactFiltersUrl>${project.baseUri}/src/license/artifact-filters.txt</artifactFiltersUrl>
<excludeTransitiveDependencies>true</excludeTransitiveDependencies>
<useDefaultUrlReplacements>true</useDefaultUrlReplacements>
<licenseUrlReplacements>
<licenseUrlReplacements>
<regexp>https?://glassfish(.dev)?\.java\.net/.*CDDL.*</regexp>
<replacement>https://spdx.org/licenses/CDDL-1.1.html</replacement>
</licenseUrlReplacements>
<licenseUrlReplacement>
<regexp>https?://asm\.objectweb\.org/license.html</regexp>
<replacement>https://asm.ow2.io/license.html</replacement>
</licenseUrlReplacement>
<licenseUrlReplacement>
<regexp>http://(www\.)?antlr.org/license.html</regexp>
<replacement>http://www.antlr.org/license.html</replacement>
</licenseUrlReplacement>
</licenseUrlReplacements>
<licenseUrlFileNames>
<APACHE-2.0>
https?://www\.apache\.org/licenses/LICENSE-2\.0.*
\Qhttps://aws.amazon.com/apache2.0\E
\Qhttps://opensource.org/licenses/Apache-2.0\E
\Qhttp://www.apache.org/licenses/\E
</APACHE-2.0>
<BSD-2-CLAUSE>
https?://(www\.)?opensource.org/licenses/bsd-license.php
https?://(www\.)?opensource.org/licenses/BSD-2-Clause
</BSD-2-CLAUSE>
<BSD-3-CLAUSE>
https?://(www\.)?opensource.org/licenses/BSD-3-Clause
</BSD-3-CLAUSE>
<LGPL-3.0-only>
\Qhttp://www.fsf.org/licensing/licenses/lgpl.txt\E
\Qhttp://www.gnu.org/licenses/lgpl-3.0.txt\E
</LGPL-3.0-only>
<EPL-1.0>
\Qhttps://www.eclipse.org/org/documents/epl-v10.php\E
\Qhttp://www.eclipse.org/org/documents/epl-v10.php\E
</EPL-1.0>
<MIT>
https?://(www\.)?opensource\.org/licenses/mit(-license.php)?
</MIT>
</licenseUrlFileNames>
<licenseUrlFileNameSanitizers>
<licenseUrlFileNameSanitizer>
<regexp>[\s-_,]+</regexp>
<replacement>-</replacement>
</licenseUrlFileNameSanitizer>
</licenseUrlFileNameSanitizers>
</configuration>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>deb</id>
<build>
<plugins>
<plugin>
<artifactId>jdeb</artifactId>
<groupId>org.vafer</groupId>
<version>1.0.1</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>jdeb</goal>
</goals>
<configuration>
<installDir>/usr/local/hive</installDir>
<deb>${project.build.directory}/hive_${project.version}.deb</deb>
<dataSet>
<data>
<src>target/apache-hive-${project.version}-bin/apache-hive-${project.version}-bin</src>
<type>directory</type>
<mapper>
<type>perm</type>
<prefix>/usr/local/hive</prefix>
</mapper>
</data>
<data>
<src>target/apache-hive-${project.version}-bin/apache-hive-${project.version}-bin/bin</src>
<type>directory</type>
<mapper>
<type>perm</type>
<prefix>/usr/local/hive/bin</prefix>
<filemode>755</filemode>
</mapper>
</data>
</dataSet>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<!-- Add iceberg dependencies only with iceberg build -->
<profile>
<id>iceberg</id>
<dependencies>
<dependency>
<groupId>org.apache.hive</groupId>
<artifactId>hive-iceberg-handler</artifactId>
<version>${project.version}</version>
</dependency>
</dependencies>
</profile>
<profile>
<id>docker</id>
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>exec</goal>
</goals>
</execution>
</executions>
<configuration>
<executable>bash</executable>
<environmentVariables>
<SOURCE_DIR>${hive.path.to.root}</SOURCE_DIR>
</environmentVariables>
<arguments>
<argument>src/docker/build.sh</argument>
<argument>-hadoop ${hadoop.version}</argument>
<argument>-tez ${tez.version}</argument>
</arguments>
</configuration>
</plugin>
</plugins>
</build>
</profile>
</profiles>
<dependencies>
<!-- dependencies are always listed in sorted order by groupId, artifactId -->
<dependency>
<groupId>org.apache.hive</groupId>
<artifactId>hive-common</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.hive</groupId>
<artifactId>hive-serde</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.hive</groupId>
<artifactId>hive-metastore</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.hive</groupId>
<artifactId>hive-testutils</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.hive</groupId>
<artifactId>hive-exec</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.hive</groupId>
<artifactId>hive-service-rpc</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.hive</groupId>
<artifactId>hive-service</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.hive</groupId>
<artifactId>hive-shims</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.hive</groupId>
<artifactId>hive-jdbc</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.hive</groupId>
<artifactId>hive-jdbc</artifactId>
<version>${project.version}</version>
<classifier>${hive.jdbc.driver.classifier}</classifier>
</dependency>
<dependency>
<groupId>org.apache.hive</groupId>
<artifactId>hive-beeline</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.hive</groupId>
<artifactId>hive-cli</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.hive</groupId>
<artifactId>hive-contrib</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.hive</groupId>
<artifactId>hive-hbase-handler</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.hive</groupId>
<artifactId>hive-druid-handler</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.hive</groupId>
<artifactId>kafka-handler</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.hive</groupId>
<artifactId>hive-jdbc-handler</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.hive</groupId>
<artifactId>hive-accumulo-handler</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.hive</groupId>
<artifactId>hive-llap-client</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.hive</groupId>
<artifactId>hive-llap-ext-client</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.hive</groupId>
<artifactId>hive-hplsql</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.hive</groupId>
<artifactId>hive-storage-api</artifactId>
</dependency>
<dependency>
<groupId>org.apache.hive</groupId>
<artifactId>hive-llap-common</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.hive</groupId>
<artifactId>hive-llap-tez</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.hive</groupId>
<artifactId>hive-llap-server</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.hive</groupId>
<artifactId>hive-streaming</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.hive.hcatalog</groupId>
<artifactId>hive-hcatalog-core</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.hive.hcatalog</groupId>
<artifactId>hive-hcatalog-pig-adapter</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.hive.hcatalog</groupId>
<artifactId>hive-hcatalog-server-extensions</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.hive.hcatalog</groupId>
<artifactId>hive-webhcat</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.hive.hcatalog</groupId>
<artifactId>hive-webhcat-java-client</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-hdfs-client</artifactId>
<version>${hadoop.version}</version>
<optional>true</optional>
<exclusions>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
</exclusion>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-reload4j</artifactId>
</exclusion>
<exclusion>
<groupId>ch.qos.reload4j</groupId>
<artifactId>reload4j</artifactId>
</exclusion>
<exclusion>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.apache.hive</groupId>
<artifactId>hive-kudu-handler</artifactId>
<version>${project.version}</version>
</dependency>
</dependencies>
</project>