| <?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>0.13.0-SNAPSHOT</version> |
| <relativePath>../pom.xml</relativePath> |
| </parent> |
| |
| <artifactId>hive-exec</artifactId> |
| <packaging>jar</packaging> |
| <name>Hive Query Language</name> |
| |
| <properties> |
| <hive.path.to.root>..</hive.path.to.root> |
| </properties> |
| |
| <dependencies> |
| <!-- intra-project --> |
| <dependency> |
| <groupId>org.apache.hive</groupId> |
| <artifactId>hive-metastore</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hive</groupId> |
| <artifactId>hive-ant</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <!-- inter-project --> |
| <dependency> |
| <groupId>com.esotericsoftware.kryo</groupId> |
| <artifactId>kryo</artifactId> |
| <version>${kryo.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>commons-codec</groupId> |
| <artifactId>commons-codec</artifactId> |
| <version>${commons-codec.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>commons-collections</groupId> |
| <artifactId>commons-collections</artifactId> |
| <version>${commons-collections.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>commons-configuration</groupId> |
| <artifactId>commons-configuration</artifactId> |
| <version>${commons-configuration.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>commons-io</groupId> |
| <artifactId>commons-io</artifactId> |
| <version>${commons-io.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>commons-logging</groupId> |
| <artifactId>commons-logging</artifactId> |
| <version>${commons-logging.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>javolution</groupId> |
| <artifactId>javolution</artifactId> |
| <version>${javolution.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>log4j</groupId> |
| <artifactId>log4j</artifactId> |
| <version>${log4j.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.antlr</groupId> |
| <artifactId>antlr-runtime</artifactId> |
| <version>${antlr.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.antlr</groupId> |
| <artifactId>ST4</artifactId> |
| <version>${ST4.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.avro</groupId> |
| <artifactId>avro-mapred</artifactId> |
| <version>${avro.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.ant</groupId> |
| <artifactId>ant</artifactId> |
| <version>${ant.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.thrift</groupId> |
| <artifactId>libfb303</artifactId> |
| <version>${libfb303.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.thrift</groupId> |
| <artifactId>libthrift</artifactId> |
| <version>${libthrift.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.zookeeper</groupId> |
| <artifactId>zookeeper</artifactId> |
| <version>${zookeeper.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.codehaus.groovy</groupId> |
| <artifactId>groovy-all</artifactId> |
| <version>${groovy.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.datanucleus</groupId> |
| <artifactId>datanucleus-core</artifactId> |
| <version>${datanucleus-core.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>com.google.guava</groupId> |
| <artifactId>guava</artifactId> |
| <version>${guava.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>com.google.protobuf</groupId> |
| <artifactId>protobuf-java</artifactId> |
| <version>${protobuf.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>com.googlecode.javaewah</groupId> |
| <artifactId>JavaEWAH</artifactId> |
| <version>${javaewah.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.iq80.snappy</groupId> |
| <artifactId>snappy</artifactId> |
| <version>${snappy.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.json</groupId> |
| <artifactId>json</artifactId> |
| <version>${json.version}</version> |
| </dependency> |
| <!-- test intra-project --> |
| <dependency> |
| <groupId>org.apache.hive</groupId> |
| <artifactId>hive-testutils</artifactId> |
| <version>${project.version}</version> |
| <scope>test</scope> |
| </dependency> |
| <!-- test inter-project --> |
| <dependency> |
| <groupId>junit</groupId> |
| <artifactId>junit</artifactId> |
| <version>${junit.version}</version> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase</artifactId> |
| <version>${hbase.version}</version> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.mina</groupId> |
| <artifactId>mina-core</artifactId> |
| <version>${mina.version}</version> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.mockito</groupId> |
| <artifactId>mockito-all</artifactId> |
| <version>${mockito-all.version}</version> |
| <scope>test</scope> |
| </dependency> |
| </dependencies> |
| |
| <profiles> |
| <profile> |
| <id>hadoop-1</id> |
| <activation> |
| <activeByDefault>true</activeByDefault> |
| </activation> |
| <dependencies> |
| <dependency> |
| <groupId>org.apache.hadoop</groupId> |
| <artifactId>hadoop-core</artifactId> |
| <version>${hadoop-20S.version}</version> |
| <optional>true</optional> |
| </dependency> |
| </dependencies> |
| </profile> |
| <profile> |
| <id>hadoop-2</id> |
| <dependencies> |
| <dependency> |
| <groupId>org.apache.hadoop</groupId> |
| <artifactId>hadoop-common</artifactId> |
| <version>${hadoop-23.version}</version> |
| <optional>true</optional> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hadoop</groupId> |
| <artifactId>hadoop-mapreduce-client-core</artifactId> |
| <version>${hadoop-23.version}</version> |
| <optional>true</optional> |
| </dependency> |
| </dependencies> |
| </profile> |
| <profile> |
| <id>protobuf</id> |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-antrun-plugin</artifactId> |
| <executions> |
| <execution> |
| <id>generate-protobuf-sources</id> |
| <phase>generate-sources</phase> |
| <configuration> |
| <target> |
| <property name="protobuf.src.dir" location="${basedir}/src/protobuf"/> |
| <property name="protobuf.build.dir" location="${basedir}/src/gen/protobuf/gen-java"/> |
| <echo>Building ORC Protobuf</echo> |
| <mkdir dir="${protobuf.build.dir}"/> |
| <exec executable="protoc" failonerror="true"> |
| <arg value="--java_out=${protobuf.build.dir}"/> |
| <arg value="-I=${protobuf.src.dir}/org/apache/hadoop/hive/ql/io/orc"/> |
| <arg value="${protobuf.src.dir}/org/apache/hadoop/hive/ql/io/orc/orc_proto.proto"/> |
| </exec> |
| </target> |
| </configuration> |
| <goals> |
| <goal>run</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| </build> |
| </profile> |
| </profiles> |
| |
| <build> |
| <sourceDirectory>${basedir}/src/java</sourceDirectory> |
| <testSourceDirectory>${basedir}/src/test</testSourceDirectory> |
| <plugins> |
| <plugin> |
| <groupId>org.antlr</groupId> |
| <artifactId>antlr3-maven-plugin</artifactId> |
| <executions> |
| <execution> |
| <goals> |
| <goal>antlr</goal> |
| </goals> |
| </execution> |
| </executions> |
| <configuration> |
| <sourceDirectory>${basedir}/src/java</sourceDirectory> |
| <includes> |
| <include>**/HiveLexer.g</include> |
| <include>**/HiveParser.g</include> |
| </includes> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-antrun-plugin</artifactId> |
| <executions> |
| <execution> |
| <id>generate-sources</id> |
| <phase>generate-sources</phase> |
| <configuration> |
| <target> |
| <property name="compile.classpath" refid="maven.compile.classpath"/> |
| <taskdef name="vectorcodegen" classname="org.apache.hadoop.hive.ant.GenVectorCode" |
| classpath="${compile.classpath}"/> |
| <mkdir dir="${project.build.directory}/generated-sources/java/org/apache/hadoop/hive/ql/exec/vector/expressions/gen/"/> |
| <mkdir dir="${project.build.directory}/generated-sources/java/org/apache/hadoop/hive/ql/exec/vector/expressions/aggregates/gen/"/> |
| <mkdir dir="${project.build.directory}/generated-test-sources/java/org/apache/hadoop/hive/ql/exec/vector/expressions/gen/"/> |
| <vectorcodegen templateBaseDir="${basedir}/src/gen/vectorization/" buildDir="${project.build.directory}" /> |
| </target> |
| </configuration> |
| <goals> |
| <goal>run</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-jar-plugin</artifactId> |
| <executions> |
| <execution> |
| <goals> |
| <goal>test-jar</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-shade-plugin</artifactId> |
| <executions> |
| <execution> |
| <id>build-exec-bundle</id> |
| <phase>package</phase> |
| <goals> |
| <goal>shade</goal> |
| </goals> |
| <configuration> |
| <artifactSet> |
| <includes> |
| <!-- order is meant to be the same as the ant build --> |
| <include>org.apache.hive:hive-common</include> |
| <include>org.apache.hive:hive-exec</include> |
| <include>org.apache.hive:hive-serde</include> |
| <include>com.esotericsoftware.kryo:kryo</include> |
| <include>org.apache.thrift:libthrift</include> |
| <include>commons-lang:commons-lang</include> |
| <include>org.json:json</include> |
| <include>org.apache.avro:arvro-mapred</include> |
| <include>org.apache.hive:hive-shims:*:uberjar</include> |
| <include>com.googlecode.javaewah:JavaEWAH</include> |
| <include>javolution:javolution</include> |
| <include>com.google.protobuf:protobuf-java</include> |
| <include>org.iq80.snappy:snappy</include> |
| <include>org.codehaus.jackson:jackson-core-asl</include> |
| <include>org.codehaus.jackson:jackson-mapper-asl</include> |
| <include>com.google.guava:guava</include> |
| </includes> |
| </artifactSet> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.codehaus.mojo</groupId> |
| <artifactId>build-helper-maven-plugin</artifactId> |
| <executions> |
| <execution> |
| <id>add-source</id> |
| <phase>generate-sources</phase> |
| <goals> |
| <goal>add-source</goal> |
| </goals> |
| <configuration> |
| <sources> |
| <source>src/gen/protobuf/gen-java</source> |
| <source>src/gen/thrift/gen-javabean</source> |
| <source>${project.build.directory}/generated-sources/java</source> |
| </sources> |
| </configuration> |
| </execution> |
| <execution> |
| <id>add-test-sources</id> |
| <phase>generate-test-sources</phase> |
| <goals> |
| <goal>add-test-source</goal> |
| </goals> |
| <configuration> |
| <sources> |
| <source>${project.build.directory}/generated-test-sources/java</source> |
| </sources> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| </build> |
| |
| </project> |