<?xml version="1.0" ?>

<!--
   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.
-->

<ivy-module version="2.0" xmlns:m="http://ant.apache.org/ivy/maven"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:noNamespaceSchemaLocation="http://ant.apache.org/ivy/schemas/ivy.xsd">
  <info organisation="org.apache.pig" module="${name}" revision="${version}">
    <license name="Apache 2.0"/>
    <ivyauthor name="Apache Hadoop Team" url="http://hadoop.apache.org/pig"/>
    <description>Pig</description>
  </info>
  <configurations defaultconfmapping="default">
    <!--these match the Maven configurations-->
    <conf name="master" description="contains the artifact but no dependencies"/>
    <conf name="default" extends="master,runtime"/>
    <conf name="runtime" extends="compile,test" description="runtime but not the artifact" />
    <!--Private configurations. -->
    <conf name="compile" extends="hadoop${hadoopversion},hbase${hbaseversion}" visibility="private" description="compile artifacts"/>
    <conf name="test" extends="compile" visibility="private"/>
    <conf name="javadoc" visibility="private" extends="compile,test"/>
    <conf name="releaseaudit" visibility="private"/>
    <conf name="jdiff" visibility="private"/>
    <conf name="checkstyle" visibility="private"/>
    <conf name="buildJar" extends="compile,test" visibility="private"/>
    <conf name="hadoop2" visibility="private"/>
    <conf name="hbase1" visibility="private"/>
    <conf name="spark1" visibility="private" />
    <conf name="spark2" visibility="private" />
  </configurations>
  <publications>
    <artifact name="pig" conf="master"/>
    <artifact name="pig" m:classifier="withouthadoop" conf="master"/>
    <artifact name="pig" m:classifier="withdependencies" conf="master"/>
    <artifact name="pig" m:classifier="sources" conf="master"/>
    <artifact name="pig" m:classifier="javadoc" conf="master"/>
    <artifact name="pig" m:classifier="h2" conf="master"/>
    <artifact name="pig" m:classifier="withouthadoop-h2" conf="master"/>
  </publications>
  <dependencies>
    <dependency org="checkstyle" name="checkstyle" rev="${checkstyle.version}"
      conf="checkstyle->master"/>
    <dependency org="commons-beanutils" name="commons-beanutils-core" rev="${commons-beanutils.version}"
      conf="checkstyle->master"/>
    <dependency org="com.sun.jersey" name="jersey-bundle" rev="${jersey.version}"
      conf="hadoop2->master"/>
    <dependency org="com.sun.jersey" name="jersey-server" rev="${jersey.version}"
      conf="hadoop2->master"/>
    <dependency org="com.sun.jersey.contribs" name="jersey-guice" rev="${jersey.version}"
      conf="hadoop2->master"/>
    <dependency org="commons-codec" name="commons-codec" rev="${commons-codec.version}"
      conf="hadoop2->master"/>
    <dependency org="commons-el" name="commons-el" rev="${commons-el.version}"
      conf="compile->master"/>
    <dependency org="commons-io" name="commons-io" rev="${commons-io.version}"
      conf="compile->master"/>
    <dependency org="org.apache.httpcomponents" name="httpclient" rev="${httpcomponents.version}"
      conf="compile->master"/>
    <dependency org="org.apache.httpcomponents" name="httpcore" rev="${httpcomponents.version}"
      conf="compile->master"/>
    <dependency org="nl.basjes.parse.httpdlog" name="httpdlog-pigloader" rev="${basjes-httpdlog-pigloader.version}"
      conf="compile->master"/>
    <dependency org="nl.basjes.parse.httpdlog" name="httpdlog-inputformat" rev="${basjes-httpdlog-pigloader.version}"
      conf="compile->master"/>
    <dependency org="nl.basjes.parse.httpdlog" name="httpdlog-parser" rev="${basjes-httpdlog-pigloader.version}"
      conf="compile->master"/>
    <dependency org="nl.basjes.parse" name="parser-core" rev="${basjes-httpdlog-pigloader.version}"
      conf="compile->master"/>
    <dependency org="commons-configuration" name="commons-configuration" rev="${commons-configuration.version}"
      conf="hadoop2->master"/>
    <dependency org="commons-collections" name="commons-collections" rev="${commons-collections.version}"
      conf="hadoop2->master"/>
    <dependency org="javax.servlet" name="servlet-api" rev="${servlet-api.version}"
      conf="hadoop2->master"/>
    <dependency org="javax.ws.rs" name="jsr311-api" rev="${jsr311-api.version}"
      conf="hadoop2->master"/>
    <dependency org="com.google.protobuf" name="protobuf-java" rev="${protobuf-java.version}"
      conf="hadoop2->master"/>
    <dependency org="javax.inject" name="javax.inject" rev="${javax-inject.version}"
      conf="hadoop2->master"/>
    <dependency org="javax.xml.bind" name="jaxb-api" rev="${jaxb-api.version}"
      conf="hadoop2->master"/>
    <dependency org="com.sun.xml.bind" name="jaxb-impl" rev="${jaxb-impl.version}"
      conf="hadoop2->master"/>
    <dependency org="com.google.inject" name="guice" rev="${guice.version}"
      conf="hadoop2->master"/>
    <dependency org="com.google.inject.extensions" name="guice-servlet" rev="${guice-servlet.version}"
      conf="hadoop2->master"/>
    <dependency org="aopalliance" name="aopalliance" rev="${aopalliance.version}"
      conf="hadoop2->master"/>
    <dependency org="org.glassfish" name="javax.el" rev="${glassfish.el.version}"
      conf="hadoop2->master"/>
    <dependency org="log4j" name="log4j" rev="${log4j.version}"
      conf="compile->master"/>
    <dependency org="org.apache.hadoop" name="hadoop-annotations"
      rev="${hadoop-common.version}" conf="hadoop2->master"/>
    <dependency org="org.apache.hadoop" name="hadoop-auth" 
      rev="${hadoop-common.version}" conf="hadoop2->master"/>
    <dependency org="org.apache.hadoop" name="hadoop-common" 
      rev="${hadoop-common.version}" conf="hadoop2->master">
      <artifact name="hadoop-common" ext="jar" />
      <artifact name="hadoop-common" type="tests" ext="jar" m:classifier="tests" />
    </dependency>
    <dependency org="org.apache.hadoop" name="hadoop-hdfs"
      rev="${hadoop-hdfs.version}" conf="hadoop2->master">
      <artifact name="hadoop-hdfs" ext="jar" />
      <artifact name="hadoop-hdfs" type="tests" ext="jar" m:classifier="tests" />
    </dependency>
    <dependency org="org.apache.hadoop" name="hadoop-mapreduce-client-core" rev="${hadoop-mapreduce.version}"
      conf="hadoop2->master"/>
    <dependency org="org.apache.hadoop" name="hadoop-mapreduce-client-jobclient" rev="${hadoop-mapreduce.version}"
      conf="hadoop2->master">
        <artifact name="hadoop-mapreduce-client-jobclient" ext="jar" />
        <artifact name="hadoop-mapreduce-client-jobclient" type="tests" ext="jar" m:classifier="tests"/>
        <exclude org="commons-daemon" module="commons-daemon"/><!--bad POM-->
        <exclude org="org.apache.commons" module="commons-daemon"/><!--bad POM-->
    </dependency>
    <dependency org="org.apache.hadoop" name="hadoop-yarn-server-tests" rev="${hadoop-mapreduce.version}"
      conf="hadoop2->master">
      <artifact name="hadoop-yarn-server-tests" type="jar" m:classifier="tests"/>
    </dependency>
    <dependency org="org.apache.hadoop" name="hadoop-mapreduce-client-app" rev="${hadoop-mapreduce.version}"
      conf="hadoop2->master" />
    <dependency org="org.apache.hadoop" name="hadoop-mapreduce-client-shuffle" rev="${hadoop-mapreduce.version}"
      conf="hadoop2->master" />
    <dependency org="org.apache.hadoop" name="hadoop-mapreduce-client-common" 
      rev="${hadoop-mapreduce.version}" conf="hadoop2->master"/>
    <dependency org="org.apache.hadoop" name="hadoop-yarn-api" 
      rev="${hadoop-mapreduce.version}" conf="hadoop2->master"/>
    <dependency org="org.apache.hadoop" name="hadoop-yarn-common" 
      rev="${hadoop-mapreduce.version}" conf="hadoop2->master"/>
    <dependency org="org.apache.hadoop" name="hadoop-yarn-server" 
      rev="${hadoop-mapreduce.version}" conf="hadoop2->master"/>
    <dependency org="org.apache.hadoop" name="hadoop-yarn-server-web-proxy" 
      rev="${hadoop-mapreduce.version}" conf="hadoop2->master"/>
    <dependency org="org.apache.hadoop" name="hadoop-yarn-server-common" 
      rev="${hadoop-mapreduce.version}" conf="hadoop2->master"/>
    <dependency org="org.apache.hadoop" name="hadoop-yarn-server-nodemanager" 
      rev="${hadoop-mapreduce.version}" conf="hadoop2->master"/>
    <dependency org="org.apache.hadoop" name="hadoop-yarn-server-resourcemanager" 
      rev="${hadoop-mapreduce.version}" conf="hadoop2->master"/>
    <dependency org="org.apache.hadoop" name="hadoop-yarn-client" 
      rev="${hadoop-mapreduce.version}" conf="hadoop2->master"/>
    <dependency org="org.apache.hadoop" name="hadoop-yarn-server-applicationhistoryservice" 
      rev="${hadoop-mapreduce.version}" conf="hadoop2->master"/>
    <dependency org="org.apache.hadoop" name="hadoop-mapreduce-client-hs" 
      rev="${hadoop-mapreduce.version}" conf="hadoop2->master"/>
    <dependency org="commons-logging" name="commons-logging" rev="${commons-logging.version}"
      conf="compile->master;checkstyle->master"/>
    <dependency org="org.slf4j" name="slf4j-log4j12" rev="${slf4j-log4j12.version}"
      conf="compile->master;test->master"/>
    <dependency org="commons-cli" name="commons-cli" rev="${commons-cli.version}"
      conf="compile->master;checkstyle->master"/>
    <dependency org="org.apache.avro" name="avro" rev="${avro.version}"
      conf="compile->default;checkstyle->master">
      <exclude org="org.codehaus.jackson" module="jackson-core-asl"/>
      <exclude org="org.codehaus.jackson" module="jackson-mapper-asl"/>
    </dependency>
    <dependency org="org.apache.avro" name="avro-mapred" rev="${avro.version}"
      conf="hadoop2->default;checkstyle->master">
      <artifact name="avro-mapred" type="jar" m:classifier="hadoop2"/>
      <exclude org="org.codehaus.jackson" module="jackson-core-asl"/>
      <exclude org="org.codehaus.jackson" module="jackson-mapper-asl"/>
      <exclude org="io.netty" module="netty"/>
    </dependency>
    <dependency org="org.apache.avro" name="trevni-core" rev="${avro.version}"
      conf="compile->default;checkstyle->master">
      <artifact name="trevni-core" ext="jar" />
      <artifact name="trevni-core" type="test-jar" ext="jar" m:classifier="tests"/>
    </dependency>
    <dependency org="org.apache.avro" name="trevni-avro" rev="${avro.version}"
      conf="compile->default;checkstyle->master">
      <artifact name="trevni-avro" ext="jar" />
      <artifact name="trevni-avro" type="test-jar" ext="jar" m:classifier="tests"/>
      <exclude org="org.apache.hadoop" module="hadoop-core"/>
    </dependency>
    <dependency org="org.apache.avro" name="avro-tools" rev="${avro.version}"
      conf="test->default">
      <artifact name="avro-tools" m:classifier="nodeps" type="jar"/>
    </dependency>
    <dependency org="net.sf.jopt-simple" name="jopt-simple" rev="${jopt.version}"
      conf="test->default" />
    <dependency org="org.xerial.snappy" name="snappy-java" rev="${snappy-java.version}"
      conf="compile->default;checkstyle->master"/>
    <dependency org="com.googlecode.json-simple" name="json-simple" rev="${json-simple.version}"
      conf="compile->master;checkstyle->master"/>
    <dependency org="jdiff" name="jdiff" rev="${jdiff.version}"
      conf="jdiff->default"/>
    <dependency org="xalan" name="xalan" rev="${xalan.version}"
      conf="test->default"/>
    <dependency org="xerces" name="xercesImpl" rev="${xerces.version}"
      conf="jdiff->default;test->default"/>
    <dependency org="jline" name="jline" rev="${jline.version}"
      conf="compile->master"/>
    <dependency org="net.java.dev.javacc" name="javacc" rev="${javacc.version}"
      conf="compile->master"/>
    <dependency org="junit" name="junit" rev="${junit.version}"
      conf="test->master"/>
    <dependency org="com.google.code.p.arat" name="rat-lib" rev="${rats-lib.version}"
      conf="releaseaudit->default"/>
    <dependency org="org.codehaus.groovy" name="groovy-all" rev="${groovy.version}"
      conf="compile->master"/>
    <dependency org="org.apache.ivy" name="ivy" rev="${ivy.version}"
      conf="compile->master"/>
    <dependency org="org.codehaus.jackson" name="jackson-mapper-asl" rev="${jackson.version}"
      conf="compile->master"/>
    <dependency org="org.codehaus.jackson" name="jackson-core-asl" rev="${jackson.version}"
      conf="compile->master"/>
    <dependency org="org.fusesource.jansi" name="jansi" rev="${jansi.version}"
      conf="compile->master"/>
    <dependency org="joda-time" name="joda-time" rev="${joda-time.version}" conf="compile->master"/>
    <dependency org="commons-lang" name="commons-lang" rev="${commons-lang.version}"
      conf="compile->master"/>
    <dependency org="com.google.guava" name="guava" rev="${guava.version}" conf="compile->master" />
    <dependency org="org.python" name="jython-standalone" rev="${jython.version}" conf="compile->master"/>
    <dependency org="rhino" name="js" rev="${rhino.version}" conf="compile->master"/>
    <dependency org="org.antlr" name="antlr" rev="${antlr.version}" conf="compile->master"/>
    <dependency org="org.antlr" name="antlr-runtime" rev="${antlr.version}" conf="compile->default"/>
    <dependency org="org.antlr" name="ST4" rev="${stringtemplate.version}" conf="compile->default"/>
    <dependency org="org.apache.zookeeper" name="zookeeper" rev="${zookeeper.version}" conf="compile->master"/>
    <dependency org="io.netty" name="netty" rev="${netty.version}" conf="test->master"/>
    <dependency org="io.netty" name="netty-all" rev="${netty-all.version}" conf="test->master" />
    <dependency org="dk.brics.automaton" name="automaton" rev="1.11-8" conf="compile->default"/>

    <dependency org="org.jruby" name="jruby-complete" rev="${jruby.version}" conf="compile->master"/>
    <dependency org="asm" name="asm" rev="${asm.version}" conf="compile->default"/>

    <!-- HBase dependency in format for releases higher or equal to 0.95 -->
    <dependency org="org.apache.hbase" name="hbase-client" rev="${hbase1.version}" conf="hbase1->master">
      <artifact name="hbase-client" type="jar"/>
      <artifact name="hbase-client" type="test-jar" ext="jar" m:classifier="tests"/>
      <exclude org="org.slf4j" module="slf4j-api"/>
      <exclude org="org.slf4j" module="slf4j-log4j12" />
      <exclude org="stax" module="stax-api" />
      <exclude org="javax.xml.bind" module="jaxb-api" />
      <exclude org="tomcat" module="jasper-runtime"/>
      <exclude org="tomcat" module="jasper-compiler"/>
      <exclude org="com.google.protobuf" module="protobuf-java"/>
      <exclude org="com.sun.jersey" module="jersey-core"/>
      <exclude org="com.sun.jersey" module="jersey-server"/>
      <exclude org="com.sun.jersey" module="jersey-json"/>
      <exclude org="asm" module="asm"/>
    </dependency>

    <dependency org="org.apache.hbase" name="hbase-common" rev="${hbase1.version}" conf="hbase1->master">
      <artifact name="hbase-common" type="jar"/>
      <artifact name="hbase-common" type="test-jar" ext="jar" m:classifier="tests"/>
      <exclude org="org.apache.hadoop" module="hadoop-core"/>
      <exclude org="stax" module="stax-api" />
      <exclude org="javax.xml.bind" module="jaxb-api" />
      <exclude org="javax.ws.rs" module="jsr311-api" />
      <exclude org="tomcat" module="jasper-runtime"/>
      <exclude org="tomcat" module="jasper-compiler"/>
      <exclude org="com.sun.jersey" module="jersey-core"/>
      <exclude org="com.sun.jersey" module="jersey-server"/>
      <exclude org="com.sun.jersey" module="jersey-json"/>
      <exclude org="asm" module="asm"/>
    </dependency>

    <dependency org="org.apache.hbase" name="hbase-server" rev="${hbase1.version}" conf="hbase1->master">
      <artifact name="hbase-server" type="jar"/>
      <artifact name="hbase-server" type="test-jar" ext="jar" m:classifier="tests"/>
      <exclude org="org.apache.hadoop" module="hadoop-core"/>
      <exclude org="org.slf4j" module="slf4j-api"/>
      <exclude org="org.slf4j" module="slf4j-log4j12" />
      <exclude org="stax" module="stax-api" />
      <exclude org="javax.xml.bind" module="jaxb-api" />
      <exclude org="javax.ws.rs" module="jsr311-api" />
      <exclude org="tomcat" module="jasper-runtime"/>
      <exclude org="tomcat" module="jasper-compiler"/>
      <exclude org="com.sun.jersey" module="jersey-core"/>
      <exclude org="com.sun.jersey" module="jersey-server"/>
      <exclude org="com.sun.jersey" module="jersey-json"/>
      <exclude org="asm" module="asm"/>
    </dependency>

    <dependency org="org.apache.hbase" name="hbase-protocol" rev="${hbase1.version}" conf="hbase1->master">
      <artifact name="hbase-protocol" type="jar"/>
      <artifact name="hbase-protocol" type="test-jar" ext="jar" m:classifier="tests"/>
      <exclude org="com.google.protobuf" module="protobuf-java"/>
    </dependency>

    <dependency org="org.apache.hbase" name="hbase-hadoop-compat" rev="${hbase1.version}" conf="hbase1->master">
      <artifact name="hbase-hadoop-compat" type="jar"/>
      <artifact name="hbase-hadoop-compat" type="test-jar" ext="jar" m:classifier="tests"/>
    </dependency>

    <dependency org="org.apache.hbase" name="hbase-hadoop2-compat" rev="${hbase1.version}" conf="hbase1->master">
      <artifact name="hbase-hadoop2-compat" type="jar"/>
      <artifact name="hbase-hadoop2-compat" type="test-jar" ext="jar" m:classifier="tests"/>
      <exclude org="org.apache.hadoop" module="hadoop-core"/>
      <exclude org="org.slf4j" module="slf4j-api"/>
      <exclude org="stax" module="stax-api" />
      <exclude org="javax.xml.bind" module="jaxb-api" />
      <exclude org="tomcat" module="jasper-runtime"/>
      <exclude org="tomcat" module="jasper-compiler"/>
      <exclude org="com.sun.jersey" module="jersey-core"/>
      <exclude org="com.sun.jersey" module="jersey-server"/>
      <exclude org="com.sun.jersey" module="jersey-json"/>
      <exclude org="asm" module="asm"/>
    </dependency>

    <dependency org="org.htrace" name="htrace-core" rev="3.0.4" conf="hadoop2->master"/>
    <dependency org="org.apache.htrace" name="htrace-core" rev="${htrace.version}" conf="hadoop2->master"/>
    <dependency org="org.fusesource.leveldbjni" name="leveldbjni-all" rev="${leveldbjni.version}"
      conf="hadoop2->master"/>
    <dependency org="org.cloudera.htrace" name="htrace-core" rev="2.00" conf="hbase1->master">
      <artifact name="htrace-core" type="jar"/>
    </dependency>
    <dependency org="com.lmax" name="disruptor" rev="3.3.0" conf="hbase1->master"/>

    <!-- for TestHBaseStorage -->
    <dependency org="org.apache.hbase" name="hbase-procedure" rev="${hbase1.version}" conf="test->master"/>
    <dependency org="com.yammer.metrics" name="metrics-core" rev="${metrics-core.version}"
       conf="test->default"/>

    <!-- Dependency for Accumulo{Input,Output}Format -->
    <dependency org="org.apache.accumulo" name="accumulo-core" rev="${accumulo15.version}" conf="compile->default">
      <exclude org="com.google.guava" module="guava"/>
      <exclude org="commons-codec" module="commons-codec"/>
      <exclude org="commons-collections" module="commons-collections"/>
      <exclude org="commons-configuration" module="commons-configuration"/>
      <exclude org="commons-io" module="commons-io"/>
      <exclude org="commons-lang" module="commons-lang"/>
      <exclude org="commons-logging" module="commons-logging"/>
      <exclude org="jline" module="jline"/>
      <exclude org="log4j" module="log4j"/>
      <exclude org="org.apache.hadoop" module="hadoop-client"/>
      <exclude org="org.apache.zookeeper" module="zookeeper"/>
      <exclude org="org.slf4j" module="slf4j-api"/>
      <exclude org="org.slf4j" module="slf4j-log4j12"/>
    </dependency>

    <!-- Used for 'functional' Accumulo tests -->
    <dependency org="org.apache.accumulo" name="accumulo-minicluster" rev="${accumulo15.version}" conf="compile->default">
      <exclude org="com.google.guava" module="guava"/>
      <exclude org="commons-codec" module="commons-codec"/>
      <exclude org="commons-collections" module="commons-collections"/>
      <exclude org="commons-configuration" module="commons-configuration"/>
      <exclude org="commons-io" module="commons-io"/>
      <exclude org="commons-lang" module="commons-lang"/>
      <exclude org="commons-logging" module="commons-logging"/>
      <exclude org="jline" module="jline"/>
      <exclude org="log4j" module="log4j"/>
      <exclude org="org.apache.hadoop" module="hadoop-client"/>
      <exclude org="org.apache.zookeeper" module="zookeeper"/>
      <exclude org="org.slf4j" module="slf4j-api"/>
      <exclude org="org.slf4j" module="slf4j-log4j12"/>
    </dependency>

    <!-- for piggybank -->
    <dependency org="hsqldb" name="hsqldb" rev="${hsqldb.version}"
      conf="test->default" />
    <dependency org="org.apache.hive" name="hive-exec" rev="${hive.version}" conf="compile->master" changing="true">
      <artifact name="hive-exec" m:classifier="core" />
    </dependency>
    <dependency org="org.apache.hive" name="hive-serde" rev="${hive.version}" changing="true"
      conf="compile->master" />
    <dependency org="org.apache.hive" name="hive-common" rev="${hive.version}" changing="true"
      conf="compile->master" />
    <dependency org="org.apache.hive.shims" name="hive-shims-common" rev="${hive.version}" changing="true"
      conf="compile->master" />
    <dependency org="org.apache.hive" name="hive-contrib" rev="${hive.version}" changing="true"
                conf="test->master" />
    <dependency org="org.apache.hive.shims" name="hive-shims-0.23" rev="${hive.version}" changing="true"
      conf="hadoop2->master" />
    <dependency org="org.iq80.snappy" name="snappy" rev="${snappy.version}"
      conf="test->master" />
    <dependency org="com.esotericsoftware.kryo" name="kryo" rev="${kryo.version}"
      conf="compile->master" />
    <dependency org="org.apache.commons" name="commons-lang3" rev="${commons-lang3.version}"
      conf="compile->master" />

    <dependency org="org.vafer" name="jdeb" rev="${jdeb.version}"
      conf="compile->master">
    </dependency>

    <dependency org="org.mockito" name="mockito-all" rev="${mockito.version}" conf="test->default"/>

    <dependency org="com.twitter" name="parquet-pig-bundle" rev="${parquet-pig-bundle.version}" conf="compile->master"/>

    <!-- for Spark 1.x integration -->
    <dependency org="org.apache.spark" name="spark-core_2.11" rev="${spark1.version}" conf="spark1->default">
        <exclude org="org.eclipse.jetty.orbit" module="javax.servlet"/>
        <exclude org="org.eclipse.jetty.orbit" module="javax.transaction"/>
        <exclude org="org.eclipse.jetty.orbit" module="javax.mail.glassfish"/>
        <exclude org="org.eclipse.jetty.orbit" module="javax.activation"/>
        <exclude org="org.apache.hadoop" />
        <exclude org="com.esotericsoftware.kryo" />
        <exclude org="jline" module="jline"/>
        <exclude org="com.google.guava" />
    </dependency>
    <dependency org="org.apache.spark" name="spark-yarn_2.11" rev="${spark1.version}" conf="spark1->default">
        <exclude org="org.apache.hadoop" />
    </dependency>

    <!-- for Spark 2.x integration -->
    <dependency org="org.apache.spark" name="spark-core_2.11" rev="${spark2.version}" conf="spark2->default">
      <exclude org="org.eclipse.jetty.orbit" module="javax.servlet"/>
      <exclude org="org.eclipse.jetty.orbit" module="javax.transaction"/>
      <exclude org="org.eclipse.jetty.orbit" module="javax.mail.glassfish"/>
      <exclude org="org.eclipse.jetty.orbit" module="javax.activation"/>
      <exclude org="org.apache.hadoop" />
      <exclude org="com.esotericsoftware.kryo" />
      <exclude org="jline" module="jline"/>
      <exclude org="com.google.guava" />
    </dependency>
    <dependency org="org.apache.spark" name="spark-yarn_2.11" rev="${spark2.version}" conf="spark2->default">
      <exclude org="org.apache.hadoop" />
    </dependency>

    <dependency org="asm" name="asm" rev="${asm.version}" conf="compile->master"/>
    <dependency org="javax.servlet" name="javax.servlet-api" rev="3.0.1" conf="spark1->default;spark2->default"/>
    <dependency org="org.scala-lang.modules" name="scala-xml_2.11" rev="${scala-xml.version}" conf="spark1->default;spark2->default"/>

    <!-- for Tez integration -->
    <dependency org="org.apache.tez" name="tez" rev="${tez.version}"
       conf="hadoop2->master"/>
    <dependency org="org.apache.tez" name="tez-common" rev="${tez.version}"
       conf="hadoop2->master"/>
    <dependency org="org.apache.tez" name="tez-api" rev="${tez.version}"
       conf="hadoop2->master"/>
    <dependency org="org.apache.tez" name="tez-dag" rev="${tez.version}"
       conf="hadoop2->master"/>
    <dependency org="org.apache.tez" name="tez-runtime-internals" rev="${tez.version}"
       conf="hadoop2->master"/>
    <dependency org="org.apache.tez" name="tez-runtime-library" rev="${tez.version}"
       conf="hadoop2->master"/>
    <dependency org="org.apache.tez" name="tez-mapreduce" rev="${tez.version}"
       conf="hadoop2->master"/>
    <dependency org="org.apache.tez" name="tez-yarn-timeline-history-with-acls" rev="${tez.version}"
       conf="hadoop2->master"/>
    <dependency org="org.apache.commons" name="commons-collections4" rev="${commons-collections4.version}"
      conf="hadoop2->master"/>
    <dependency org="org.codehaus.jettison" name="jettison" rev="${jettison.version}"
      conf="hadoop2->master"/>
    <dependency org="org.apache.commons" name="commons-math3" rev="${commons-math3.version}"
      conf="hadoop2->master"/>
    <dependency org="org.apache.curator" name="curator-framework" rev="${curator.version}"
      conf="hadoop2->master"/>
    <dependency org="org.apache.curator" name="curator-client" rev="${curator.version}"
      conf="hadoop2->master"/>
  </dependencies>
</ivy-module>

