0001 <?xml version="1.0" encoding="UTF-8"?>
0002 <!--
0003 ~ Licensed to the Apache Software Foundation (ASF) under one or more
0004 ~ contributor license agreements. See the NOTICE file distributed with
0005 ~ this work for additional information regarding copyright ownership.
0006 ~ The ASF licenses this file to You under the Apache License, Version 2.0
0007 ~ (the "License"); you may not use this file except in compliance with
0008 ~ the License. You may obtain a copy of the License at
0009 ~
0010 ~ http://www.apache.org/licenses/LICENSE-2.0
0011 ~
0012 ~ Unless required by applicable law or agreed to in writing, software
0013 ~ distributed under the License is distributed on an "AS IS" BASIS,
0014 ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
0015 ~ See the License for the specific language governing permissions and
0016 ~ limitations under the License.
0017 -->
0018
0019 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
0020 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
0021 <modelVersion>4.0.0</modelVersion>
0022 <parent>
0023 <groupId>org.apache</groupId>
0024 <artifactId>apache</artifactId>
0025 <version>18</version>
0026 </parent>
0027 <groupId>org.apache.spark</groupId>
0028 <artifactId>spark-parent_2.12</artifactId>
0029 <version>3.0.0</version>
0030 <packaging>pom</packaging>
0031 <name>Spark Project Parent POM</name>
0032 <url>http://spark.apache.org/</url>
0033 <licenses>
0034 <license>
0035 <name>Apache 2.0 License</name>
0036 <url>http://www.apache.org/licenses/LICENSE-2.0.html</url>
0037 <distribution>repo</distribution>
0038 </license>
0039 </licenses>
0040 <scm>
0041 <connection>scm:git:git@github.com:apache/spark.git</connection>
0042 <developerConnection>scm:git:https://gitbox.apache.org/repos/asf/spark.git</developerConnection>
0043 <url>scm:git:git@github.com:apache/spark.git</url>
0044 <tag>HEAD</tag>
0045 </scm>
0046 <developers>
0047 <developer>
0048 <id>matei</id>
0049 <name>Matei Zaharia</name>
0050 <email>matei.zaharia@gmail.com</email>
0051 <url>http://www.cs.berkeley.edu/~matei</url>
0052 <organization>Apache Software Foundation</organization>
0053 <organizationUrl>http://spark.apache.org</organizationUrl>
0054 </developer>
0055 </developers>
0056 <issueManagement>
0057 <system>JIRA</system>
0058 <url>https://issues.apache.org/jira/browse/SPARK</url>
0059 </issueManagement>
0060
0061 <mailingLists>
0062 <mailingList>
0063 <name>Dev Mailing List</name>
0064 <post>dev@spark.apache.org</post>
0065 <subscribe>dev-subscribe@spark.apache.org</subscribe>
0066 <unsubscribe>dev-unsubscribe@spark.apache.org</unsubscribe>
0067 </mailingList>
0068
0069 <mailingList>
0070 <name>User Mailing List</name>
0071 <post>user@spark.apache.org</post>
0072 <subscribe>user-subscribe@spark.apache.org</subscribe>
0073 <unsubscribe>user-unsubscribe@spark.apache.org</unsubscribe>
0074 </mailingList>
0075
0076 <mailingList>
0077 <name>Commits Mailing List</name>
0078 <post>commits@spark.apache.org</post>
0079 <subscribe>commits-subscribe@spark.apache.org</subscribe>
0080 <unsubscribe>commits-unsubscribe@spark.apache.org</unsubscribe>
0081 </mailingList>
0082 </mailingLists>
0083
0084 <modules>
0085 <module>common/sketch</module>
0086 <module>common/kvstore</module>
0087 <module>common/network-common</module>
0088 <module>common/network-shuffle</module>
0089 <module>common/unsafe</module>
0090 <module>common/tags</module>
0091 <module>core</module>
0092 <module>graphx</module>
0093 <module>mllib</module>
0094 <module>mllib-local</module>
0095 <module>tools</module>
0096 <module>streaming</module>
0097 <module>sql/catalyst</module>
0098 <module>sql/core</module>
0099 <module>sql/hive</module>
0100 <module>assembly</module>
0101 <module>examples</module>
0102 <module>repl</module>
0103 <module>launcher</module>
0104 <module>external/kafka-0-10-token-provider</module>
0105 <module>external/kafka-0-10</module>
0106 <module>external/kafka-0-10-assembly</module>
0107 <module>external/kafka-0-10-sql</module>
0108 <module>external/avro</module>
0109 <!-- See additional modules enabled by profiles below -->
0110 </modules>
0111
0112 <properties>
0113 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
0114 <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
0115 <java.version>1.8</java.version>
0116 <maven.compiler.source>${java.version}</maven.compiler.source>
0117 <maven.compiler.target>${java.version}</maven.compiler.target>
0118 <maven.version>3.6.3</maven.version>
0119 <sbt.project.name>spark</sbt.project.name>
0120 <slf4j.version>1.7.30</slf4j.version>
0121 <log4j.version>1.2.17</log4j.version>
0122 <hadoop.version>2.7.4</hadoop.version>
0123 <protobuf.version>2.5.0</protobuf.version>
0124 <yarn.version>${hadoop.version}</yarn.version>
0125 <zookeeper.version>3.4.14</zookeeper.version>
0126 <curator.version>2.7.1</curator.version>
0127 <hive.group>org.apache.hive</hive.group>
0128 <hive.classifier>core</hive.classifier>
0129 <!-- Version used in Maven Hive dependency -->
0130 <hive.version>2.3.7</hive.version>
0131 <hive23.version>2.3.7</hive23.version>
0132 <!-- Version used for internal directory structure -->
0133 <hive.version.short>2.3</hive.version.short>
0134 <!-- note that this should be compatible with Kafka brokers version 0.10 and up -->
0135 <kafka.version>2.4.1</kafka.version>
0136 <derby.version>10.12.1.1</derby.version>
0137 <parquet.version>1.10.1</parquet.version>
0138 <orc.version>1.5.10</orc.version>
0139 <orc.classifier></orc.classifier>
0140 <hive.parquet.group>com.twitter</hive.parquet.group>
0141 <hive.parquet.version>1.6.0</hive.parquet.version>
0142 <jetty.version>9.4.18.v20190429</jetty.version>
0143 <javaxservlet.version>3.1.0</javaxservlet.version>
0144 <chill.version>0.9.5</chill.version>
0145 <ivy.version>2.4.0</ivy.version>
0146 <oro.version>2.0.8</oro.version>
0147 <codahale.metrics.version>4.1.1</codahale.metrics.version>
0148 <avro.version>1.8.2</avro.version>
0149 <avro.mapred.classifier>hadoop2</avro.mapred.classifier>
0150 <aws.kinesis.client.version>1.12.0</aws.kinesis.client.version>
0151 <!-- Should be consistent with Kinesis client dependency -->
0152 <aws.java.sdk.version>1.11.655</aws.java.sdk.version>
0153 <!-- the producer is used in tests -->
0154 <aws.kinesis.producer.version>0.12.8</aws.kinesis.producer.version>
0155 <!-- org.apache.httpcomponents/httpclient-->
0156 <commons.httpclient.version>4.5.6</commons.httpclient.version>
0157 <commons.httpcore.version>4.4.12</commons.httpcore.version>
0158 <!-- commons-httpclient/commons-httpclient-->
0159 <httpclient.classic.version>3.1</httpclient.classic.version>
0160 <commons.math3.version>3.4.1</commons.math3.version>
0161 <!-- managed up from 3.2.1 for SPARK-11652 -->
0162 <commons.collections.version>3.2.2</commons.collections.version>
0163 <scala.version>2.12.10</scala.version>
0164 <scala.binary.version>2.12</scala.binary.version>
0165 <scalafmt.parameters>--test</scalafmt.parameters>
0166 <!-- for now, not running scalafmt as part of default verify pipeline -->
0167 <scalafmt.skip>true</scalafmt.skip>
0168 <codehaus.jackson.version>1.9.13</codehaus.jackson.version>
0169 <fasterxml.jackson.version>2.10.0</fasterxml.jackson.version>
0170 <snappy.version>1.1.7.5</snappy.version>
0171 <netlib.java.version>1.1.2</netlib.java.version>
0172 <commons-codec.version>1.10</commons-codec.version>
0173 <commons-io.version>2.4</commons-io.version>
0174 <!-- org.apache.commons/commons-lang/-->
0175 <commons-lang2.version>2.6</commons-lang2.version>
0176 <!-- org.apache.commons/commons-lang3/-->
0177 <commons-lang3.version>3.9</commons-lang3.version>
0178 <!-- org.apache.commons/commons-pool2/-->
0179 <commons-pool2.version>2.6.2</commons-pool2.version>
0180 <datanucleus-core.version>4.1.17</datanucleus-core.version>
0181 <guava.version>14.0.1</guava.version>
0182 <janino.version>3.0.16</janino.version>
0183 <jersey.version>2.30</jersey.version>
0184 <joda.version>2.10.5</joda.version>
0185 <jodd.version>3.5.2</jodd.version>
0186 <jsr305.version>3.0.0</jsr305.version>
0187 <libthrift.version>0.12.0</libthrift.version>
0188 <antlr4.version>4.7.1</antlr4.version>
0189 <jpam.version>1.1</jpam.version>
0190 <selenium.version>2.52.0</selenium.version>
0191 <htmlunit.version>2.22</htmlunit.version>
0192 <!--
0193 Managed up from older version from Avro; sync with jackson-module-paranamer dependency version
0194 -->
0195 <paranamer.version>2.8</paranamer.version>
0196 <maven-antrun.version>1.8</maven-antrun.version>
0197 <commons-crypto.version>1.0.0</commons-crypto.version>
0198 <!--
0199 If you are changing Arrow version specification, please check ./python/pyspark/sql/utils.py,
0200 and ./python/setup.py too.
0201 -->
0202 <arrow.version>0.15.1</arrow.version>
0203 <!-- org.fusesource.leveldbjni will be used except on arm64 platform. -->
0204 <leveldbjni.group>org.fusesource.leveldbjni</leveldbjni.group>
0205
0206 <test.java.home>${java.home}</test.java.home>
0207
0208 <!-- Some UI tests require Chrome and Chrome driver installed so those tests are disabled by default. -->
0209 <test.default.exclude.tags>org.apache.spark.tags.ChromeUITest</test.default.exclude.tags>
0210 <test.exclude.tags></test.exclude.tags>
0211 <test.include.tags></test.include.tags>
0212
0213 <!-- Package to use when relocating shaded classes. -->
0214 <spark.shade.packageName>org.sparkproject</spark.shade.packageName>
0215
0216 <!-- Modules that copy jars to the build directory should do so under this location. -->
0217 <jars.target.dir>${project.build.directory}/scala-${scala.binary.version}/jars</jars.target.dir>
0218
0219 <!-- Allow modules to enable / disable certain build plugins easily. -->
0220 <build.testJarPhase>prepare-package</build.testJarPhase>
0221 <build.copyDependenciesPhase>none</build.copyDependenciesPhase>
0222
0223 <!--
0224 Dependency scopes that can be overridden by enabling certain profiles. These profiles are
0225 declared in the projects that build assemblies.
0226
0227 For other projects the scope should remain as "compile", otherwise they are not available
0228 during compilation if the dependency is transivite (e.g. "graphx/" depending on "core/" and
0229 needing Hadoop classes in the classpath to compile).
0230 -->
0231 <hadoop.deps.scope>compile</hadoop.deps.scope>
0232 <hive.deps.scope>compile</hive.deps.scope>
0233 <hive.parquet.scope>provided</hive.parquet.scope>
0234 <hive.storage.version>2.7.1</hive.storage.version>
0235 <hive.storage.scope>compile</hive.storage.scope>
0236 <hive.common.scope>compile</hive.common.scope>
0237 <hive.llap.scope>compile</hive.llap.scope>
0238 <hive.serde.scope>compile</hive.serde.scope>
0239 <hive.shims.scope>compile</hive.shims.scope>
0240 <orc.deps.scope>compile</orc.deps.scope>
0241 <parquet.deps.scope>compile</parquet.deps.scope>
0242 <parquet.test.deps.scope>test</parquet.test.deps.scope>
0243
0244 <!--
0245 Overridable test home. So that you can call individual pom files directly without
0246 things breaking.
0247 -->
0248 <spark.test.home>${session.executionRootDirectory}</spark.test.home>
0249 <spark.test.webdriver.chrome.driver></spark.test.webdriver.chrome.driver>
0250
0251 <CodeCacheSize>1g</CodeCacheSize>
0252 </properties>
0253 <repositories>
0254 <repository>
0255 <id>gcs-maven-central-mirror</id>
0256 <!--
0257 Google Mirror of Maven Central, placed first so that it's used instead of flaky Maven Central.
0258 See https://storage-download.googleapis.com/maven-central/index.html
0259 -->
0260 <name>GCS Maven Central mirror</name>
0261 <url>https://maven-central.storage-download.googleapis.com/maven2/</url>
0262 <releases>
0263 <enabled>true</enabled>
0264 </releases>
0265 <snapshots>
0266 <enabled>false</enabled>
0267 </snapshots>
0268 </repository>
0269 <repository>
0270 <!--
0271 This is used as a fallback when the first try fails.
0272 -->
0273 <id>central</id>
0274 <name>Maven Repository</name>
0275 <url>https://repo.maven.apache.org/maven2</url>
0276 <releases>
0277 <enabled>true</enabled>
0278 </releases>
0279 <snapshots>
0280 <enabled>false</enabled>
0281 </snapshots>
0282 </repository>
0283 </repositories>
0284 <pluginRepositories>
0285 <pluginRepository>
0286 <id>gcs-maven-central-mirror</id>
0287 <!--
0288 Google Mirror of Maven Central, placed first so that it's used instead of flaky Maven Central.
0289 See https://storage-download.googleapis.com/maven-central/index.html
0290 -->
0291 <name>GCS Maven Central mirror</name>
0292 <url>https://maven-central.storage-download.googleapis.com/maven2/</url>
0293 <releases>
0294 <enabled>true</enabled>
0295 </releases>
0296 <snapshots>
0297 <enabled>false</enabled>
0298 </snapshots>
0299 </pluginRepository>
0300 <pluginRepository>
0301 <id>central</id>
0302 <url>https://repo.maven.apache.org/maven2</url>
0303 <releases>
0304 <enabled>true</enabled>
0305 </releases>
0306 <snapshots>
0307 <enabled>false</enabled>
0308 </snapshots>
0309 </pluginRepository>
0310 </pluginRepositories>
0311 <dependencies>
0312 <!--
0313 This is a dummy dependency that is used to trigger the maven-shade plugin so that Spark's
0314 published POMs are flattened and do not contain variables. Without this dependency, some
0315 subprojects' published POMs would contain variables like ${scala.binary.version} that will
0316 be substituted according to the default properties instead of the ones determined by the
0317 profiles that were active during publishing, causing the Scala 2.10 build's POMs to have 2.11
0318 dependencies due to the incorrect substitutions. By ensuring that maven-shade runs for all
0319 subprojects, we eliminate this problem because the substitutions are baked into the final POM.
0320
0321 For more details, see SPARK-3812 and MNG-2971.
0322 -->
0323 <dependency>
0324 <groupId>org.spark-project.spark</groupId>
0325 <artifactId>unused</artifactId>
0326 <version>1.0.0</version>
0327 </dependency>
0328 <!--
0329 This is needed by the scalatest plugin, and so is declared here to be available in
0330 all child modules, just as scalatest is run in all children
0331 -->
0332 <dependency>
0333 <groupId>org.scalatest</groupId>
0334 <artifactId>scalatest_${scala.binary.version}</artifactId>
0335 <scope>test</scope>
0336 </dependency>
0337 <dependency>
0338 <groupId>junit</groupId>
0339 <artifactId>junit</artifactId>
0340 <scope>test</scope>
0341 </dependency>
0342 <dependency>
0343 <groupId>com.novocode</groupId>
0344 <artifactId>junit-interface</artifactId>
0345 <scope>test</scope>
0346 </dependency>
0347 </dependencies>
0348 <dependencyManagement>
0349 <dependencies>
0350 <dependency>
0351 <groupId>org.apache.spark</groupId>
0352 <artifactId>spark-tags_${scala.binary.version}</artifactId>
0353 <version>${project.version}</version>
0354 </dependency>
0355 <dependency>
0356 <groupId>org.apache.spark</groupId>
0357 <artifactId>spark-tags_${scala.binary.version}</artifactId>
0358 <version>${project.version}</version>
0359 <type>test-jar</type>
0360 </dependency>
0361 <dependency>
0362 <groupId>com.twitter</groupId>
0363 <artifactId>chill_${scala.binary.version}</artifactId>
0364 <version>${chill.version}</version>
0365 </dependency>
0366 <dependency>
0367 <groupId>com.twitter</groupId>
0368 <artifactId>chill-java</artifactId>
0369 <version>${chill.version}</version>
0370 </dependency>
0371 <!-- This artifact is a shaded version of ASM 7.x. The POM that was used to produce this
0372 is at https://github.com/apache/geronimo-xbean/tree/trunk/xbean-asm7-shaded
0373 For context on why we shade ASM, see SPARK-782 and SPARK-6152. -->
0374 <dependency>
0375 <groupId>org.apache.xbean</groupId>
0376 <artifactId>xbean-asm7-shaded</artifactId>
0377 <version>4.15</version>
0378 </dependency>
0379
0380 <!-- Shaded deps marked as provided. These are promoted to compile scope
0381 in the modules where we want the shaded classes to appear in the
0382 associated jar. -->
0383 <dependency>
0384 <groupId>org.eclipse.jetty</groupId>
0385 <artifactId>jetty-http</artifactId>
0386 <version>${jetty.version}</version>
0387 <scope>provided</scope>
0388 </dependency>
0389 <dependency>
0390 <groupId>org.eclipse.jetty</groupId>
0391 <artifactId>jetty-continuation</artifactId>
0392 <version>${jetty.version}</version>
0393 <scope>provided</scope>
0394 </dependency>
0395 <dependency>
0396 <groupId>org.eclipse.jetty</groupId>
0397 <artifactId>jetty-servlet</artifactId>
0398 <version>${jetty.version}</version>
0399 <scope>provided</scope>
0400 </dependency>
0401 <dependency>
0402 <groupId>org.eclipse.jetty</groupId>
0403 <artifactId>jetty-servlets</artifactId>
0404 <version>${jetty.version}</version>
0405 <scope>provided</scope>
0406 </dependency>
0407 <dependency>
0408 <groupId>org.eclipse.jetty</groupId>
0409 <artifactId>jetty-proxy</artifactId>
0410 <version>${jetty.version}</version>
0411 <scope>provided</scope>
0412 </dependency>
0413 <dependency>
0414 <groupId>org.eclipse.jetty</groupId>
0415 <artifactId>jetty-client</artifactId>
0416 <version>${jetty.version}</version>
0417 <scope>provided</scope>
0418 </dependency>
0419 <dependency>
0420 <groupId>org.eclipse.jetty</groupId>
0421 <artifactId>jetty-util</artifactId>
0422 <version>${jetty.version}</version>
0423 <scope>provided</scope>
0424 </dependency>
0425 <dependency>
0426 <groupId>org.eclipse.jetty</groupId>
0427 <artifactId>jetty-security</artifactId>
0428 <version>${jetty.version}</version>
0429 <scope>provided</scope>
0430 </dependency>
0431 <dependency>
0432 <groupId>org.eclipse.jetty</groupId>
0433 <artifactId>jetty-plus</artifactId>
0434 <version>${jetty.version}</version>
0435 <scope>provided</scope>
0436 </dependency>
0437 <dependency>
0438 <groupId>org.eclipse.jetty</groupId>
0439 <artifactId>jetty-server</artifactId>
0440 <version>${jetty.version}</version>
0441 <scope>provided</scope>
0442 </dependency>
0443 <dependency>
0444 <groupId>org.eclipse.jetty</groupId>
0445 <artifactId>jetty-webapp</artifactId>
0446 <version>${jetty.version}</version>
0447 <scope>provided</scope>
0448 </dependency>
0449 <dependency>
0450 <groupId>com.google.guava</groupId>
0451 <artifactId>guava</artifactId>
0452 <version>${guava.version}</version>
0453 <scope>provided</scope>
0454 </dependency>
0455 <dependency>
0456 <groupId>org.jpmml</groupId>
0457 <artifactId>pmml-model</artifactId>
0458 <version>1.4.8</version>
0459 <scope>provided</scope>
0460 <exclusions>
0461 <exclusion>
0462 <groupId>org.jpmml</groupId>
0463 <artifactId>pmml-agent</artifactId>
0464 </exclusion>
0465 </exclusions>
0466 </dependency>
0467 <!-- End of shaded deps -->
0468
0469 <!-- Provide a JAXB impl; no longer auto available in Java 9+ in the JDK -->
0470 <dependency>
0471 <groupId>org.glassfish.jaxb</groupId>
0472 <artifactId>jaxb-runtime</artifactId>
0473 <version>2.3.2</version>
0474 <scope>compile</scope>
0475 <exclusions>
0476 <!-- for now, we only write XML in PMML export, and these can be excluded -->
0477 <exclusion>
0478 <groupId>com.sun.xml.fastinfoset</groupId>
0479 <artifactId>FastInfoset</artifactId>
0480 </exclusion>
0481 <exclusion>
0482 <groupId>org.glassfish.jaxb</groupId>
0483 <artifactId>txw2</artifactId>
0484 </exclusion>
0485 <exclusion>
0486 <groupId>org.jvnet.staxex</groupId>
0487 <artifactId>stax-ex</artifactId>
0488 </exclusion>
0489 <!--
0490 SPARK-27611: Exclude redundant javax.activation implementation, which
0491 conflicts with the existing javax.activation:activation:1.1.1 dependency.
0492 -->
0493 <exclusion>
0494 <groupId>jakarta.activation</groupId>
0495 <artifactId>jakarta.activation-api</artifactId>
0496 </exclusion>
0497 </exclusions>
0498 </dependency>
0499 <dependency>
0500 <groupId>org.apache.commons</groupId>
0501 <artifactId>commons-lang3</artifactId>
0502 <version>${commons-lang3.version}</version>
0503 </dependency>
0504 <dependency>
0505 <groupId>org.apache.commons</groupId>
0506 <artifactId>commons-text</artifactId>
0507 <version>1.6</version>
0508 </dependency>
0509 <dependency>
0510 <groupId>commons-lang</groupId>
0511 <artifactId>commons-lang</artifactId>
0512 <version>${commons-lang2.version}</version>
0513 </dependency>
0514 <dependency>
0515 <groupId>commons-io</groupId>
0516 <artifactId>commons-io</artifactId>
0517 <version>${commons-io.version}</version>
0518 </dependency>
0519 <dependency>
0520 <groupId>commons-codec</groupId>
0521 <artifactId>commons-codec</artifactId>
0522 <version>${commons-codec.version}</version>
0523 </dependency>
0524 <dependency>
0525 <groupId>org.apache.commons</groupId>
0526 <artifactId>commons-math3</artifactId>
0527 <version>${commons.math3.version}</version>
0528 </dependency>
0529 <dependency>
0530 <groupId>commons-collections</groupId>
0531 <artifactId>commons-collections</artifactId>
0532 <version>${commons.collections.version}</version>
0533 </dependency>
0534 <dependency>
0535 <groupId>commons-beanutils</groupId>
0536 <artifactId>commons-beanutils</artifactId>
0537 <version>1.9.4</version>
0538 </dependency>
0539 <dependency>
0540 <groupId>commons-logging</groupId>
0541 <artifactId>commons-logging</artifactId>
0542 <!-- Hive uses commons-logging 1.1.3 from 0.13 to 1.2 -->
0543 <version>1.1.3</version>
0544 </dependency>
0545 <dependency>
0546 <groupId>org.apache.ivy</groupId>
0547 <artifactId>ivy</artifactId>
0548 <version>${ivy.version}</version>
0549 </dependency>
0550 <dependency>
0551 <groupId>com.google.code.findbugs</groupId>
0552 <artifactId>jsr305</artifactId>
0553 <version>${jsr305.version}</version>
0554 </dependency>
0555 <dependency>
0556 <groupId>commons-httpclient</groupId>
0557 <artifactId>commons-httpclient</artifactId>
0558 <version>${httpclient.classic.version}</version>
0559 </dependency>
0560 <dependency>
0561 <groupId>org.apache.httpcomponents</groupId>
0562 <artifactId>httpclient</artifactId>
0563 <version>${commons.httpclient.version}</version>
0564 </dependency>
0565 <dependency>
0566 <groupId>org.apache.httpcomponents</groupId>
0567 <artifactId>httpmime</artifactId>
0568 <version>${commons.httpclient.version}</version>
0569 </dependency>
0570 <dependency>
0571 <groupId>org.apache.httpcomponents</groupId>
0572 <artifactId>httpcore</artifactId>
0573 <version>${commons.httpcore.version}</version>
0574 </dependency>
0575 <dependency>
0576 <groupId>${leveldbjni.group}</groupId>
0577 <artifactId>leveldbjni-all</artifactId>
0578 <version>1.8</version>
0579 </dependency>
0580 <dependency>
0581 <groupId>org.seleniumhq.selenium</groupId>
0582 <artifactId>selenium-java</artifactId>
0583 <version>${selenium.version}</version>
0584 <scope>test</scope>
0585 <exclusions>
0586 <exclusion>
0587 <groupId>com.google.guava</groupId>
0588 <artifactId>guava</artifactId>
0589 </exclusion>
0590 <exclusion>
0591 <groupId>io.netty</groupId>
0592 <artifactId>netty</artifactId>
0593 </exclusion>
0594 </exclusions>
0595 </dependency>
0596 <dependency>
0597 <groupId>org.seleniumhq.selenium</groupId>
0598 <artifactId>selenium-htmlunit-driver</artifactId>
0599 <version>${selenium.version}</version>
0600 <scope>test</scope>
0601 </dependency>
0602 <!-- Update htmlunit dependency that selenium uses for better JS support -->
0603 <dependency>
0604 <groupId>net.sourceforge.htmlunit</groupId>
0605 <artifactId>htmlunit</artifactId>
0606 <version>${htmlunit.version}</version>
0607 <scope>test</scope>
0608 </dependency>
0609 <dependency>
0610 <groupId>net.sourceforge.htmlunit</groupId>
0611 <artifactId>htmlunit-core-js</artifactId>
0612 <version>${htmlunit.version}</version>
0613 <scope>test</scope>
0614 </dependency>
0615 <!-- Added for selenium only, and should match its dependent version: -->
0616 <dependency>
0617 <groupId>xml-apis</groupId>
0618 <artifactId>xml-apis</artifactId>
0619 <version>1.4.01</version>
0620 </dependency>
0621 <dependency>
0622 <groupId>org.slf4j</groupId>
0623 <artifactId>slf4j-api</artifactId>
0624 <version>${slf4j.version}</version>
0625 <scope>${hadoop.deps.scope}</scope>
0626 </dependency>
0627 <dependency>
0628 <groupId>org.slf4j</groupId>
0629 <artifactId>slf4j-log4j12</artifactId>
0630 <version>${slf4j.version}</version>
0631 <scope>${hadoop.deps.scope}</scope>
0632 </dependency>
0633 <dependency>
0634 <groupId>org.slf4j</groupId>
0635 <artifactId>jul-to-slf4j</artifactId>
0636 <version>${slf4j.version}</version>
0637 </dependency>
0638 <dependency>
0639 <groupId>org.slf4j</groupId>
0640 <artifactId>jcl-over-slf4j</artifactId>
0641 <version>${slf4j.version}</version>
0642 <!-- runtime scope is appropriate, but causes SBT build problems -->
0643 </dependency>
0644 <dependency>
0645 <groupId>log4j</groupId>
0646 <artifactId>log4j</artifactId>
0647 <version>${log4j.version}</version>
0648 <scope>${hadoop.deps.scope}</scope>
0649 </dependency>
0650 <dependency>
0651 <groupId>com.ning</groupId>
0652 <artifactId>compress-lzf</artifactId>
0653 <version>1.0.3</version>
0654 </dependency>
0655 <dependency>
0656 <groupId>org.xerial.snappy</groupId>
0657 <artifactId>snappy-java</artifactId>
0658 <version>${snappy.version}</version>
0659 </dependency>
0660 <dependency>
0661 <groupId>org.lz4</groupId>
0662 <artifactId>lz4-java</artifactId>
0663 <version>1.7.1</version>
0664 </dependency>
0665 <dependency>
0666 <groupId>com.github.luben</groupId>
0667 <artifactId>zstd-jni</artifactId>
0668 <version>1.4.4-3</version>
0669 </dependency>
0670 <dependency>
0671 <groupId>com.clearspring.analytics</groupId>
0672 <artifactId>stream</artifactId>
0673 <version>2.9.6</version>
0674 <exclusions>
0675 <!-- Only HyperLogLogPlus is used, which doesn't depend on fastutil -->
0676 <exclusion>
0677 <groupId>it.unimi.dsi</groupId>
0678 <artifactId>fastutil</artifactId>
0679 </exclusion>
0680 </exclusions>
0681 </dependency>
0682 <!-- In theory we need not directly depend on protobuf since Spark does not directly
0683 use it. However, when building with Hadoop/YARN 2.2 Maven doesn't correctly bump
0684 the protobuf version up from the one Mesos gives. For now we include this variable
0685 to explicitly bump the version when building with YARN. It would be nice to figure
0686 out why Maven can't resolve this correctly (like SBT does). -->
0687 <dependency>
0688 <groupId>com.google.protobuf</groupId>
0689 <artifactId>protobuf-java</artifactId>
0690 <version>${protobuf.version}</version>
0691 <scope>${hadoop.deps.scope}</scope>
0692 </dependency>
0693 <dependency>
0694 <groupId>org.roaringbitmap</groupId>
0695 <artifactId>RoaringBitmap</artifactId>
0696 <version>0.7.45</version>
0697 </dependency>
0698 <dependency>
0699 <groupId>commons-net</groupId>
0700 <artifactId>commons-net</artifactId>
0701 <version>3.1</version>
0702 </dependency>
0703 <dependency>
0704 <groupId>io.netty</groupId>
0705 <artifactId>netty-all</artifactId>
0706 <version>4.1.47.Final</version>
0707 </dependency>
0708 <dependency>
0709 <groupId>org.apache.derby</groupId>
0710 <artifactId>derby</artifactId>
0711 <version>${derby.version}</version>
0712 </dependency>
0713 <dependency>
0714 <groupId>io.dropwizard.metrics</groupId>
0715 <artifactId>metrics-core</artifactId>
0716 <version>${codahale.metrics.version}</version>
0717 </dependency>
0718 <dependency>
0719 <groupId>io.dropwizard.metrics</groupId>
0720 <artifactId>metrics-jvm</artifactId>
0721 <version>${codahale.metrics.version}</version>
0722 </dependency>
0723 <dependency>
0724 <groupId>io.dropwizard.metrics</groupId>
0725 <artifactId>metrics-json</artifactId>
0726 <version>${codahale.metrics.version}</version>
0727 </dependency>
0728 <dependency>
0729 <groupId>io.dropwizard.metrics</groupId>
0730 <artifactId>metrics-graphite</artifactId>
0731 <version>${codahale.metrics.version}</version>
0732 </dependency>
0733 <dependency>
0734 <groupId>io.dropwizard.metrics</groupId>
0735 <artifactId>metrics-jmx</artifactId>
0736 <version>${codahale.metrics.version}</version>
0737 </dependency>
0738 <dependency>
0739 <groupId>com.fasterxml.jackson.core</groupId>
0740 <artifactId>jackson-core</artifactId>
0741 <version>${fasterxml.jackson.version}</version>
0742 </dependency>
0743 <dependency>
0744 <groupId>com.fasterxml.jackson.core</groupId>
0745 <artifactId>jackson-databind</artifactId>
0746 <version>${fasterxml.jackson.version}</version>
0747 </dependency>
0748 <dependency>
0749 <groupId>com.fasterxml.jackson.core</groupId>
0750 <artifactId>jackson-annotations</artifactId>
0751 <version>${fasterxml.jackson.version}</version>
0752 </dependency>
0753 <!-- Guava is excluded because of SPARK-6149. The Guava version referenced in this module is
0754 15.0, which causes runtime incompatibility issues. -->
0755 <dependency>
0756 <groupId>com.fasterxml.jackson.module</groupId>
0757 <artifactId>jackson-module-scala_${scala.binary.version}</artifactId>
0758 <version>${fasterxml.jackson.version}</version>
0759 <exclusions>
0760 <exclusion>
0761 <groupId>com.google.guava</groupId>
0762 <artifactId>guava</artifactId>
0763 </exclusion>
0764 </exclusions>
0765 </dependency>
0766 <dependency>
0767 <groupId>com.fasterxml.jackson.module</groupId>
0768 <artifactId>jackson-module-jaxb-annotations</artifactId>
0769 <version>${fasterxml.jackson.version}</version>
0770 </dependency>
0771 <dependency>
0772 <groupId>org.glassfish.jersey.core</groupId>
0773 <artifactId>jersey-server</artifactId>
0774 <version>${jersey.version}</version>
0775 <!-- SPARK-28765 Unused JDK11-specific dependency -->
0776 <exclusions>
0777 <exclusion>
0778 <groupId>jakarta.xml.bind</groupId>
0779 <artifactId>jakarta.xml.bind-api</artifactId>
0780 </exclusion>
0781 </exclusions>
0782 </dependency>
0783 <dependency>
0784 <groupId>org.glassfish.jersey.core</groupId>
0785 <artifactId>jersey-common</artifactId>
0786 <version>${jersey.version}</version>
0787 <!-- SPARK-28765 Unused JDK11-specific dependency -->
0788 <exclusions>
0789 <exclusion>
0790 <groupId>com.sun.activation</groupId>
0791 <artifactId>jakarta.activation</artifactId>
0792 </exclusion>
0793 </exclusions>
0794 </dependency>
0795 <dependency>
0796 <groupId>org.glassfish.jersey.core</groupId>
0797 <artifactId>jersey-client</artifactId>
0798 <version>${jersey.version}</version>
0799 </dependency>
0800 <dependency>
0801 <groupId>org.glassfish.jersey.containers</groupId>
0802 <artifactId>jersey-container-servlet</artifactId>
0803 <version>${jersey.version}</version>
0804 </dependency>
0805 <dependency>
0806 <groupId>org.glassfish.jersey.containers</groupId>
0807 <artifactId>jersey-container-servlet-core</artifactId>
0808 <version>${jersey.version}</version>
0809 </dependency>
0810 <dependency>
0811 <groupId>org.glassfish.jersey.inject</groupId>
0812 <artifactId>jersey-hk2</artifactId>
0813 <version>${jersey.version}</version>
0814 </dependency>
0815 <dependency>
0816 <groupId>org.glassfish.jersey.test-framework.providers</groupId>
0817 <artifactId>jersey-test-framework-provider-simple</artifactId>
0818 <version>${jersey.version}</version>
0819 <scope>test</scope>
0820 </dependency>
0821 <dependency>
0822 <groupId>org.glassfish.jersey</groupId>
0823 <artifactId>jersey-client</artifactId>
0824 <version>${jersey.version}</version>
0825 </dependency>
0826 <dependency>
0827 <groupId>javax.ws.rs</groupId>
0828 <artifactId>javax.ws.rs-api</artifactId>
0829 <version>2.0.1</version>
0830 </dependency>
0831 <dependency>
0832 <groupId>org.scalanlp</groupId>
0833 <artifactId>breeze_${scala.binary.version}</artifactId>
0834 <version>1.0</version>
0835 <exclusions>
0836 <exclusion>
0837 <groupId>org.apache.commons</groupId>
0838 <artifactId>commons-math3</artifactId>
0839 </exclusion>
0840 </exclusions>
0841 </dependency>
0842 <dependency>
0843 <groupId>org.json4s</groupId>
0844 <artifactId>json4s-jackson_${scala.binary.version}</artifactId>
0845 <version>3.6.6</version>
0846 <exclusions>
0847 <exclusion>
0848 <groupId>com.fasterxml.jackson.core</groupId>
0849 <artifactId>*</artifactId>
0850 </exclusion>
0851 </exclusions>
0852 </dependency>
0853 <dependency>
0854 <groupId>org.scala-lang.modules</groupId>
0855 <artifactId>scala-xml_${scala.binary.version}</artifactId>
0856 <version>1.2.0</version>
0857 </dependency>
0858 <dependency>
0859 <groupId>org.scala-lang</groupId>
0860 <artifactId>scala-compiler</artifactId>
0861 <version>${scala.version}</version>
0862 </dependency>
0863 <dependency>
0864 <groupId>org.scala-lang</groupId>
0865 <artifactId>scala-reflect</artifactId>
0866 <version>${scala.version}</version>
0867 </dependency>
0868 <dependency>
0869 <groupId>org.scala-lang</groupId>
0870 <artifactId>scala-library</artifactId>
0871 <version>${scala.version}</version>
0872 </dependency>
0873 <dependency>
0874 <groupId>org.scala-lang</groupId>
0875 <artifactId>scala-actors</artifactId>
0876 <version>${scala.version}</version>
0877 </dependency>
0878 <dependency>
0879 <groupId>org.scala-lang.modules</groupId>
0880 <artifactId>scala-parser-combinators_${scala.binary.version}</artifactId>
0881 <version>1.1.2</version>
0882 </dependency>
0883 <dependency>
0884 <groupId>jline</groupId>
0885 <artifactId>jline</artifactId>
0886 <version>2.14.6</version>
0887 </dependency>
0888 <dependency>
0889 <groupId>org.scalatest</groupId>
0890 <artifactId>scalatest_${scala.binary.version}</artifactId>
0891 <version>3.0.8</version>
0892 <scope>test</scope>
0893 </dependency>
0894 <dependency>
0895 <groupId>org.mockito</groupId>
0896 <artifactId>mockito-core</artifactId>
0897 <version>3.1.0</version>
0898 <scope>test</scope>
0899 </dependency>
0900 <dependency>
0901 <groupId>org.jmock</groupId>
0902 <artifactId>jmock-junit4</artifactId>
0903 <scope>test</scope>
0904 <version>2.8.4</version>
0905 </dependency>
0906 <dependency>
0907 <groupId>org.scalacheck</groupId>
0908 <artifactId>scalacheck_${scala.binary.version}</artifactId>
0909 <version>1.14.2</version>
0910 <scope>test</scope>
0911 </dependency>
0912 <dependency>
0913 <groupId>junit</groupId>
0914 <artifactId>junit</artifactId>
0915 <version>4.12</version>
0916 <scope>test</scope>
0917 </dependency>
0918 <dependency>
0919 <groupId>org.hamcrest</groupId>
0920 <artifactId>hamcrest-core</artifactId>
0921 <version>1.3</version>
0922 <scope>test</scope>
0923 </dependency>
0924 <dependency>
0925 <groupId>org.hamcrest</groupId>
0926 <artifactId>hamcrest-library</artifactId>
0927 <version>1.3</version>
0928 <scope>test</scope>
0929 </dependency>
0930 <dependency>
0931 <groupId>com.novocode</groupId>
0932 <artifactId>junit-interface</artifactId>
0933 <version>0.11</version>
0934 <scope>test</scope>
0935 </dependency>
0936 <dependency>
0937 <groupId>com.spotify</groupId>
0938 <artifactId>docker-client</artifactId>
0939 <version>8.14.1</version>
0940 <scope>test</scope>
0941 <classifier>shaded</classifier>
0942 <exclusions>
0943 <exclusion>
0944 <artifactId>guava</artifactId>
0945 <groupId>com.google.guava</groupId>
0946 </exclusion>
0947 <exclusion>
0948 <groupId>commons-logging</groupId>
0949 <artifactId>commons-logging</artifactId>
0950 </exclusion>
0951 </exclusions>
0952 </dependency>
0953 <dependency>
0954 <groupId>mysql</groupId>
0955 <artifactId>mysql-connector-java</artifactId>
0956 <version>5.1.38</version>
0957 <scope>test</scope>
0958 </dependency>
0959 <dependency>
0960 <groupId>org.postgresql</groupId>
0961 <artifactId>postgresql</artifactId>
0962 <version>42.2.6</version>
0963 <scope>test</scope>
0964 </dependency>
0965 <dependency>
0966 <groupId>org.apache.curator</groupId>
0967 <artifactId>curator-recipes</artifactId>
0968 <version>${curator.version}</version>
0969 <scope>${hadoop.deps.scope}</scope>
0970 <exclusions>
0971 <exclusion>
0972 <groupId>org.jboss.netty</groupId>
0973 <artifactId>netty</artifactId>
0974 </exclusion>
0975 <exclusion>
0976 <groupId>jline</groupId>
0977 <artifactId>jline</artifactId>
0978 </exclusion>
0979 </exclusions>
0980 </dependency>
0981 <dependency>
0982 <groupId>org.apache.curator</groupId>
0983 <artifactId>curator-client</artifactId>
0984 <version>${curator.version}</version>
0985 </dependency>
0986 <dependency>
0987 <groupId>org.apache.curator</groupId>
0988 <artifactId>curator-framework</artifactId>
0989 <version>${curator.version}</version>
0990 </dependency>
0991 <dependency>
0992 <groupId>org.apache.curator</groupId>
0993 <artifactId>curator-test</artifactId>
0994 <version>${curator.version}</version>
0995 <scope>test</scope>
0996 </dependency>
0997 <dependency>
0998 <groupId>org.apache.hadoop</groupId>
0999 <artifactId>hadoop-client</artifactId>
1000 <version>${hadoop.version}</version>
1001 <scope>${hadoop.deps.scope}</scope>
1002 <exclusions>
1003 <exclusion>
1004 <groupId>org.fusesource.leveldbjni</groupId>
1005 <artifactId>leveldbjni-all</artifactId>
1006 </exclusion>
1007 <exclusion>
1008 <groupId>asm</groupId>
1009 <artifactId>asm</artifactId>
1010 </exclusion>
1011 <exclusion>
1012 <groupId>org.codehaus.jackson</groupId>
1013 <artifactId>jackson-mapper-asl</artifactId>
1014 </exclusion>
1015 <exclusion>
1016 <groupId>org.ow2.asm</groupId>
1017 <artifactId>asm</artifactId>
1018 </exclusion>
1019 <exclusion>
1020 <groupId>org.jboss.netty</groupId>
1021 <artifactId>netty</artifactId>
1022 </exclusion>
1023 <exclusion>
1024 <groupId>io.netty</groupId>
1025 <artifactId>netty</artifactId>
1026 </exclusion>
1027 <exclusion>
1028 <!-- BeanUtils >= 1.9.0 no longer splits out -core; exclude it -->
1029 <groupId>commons-beanutils</groupId>
1030 <artifactId>commons-beanutils-core</artifactId>
1031 </exclusion>
1032 <exclusion>
1033 <groupId>commons-logging</groupId>
1034 <artifactId>commons-logging</artifactId>
1035 </exclusion>
1036 <exclusion>
1037 <groupId>org.mockito</groupId>
1038 <artifactId>mockito-all</artifactId>
1039 </exclusion>
1040 <exclusion>
1041 <groupId>org.mortbay.jetty</groupId>
1042 <artifactId>servlet-api-2.5</artifactId>
1043 </exclusion>
1044 <exclusion>
1045 <groupId>javax.servlet</groupId>
1046 <artifactId>servlet-api</artifactId>
1047 </exclusion>
1048 <exclusion>
1049 <groupId>junit</groupId>
1050 <artifactId>junit</artifactId>
1051 </exclusion>
1052 <exclusion>
1053 <groupId>com.sun.jersey</groupId>
1054 <artifactId>*</artifactId>
1055 </exclusion>
1056 <exclusion>
1057 <groupId>com.sun.jersey.jersey-test-framework</groupId>
1058 <artifactId>*</artifactId>
1059 </exclusion>
1060 <exclusion>
1061 <groupId>com.sun.jersey.contribs</groupId>
1062 <artifactId>*</artifactId>
1063 </exclusion>
1064 <exclusion>
1065 <groupId>net.java.dev.jets3t</groupId>
1066 <artifactId>jets3t</artifactId>
1067 </exclusion>
1068 <!-- Hadoop-3.2 -->
1069 <exclusion>
1070 <groupId>javax.ws.rs</groupId>
1071 <artifactId>jsr311-api</artifactId>
1072 </exclusion>
1073 <exclusion>
1074 <groupId>org.eclipse.jetty</groupId>
1075 <artifactId>jetty-webapp</artifactId>
1076 </exclusion>
1077 </exclusions>
1078 </dependency>
1079 <dependency>
1080 <groupId>org.apache.hadoop</groupId>
1081 <artifactId>hadoop-minikdc</artifactId>
1082 <version>${hadoop.version}</version>
1083 <scope>test</scope>
1084 <exclusions>
1085 <exclusion>
1086 <groupId>org.apache.directory.api</groupId>
1087 <artifactId>api-ldap-schema-data</artifactId>
1088 </exclusion>
1089 </exclusions>
1090 </dependency>
1091 <!-- Managed up to match Hadoop in HADOOP-16530 -->
1092 <dependency>
1093 <groupId>xerces</groupId>
1094 <artifactId>xercesImpl</artifactId>
1095 <version>2.12.0</version>
1096 </dependency>
1097 <dependency>
1098 <groupId>org.apache.avro</groupId>
1099 <artifactId>avro</artifactId>
1100 <version>${avro.version}</version>
1101 </dependency>
1102 <dependency>
1103 <groupId>org.apache.avro</groupId>
1104 <artifactId>avro-ipc</artifactId>
1105 <version>${avro.version}</version>
1106 <exclusions>
1107 <exclusion>
1108 <groupId>io.netty</groupId>
1109 <artifactId>netty</artifactId>
1110 </exclusion>
1111 <exclusion>
1112 <groupId>org.mortbay.jetty</groupId>
1113 <artifactId>jetty</artifactId>
1114 </exclusion>
1115 <exclusion>
1116 <groupId>org.mortbay.jetty</groupId>
1117 <artifactId>jetty-util</artifactId>
1118 </exclusion>
1119 <exclusion>
1120 <groupId>org.mortbay.jetty</groupId>
1121 <artifactId>servlet-api</artifactId>
1122 </exclusion>
1123 <exclusion>
1124 <groupId>org.apache.velocity</groupId>
1125 <artifactId>velocity</artifactId>
1126 </exclusion>
1127 </exclusions>
1128 </dependency>
1129 <!-- avro-mapred for some reason depends on avro-ipc's test jar, so undo that. -->
1130 <dependency>
1131 <groupId>org.apache.avro</groupId>
1132 <artifactId>avro-ipc</artifactId>
1133 <classifier>tests</classifier>
1134 <version>${avro.version}</version>
1135 <scope>test</scope>
1136 </dependency>
1137 <dependency>
1138 <groupId>org.apache.avro</groupId>
1139 <artifactId>avro-mapred</artifactId>
1140 <version>${avro.version}</version>
1141 <classifier>${avro.mapred.classifier}</classifier>
1142 <scope>${hive.deps.scope}</scope>
1143 <exclusions>
1144 <exclusion>
1145 <groupId>io.netty</groupId>
1146 <artifactId>netty</artifactId>
1147 </exclusion>
1148 <exclusion>
1149 <groupId>org.mortbay.jetty</groupId>
1150 <artifactId>jetty</artifactId>
1151 </exclusion>
1152 <exclusion>
1153 <groupId>org.mortbay.jetty</groupId>
1154 <artifactId>jetty-util</artifactId>
1155 </exclusion>
1156 <exclusion>
1157 <groupId>org.mortbay.jetty</groupId>
1158 <artifactId>servlet-api</artifactId>
1159 </exclusion>
1160 <exclusion>
1161 <groupId>org.apache.velocity</groupId>
1162 <artifactId>velocity</artifactId>
1163 </exclusion>
1164 </exclusions>
1165 </dependency>
1166 <!-- See SPARK-23654 for info on this dependency;
1167 It is used to keep javax.activation at v1.1.1 after dropping
1168 jets3t as a dependency.
1169 -->
1170 <dependency>
1171 <groupId>javax.activation</groupId>
1172 <artifactId>activation</artifactId>
1173 <version>1.1.1</version>
1174 <scope>${hadoop.deps.scope}</scope>
1175 </dependency>
1176 <dependency>
1177 <groupId>org.apache.hadoop</groupId>
1178 <artifactId>hadoop-yarn-api</artifactId>
1179 <version>${yarn.version}</version>
1180 <scope>${hadoop.deps.scope}</scope>
1181 <exclusions>
1182 <exclusion>
1183 <groupId>javax.servlet</groupId>
1184 <artifactId>servlet-api</artifactId>
1185 </exclusion>
1186 <exclusion>
1187 <groupId>asm</groupId>
1188 <artifactId>asm</artifactId>
1189 </exclusion>
1190 <exclusion>
1191 <groupId>org.ow2.asm</groupId>
1192 <artifactId>asm</artifactId>
1193 </exclusion>
1194 <exclusion>
1195 <groupId>org.jboss.netty</groupId>
1196 <artifactId>netty</artifactId>
1197 </exclusion>
1198 <exclusion>
1199 <groupId>commons-logging</groupId>
1200 <artifactId>commons-logging</artifactId>
1201 </exclusion>
1202 <exclusion>
1203 <groupId>com.sun.jersey</groupId>
1204 <artifactId>*</artifactId>
1205 </exclusion>
1206 <exclusion>
1207 <groupId>com.sun.jersey.jersey-test-framework</groupId>
1208 <artifactId>*</artifactId>
1209 </exclusion>
1210 <exclusion>
1211 <groupId>com.sun.jersey.contribs</groupId>
1212 <artifactId>*</artifactId>
1213 </exclusion>
1214 <exclusion>
1215 <groupId>jdk.tools</groupId>
1216 <artifactId>jdk.tools</artifactId>
1217 </exclusion>
1218 </exclusions>
1219 </dependency>
1220 <dependency>
1221 <groupId>org.apache.hadoop</groupId>
1222 <artifactId>hadoop-yarn-common</artifactId>
1223 <version>${yarn.version}</version>
1224 <scope>${hadoop.deps.scope}</scope>
1225 <exclusions>
1226 <exclusion>
1227 <groupId>asm</groupId>
1228 <artifactId>asm</artifactId>
1229 </exclusion>
1230 <exclusion>
1231 <groupId>org.ow2.asm</groupId>
1232 <artifactId>asm</artifactId>
1233 </exclusion>
1234 <exclusion>
1235 <groupId>org.jboss.netty</groupId>
1236 <artifactId>netty</artifactId>
1237 </exclusion>
1238 <exclusion>
1239 <groupId>javax.servlet</groupId>
1240 <artifactId>servlet-api</artifactId>
1241 </exclusion>
1242 <exclusion>
1243 <groupId>commons-logging</groupId>
1244 <artifactId>commons-logging</artifactId>
1245 </exclusion>
1246 <exclusion>
1247 <groupId>com.sun.jersey</groupId>
1248 <artifactId>*</artifactId>
1249 </exclusion>
1250 <exclusion>
1251 <groupId>com.sun.jersey.jersey-test-framework</groupId>
1252 <artifactId>*</artifactId>
1253 </exclusion>
1254 <exclusion>
1255 <groupId>com.sun.jersey.contribs</groupId>
1256 <artifactId>*</artifactId>
1257 </exclusion>
1258 </exclusions>
1259 </dependency>
1260 <dependency>
1261 <groupId>org.apache.hadoop</groupId>
1262 <artifactId>hadoop-yarn-server-tests</artifactId>
1263 <version>${yarn.version}</version>
1264 <classifier>tests</classifier>
1265 <scope>test</scope>
1266 <exclusions>
1267 <exclusion>
1268 <groupId>org.fusesource.leveldbjni</groupId>
1269 <artifactId>leveldbjni-all</artifactId>
1270 </exclusion>
1271 <exclusion>
1272 <groupId>asm</groupId>
1273 <artifactId>asm</artifactId>
1274 </exclusion>
1275 <exclusion>
1276 <groupId>org.ow2.asm</groupId>
1277 <artifactId>asm</artifactId>
1278 </exclusion>
1279 <exclusion>
1280 <groupId>org.jboss.netty</groupId>
1281 <artifactId>netty</artifactId>
1282 </exclusion>
1283 <exclusion>
1284 <groupId>javax.servlet</groupId>
1285 <artifactId>servlet-api</artifactId>
1286 </exclusion>
1287 <exclusion>
1288 <groupId>commons-logging</groupId>
1289 <artifactId>commons-logging</artifactId>
1290 </exclusion>
1291 <exclusion>
1292 <groupId>com.sun.jersey</groupId>
1293 <artifactId>*</artifactId>
1294 </exclusion>
1295 <exclusion>
1296 <groupId>com.sun.jersey.jersey-test-framework</groupId>
1297 <artifactId>*</artifactId>
1298 </exclusion>
1299 <exclusion>
1300 <groupId>com.sun.jersey.contribs</groupId>
1301 <artifactId>*</artifactId>
1302 </exclusion>
1303 </exclusions>
1304 </dependency>
1305 <dependency>
1306 <groupId>org.apache.hadoop</groupId>
1307 <artifactId>hadoop-yarn-server-web-proxy</artifactId>
1308 <version>${yarn.version}</version>
1309 <scope>${hadoop.deps.scope}</scope>
1310 <exclusions>
1311 <exclusion>
1312 <groupId>org.fusesource.leveldbjni</groupId>
1313 <artifactId>leveldbjni-all</artifactId>
1314 </exclusion>
1315 <exclusion>
1316 <groupId>asm</groupId>
1317 <artifactId>asm</artifactId>
1318 </exclusion>
1319 <exclusion>
1320 <groupId>org.ow2.asm</groupId>
1321 <artifactId>asm</artifactId>
1322 </exclusion>
1323 <exclusion>
1324 <groupId>org.jboss.netty</groupId>
1325 <artifactId>netty</artifactId>
1326 </exclusion>
1327 <exclusion>
1328 <groupId>javax.servlet</groupId>
1329 <artifactId>servlet-api</artifactId>
1330 </exclusion>
1331 <exclusion>
1332 <groupId>commons-logging</groupId>
1333 <artifactId>commons-logging</artifactId>
1334 </exclusion>
1335 <exclusion>
1336 <groupId>com.sun.jersey</groupId>
1337 <artifactId>*</artifactId>
1338 </exclusion>
1339 <exclusion>
1340 <groupId>com.sun.jersey.jersey-test-framework</groupId>
1341 <artifactId>*</artifactId>
1342 </exclusion>
1343 <exclusion>
1344 <groupId>com.sun.jersey.contribs</groupId>
1345 <artifactId>*</artifactId>
1346 </exclusion>
1347 <!-- Hadoop-3.2 -->
1348 <exclusion>
1349 <groupId>com.zaxxer</groupId>
1350 <artifactId>HikariCP-java7</artifactId>
1351 </exclusion>
1352 <exclusion>
1353 <groupId>com.microsoft.sqlserver</groupId>
1354 <artifactId>mssql-jdbc</artifactId>
1355 </exclusion>
1356 </exclusions>
1357 </dependency>
1358 <dependency>
1359 <groupId>org.apache.hadoop</groupId>
1360 <artifactId>hadoop-yarn-client</artifactId>
1361 <version>${yarn.version}</version>
1362 <scope>${hadoop.deps.scope}</scope>
1363 <exclusions>
1364 <exclusion>
1365 <groupId>asm</groupId>
1366 <artifactId>asm</artifactId>
1367 </exclusion>
1368 <exclusion>
1369 <groupId>org.ow2.asm</groupId>
1370 <artifactId>asm</artifactId>
1371 </exclusion>
1372 <exclusion>
1373 <groupId>org.jboss.netty</groupId>
1374 <artifactId>netty</artifactId>
1375 </exclusion>
1376 <exclusion>
1377 <groupId>javax.servlet</groupId>
1378 <artifactId>servlet-api</artifactId>
1379 </exclusion>
1380 <exclusion>
1381 <groupId>commons-logging</groupId>
1382 <artifactId>commons-logging</artifactId>
1383 </exclusion>
1384 <exclusion>
1385 <groupId>com.sun.jersey</groupId>
1386 <artifactId>*</artifactId>
1387 </exclusion>
1388 <exclusion>
1389 <groupId>com.sun.jersey.jersey-test-framework</groupId>
1390 <artifactId>*</artifactId>
1391 </exclusion>
1392 <exclusion>
1393 <groupId>com.sun.jersey.contribs</groupId>
1394 <artifactId>*</artifactId>
1395 </exclusion>
1396 </exclusions>
1397 </dependency>
1398 <dependency>
1399 <groupId>org.apache.zookeeper</groupId>
1400 <artifactId>zookeeper</artifactId>
1401 <version>${zookeeper.version}</version>
1402 <scope>${hadoop.deps.scope}</scope>
1403 <exclusions>
1404 <exclusion>
1405 <groupId>org.jboss.netty</groupId>
1406 <artifactId>netty</artifactId>
1407 </exclusion>
1408 <exclusion>
1409 <groupId>jline</groupId>
1410 <artifactId>jline</artifactId>
1411 </exclusion>
1412 <exclusion>
1413 <groupId>io.netty</groupId>
1414 <artifactId>netty</artifactId>
1415 </exclusion>
1416 <exclusion>
1417 <groupId>com.github.spotbugs</groupId>
1418 <artifactId>spotbugs-annotations</artifactId>
1419 </exclusion>
1420 </exclusions>
1421 </dependency>
1422 <dependency>
1423 <groupId>org.codehaus.jackson</groupId>
1424 <artifactId>jackson-core-asl</artifactId>
1425 <version>${codehaus.jackson.version}</version>
1426 <scope>${hadoop.deps.scope}</scope>
1427 </dependency>
1428 <dependency>
1429 <groupId>org.codehaus.jackson</groupId>
1430 <artifactId>jackson-mapper-asl</artifactId>
1431 <version>${codehaus.jackson.version}</version>
1432 <scope>${hadoop.deps.scope}</scope>
1433 </dependency>
1434 <dependency>
1435 <groupId>org.codehaus.jackson</groupId>
1436 <artifactId>jackson-xc</artifactId>
1437 <version>${codehaus.jackson.version}</version>
1438 </dependency>
1439 <dependency>
1440 <groupId>org.codehaus.jackson</groupId>
1441 <artifactId>jackson-jaxrs</artifactId>
1442 <version>${codehaus.jackson.version}</version>
1443 </dependency>
1444 <dependency>
1445 <groupId>${hive.group}</groupId>
1446 <artifactId>hive-beeline</artifactId>
1447 <version>${hive.version}</version>
1448 <scope>${hive.deps.scope}</scope>
1449 <exclusions>
1450 <exclusion>
1451 <groupId>${hive.group}</groupId>
1452 <artifactId>hive-common</artifactId>
1453 </exclusion>
1454 <exclusion>
1455 <groupId>${hive.group}</groupId>
1456 <artifactId>hive-exec</artifactId>
1457 </exclusion>
1458 <exclusion>
1459 <groupId>${hive.group}</groupId>
1460 <artifactId>hive-jdbc</artifactId>
1461 </exclusion>
1462 <exclusion>
1463 <groupId>${hive.group}</groupId>
1464 <artifactId>hive-metastore</artifactId>
1465 </exclusion>
1466 <exclusion>
1467 <groupId>${hive.group}</groupId>
1468 <artifactId>hive-service</artifactId>
1469 </exclusion>
1470 <exclusion>
1471 <!-- All classes are covered by spark's hive-thriftserver module -->
1472 <groupId>${hive.group}</groupId>
1473 <artifactId>hive-service-rpc</artifactId>
1474 </exclusion>
1475 <exclusion>
1476 <groupId>${hive.group}</groupId>
1477 <artifactId>hive-shims</artifactId>
1478 </exclusion>
1479 <exclusion>
1480 <groupId>org.apache.thrift</groupId>
1481 <artifactId>libthrift</artifactId>
1482 </exclusion>
1483 <exclusion>
1484 <groupId>org.slf4j</groupId>
1485 <artifactId>slf4j-api</artifactId>
1486 </exclusion>
1487 <exclusion>
1488 <groupId>org.slf4j</groupId>
1489 <artifactId>slf4j-log4j12</artifactId>
1490 </exclusion>
1491 <exclusion>
1492 <groupId>log4j</groupId>
1493 <artifactId>log4j</artifactId>
1494 </exclusion>
1495 <exclusion>
1496 <groupId>commons-logging</groupId>
1497 <artifactId>commons-logging</artifactId>
1498 </exclusion>
1499 </exclusions>
1500 </dependency>
1501 <dependency>
1502 <groupId>${hive.group}</groupId>
1503 <artifactId>hive-cli</artifactId>
1504 <version>${hive.version}</version>
1505 <scope>${hive.deps.scope}</scope>
1506 <exclusions>
1507 <exclusion>
1508 <groupId>${hive.group}</groupId>
1509 <artifactId>hive-common</artifactId>
1510 </exclusion>
1511 <exclusion>
1512 <groupId>${hive.group}</groupId>
1513 <artifactId>hive-exec</artifactId>
1514 </exclusion>
1515 <exclusion>
1516 <groupId>${hive.group}</groupId>
1517 <artifactId>hive-jdbc</artifactId>
1518 </exclusion>
1519 <exclusion>
1520 <groupId>${hive.group}</groupId>
1521 <artifactId>hive-metastore</artifactId>
1522 </exclusion>
1523 <exclusion>
1524 <groupId>${hive.group}</groupId>
1525 <artifactId>hive-serde</artifactId>
1526 </exclusion>
1527 <exclusion>
1528 <groupId>${hive.group}</groupId>
1529 <artifactId>hive-service</artifactId>
1530 </exclusion>
1531 <exclusion>
1532 <!-- All classes are covered by spark's hive-thriftserver module -->
1533 <groupId>${hive.group}</groupId>
1534 <artifactId>hive-service-rpc</artifactId>
1535 </exclusion>
1536 <exclusion>
1537 <groupId>${hive.group}</groupId>
1538 <artifactId>hive-shims</artifactId>
1539 </exclusion>
1540 <exclusion>
1541 <groupId>org.apache.thrift</groupId>
1542 <artifactId>libthrift</artifactId>
1543 </exclusion>
1544 <exclusion>
1545 <groupId>org.slf4j</groupId>
1546 <artifactId>slf4j-api</artifactId>
1547 </exclusion>
1548 <exclusion>
1549 <groupId>org.slf4j</groupId>
1550 <artifactId>slf4j-log4j12</artifactId>
1551 </exclusion>
1552 <exclusion>
1553 <groupId>log4j</groupId>
1554 <artifactId>log4j</artifactId>
1555 </exclusion>
1556 <exclusion>
1557 <groupId>commons-logging</groupId>
1558 <artifactId>commons-logging</artifactId>
1559 </exclusion>
1560 </exclusions>
1561 </dependency>
1562 <dependency>
1563 <groupId>${hive.group}</groupId>
1564 <artifactId>hive-common</artifactId>
1565 <version>${hive.version}</version>
1566 <scope>${hive.deps.scope}</scope>
1567 <exclusions>
1568 <exclusion>
1569 <groupId>${hive.group}</groupId>
1570 <artifactId>hive-shims</artifactId>
1571 </exclusion>
1572 <exclusion>
1573 <groupId>org.apache.ant</groupId>
1574 <artifactId>ant</artifactId>
1575 </exclusion>
1576 <exclusion>
1577 <groupId>org.apache.zookeeper</groupId>
1578 <artifactId>zookeeper</artifactId>
1579 </exclusion>
1580 <exclusion>
1581 <groupId>org.slf4j</groupId>
1582 <artifactId>slf4j-api</artifactId>
1583 </exclusion>
1584 <exclusion>
1585 <groupId>org.slf4j</groupId>
1586 <artifactId>slf4j-log4j12</artifactId>
1587 </exclusion>
1588 <exclusion>
1589 <groupId>log4j</groupId>
1590 <artifactId>log4j</artifactId>
1591 </exclusion>
1592 <exclusion>
1593 <groupId>commons-logging</groupId>
1594 <artifactId>commons-logging</artifactId>
1595 </exclusion>
1596 <!-- Begin of Hive 2.3 exclusion -->
1597 <!--
1598 ORC is needed, but the version should be consistent with the `sql/core` ORC data source.
1599 Looks like this is safe, please see the major changes from ORC 1.3.3 to 1.5.4:
1600 HIVE-17631 and HIVE-19465
1601 -->
1602 <exclusion>
1603 <groupId>org.apache.orc</groupId>
1604 <artifactId>orc-core</artifactId>
1605 </exclusion>
1606 <!-- jetty-all conflict with jetty 9.4.12.v20180830 -->
1607 <exclusion>
1608 <groupId>org.eclipse.jetty.aggregate</groupId>
1609 <artifactId>jetty-all</artifactId>
1610 </exclusion>
1611 <!-- org.apache.logging.log4j:* conflict with log4j 1.2.17 -->
1612 <exclusion>
1613 <groupId>org.apache.logging.log4j</groupId>
1614 <artifactId>*</artifactId>
1615 </exclusion>
1616 <!-- Hive includes javax.servlet to fix the Hive on Spark test failure; see HIVE-12783 -->
1617 <exclusion>
1618 <groupId>org.eclipse.jetty.orbit</groupId>
1619 <artifactId>javax.servlet</artifactId>
1620 </exclusion>
1621 <!-- hive-storage-api is needed and must be explicitly included later -->
1622 <exclusion>
1623 <groupId>org.apache.hive</groupId>
1624 <artifactId>hive-storage-api</artifactId>
1625 </exclusion>
1626 <!-- End of Hive 2.3 exclusion -->
1627 </exclusions>
1628 </dependency>
1629
1630 <dependency>
1631 <groupId>${hive.group}</groupId>
1632 <artifactId>hive-exec</artifactId>
1633 <classifier>${hive.classifier}</classifier>
1634 <version>${hive.version}</version>
1635 <scope>${hive.deps.scope}</scope>
1636 <exclusions>
1637
1638 <!-- pull this in when needed; the explicit definition culls the surplis-->
1639 <exclusion>
1640 <groupId>${hive.group}</groupId>
1641 <artifactId>hive-metastore</artifactId>
1642 </exclusion>
1643 <exclusion>
1644 <groupId>${hive.group}</groupId>
1645 <artifactId>hive-shims</artifactId>
1646 </exclusion>
1647 <exclusion>
1648 <groupId>${hive.group}</groupId>
1649 <artifactId>hive-ant</artifactId>
1650 </exclusion>
1651 <!-- break the loop -->
1652 <exclusion>
1653 <groupId>${hive.group}</groupId>
1654 <artifactId>spark-client</artifactId>
1655 </exclusion>
1656
1657 <!-- excluded dependencies & transitive.
1658 Some may be needed to be explicitly included-->
1659 <exclusion>
1660 <groupId>ant</groupId>
1661 <artifactId>ant</artifactId>
1662 </exclusion>
1663 <exclusion>
1664 <groupId>org.apache.ant</groupId>
1665 <artifactId>ant</artifactId>
1666 </exclusion>
1667 <exclusion>
1668 <groupId>com.esotericsoftware.kryo</groupId>
1669 <artifactId>kryo</artifactId>
1670 </exclusion>
1671 <exclusion>
1672 <groupId>commons-codec</groupId>
1673 <artifactId>commons-codec</artifactId>
1674 </exclusion>
1675 <exclusion>
1676 <groupId>commons-httpclient</groupId>
1677 <artifactId>commons-httpclient</artifactId>
1678 </exclusion>
1679 <exclusion>
1680 <groupId>org.apache.avro</groupId>
1681 <artifactId>avro-mapred</artifactId>
1682 </exclusion>
1683 <!-- Do not need Calcite because we disabled hive.cbo.enable -->
1684 <exclusion>
1685 <groupId>org.apache.calcite</groupId>
1686 <artifactId>calcite-core</artifactId>
1687 </exclusion>
1688 <exclusion>
1689 <groupId>org.apache.calcite</groupId>
1690 <artifactId>calcite-avatica</artifactId>
1691 </exclusion>
1692 <exclusion>
1693 <groupId>org.apache.curator</groupId>
1694 <artifactId>apache-curator</artifactId>
1695 </exclusion>
1696 <exclusion>
1697 <groupId>org.apache.curator</groupId>
1698 <artifactId>curator-client</artifactId>
1699 </exclusion>
1700 <exclusion>
1701 <groupId>org.apache.curator</groupId>
1702 <artifactId>curator-framework</artifactId>
1703 </exclusion>
1704 <exclusion>
1705 <groupId>org.apache.thrift</groupId>
1706 <artifactId>libthrift</artifactId>
1707 </exclusion>
1708 <exclusion>
1709 <groupId>org.apache.thrift</groupId>
1710 <artifactId>libfb303</artifactId>
1711 </exclusion>
1712 <exclusion>
1713 <groupId>org.apache.zookeeper</groupId>
1714 <artifactId>zookeeper</artifactId>
1715 </exclusion>
1716 <exclusion>
1717 <groupId>org.slf4j</groupId>
1718 <artifactId>slf4j-api</artifactId>
1719 </exclusion>
1720 <exclusion>
1721 <groupId>org.slf4j</groupId>
1722 <artifactId>slf4j-log4j12</artifactId>
1723 </exclusion>
1724 <exclusion>
1725 <groupId>log4j</groupId>
1726 <artifactId>log4j</artifactId>
1727 </exclusion>
1728 <exclusion>
1729 <groupId>commons-logging</groupId>
1730 <artifactId>commons-logging</artifactId>
1731 </exclusion>
1732 <exclusion>
1733 <groupId>org.codehaus.groovy</groupId>
1734 <artifactId>groovy-all</artifactId>
1735 </exclusion>
1736 <exclusion>
1737 <groupId>jline</groupId>
1738 <artifactId>jline</artifactId>
1739 </exclusion>
1740 <!-- Cat X license now; see SPARK-18262 -->
1741 <exclusion>
1742 <groupId>org.json</groupId>
1743 <artifactId>json</artifactId>
1744 </exclusion>
1745 <!-- Begin of Hive 2.3 exclusion -->
1746 <!-- Do not need Tez -->
1747 <exclusion>
1748 <groupId>${hive.group}</groupId>
1749 <artifactId>hive-llap-tez</artifactId>
1750 </exclusion>
1751 <!-- Do not need Calcite, see SPARK-27054 -->
1752 <exclusion>
1753 <groupId>org.apache.calcite</groupId>
1754 <artifactId>calcite-druid</artifactId>
1755 </exclusion>
1756 <exclusion>
1757 <groupId>org.apache.calcite.avatica</groupId>
1758 <artifactId>avatica</artifactId>
1759 </exclusion>
1760 <!-- org.apache.logging.log4j:* conflict with log4j 1.2.17 -->
1761 <exclusion>
1762 <groupId>org.apache.logging.log4j</groupId>
1763 <artifactId>*</artifactId>
1764 </exclusion>
1765 <!-- End of Hive 2.3 exclusion -->
1766 </exclusions>
1767 </dependency>
1768 <dependency>
1769 <groupId>${hive.group}</groupId>
1770 <artifactId>hive-jdbc</artifactId>
1771 <version>${hive.version}</version>
1772 <exclusions>
1773 <exclusion>
1774 <groupId>${hive.group}</groupId>
1775 <artifactId>hive-common</artifactId>
1776 </exclusion>
1777 <exclusion>
1778 <groupId>${hive.group}</groupId>
1779 <artifactId>hive-metastore</artifactId>
1780 </exclusion>
1781 <exclusion>
1782 <groupId>${hive.group}</groupId>
1783 <artifactId>hive-serde</artifactId>
1784 </exclusion>
1785 <exclusion>
1786 <groupId>${hive.group}</groupId>
1787 <artifactId>hive-service</artifactId>
1788 </exclusion>
1789 <exclusion>
1790 <!-- All classes are covered by spark's hive-thriftserver module -->
1791 <groupId>${hive.group}</groupId>
1792 <artifactId>hive-service-rpc</artifactId>
1793 </exclusion>
1794 <exclusion>
1795 <groupId>${hive.group}</groupId>
1796 <artifactId>hive-shims</artifactId>
1797 </exclusion>
1798 <exclusion>
1799 <groupId>org.apache.curator</groupId>
1800 <artifactId>curator-framework</artifactId>
1801 </exclusion>
1802 <exclusion>
1803 <groupId>org.apache.thrift</groupId>
1804 <artifactId>libthrift</artifactId>
1805 </exclusion>
1806 <exclusion>
1807 <groupId>org.apache.thrift</groupId>
1808 <artifactId>libfb303</artifactId>
1809 </exclusion>
1810 <exclusion>
1811 <groupId>org.apache.zookeeper</groupId>
1812 <artifactId>zookeeper</artifactId>
1813 </exclusion>
1814 <exclusion>
1815 <groupId>org.slf4j</groupId>
1816 <artifactId>slf4j-api</artifactId>
1817 </exclusion>
1818 <exclusion>
1819 <groupId>org.slf4j</groupId>
1820 <artifactId>slf4j-log4j12</artifactId>
1821 </exclusion>
1822 <exclusion>
1823 <groupId>log4j</groupId>
1824 <artifactId>log4j</artifactId>
1825 </exclusion>
1826 <exclusion>
1827 <groupId>commons-logging</groupId>
1828 <artifactId>commons-logging</artifactId>
1829 </exclusion>
1830 <exclusion>
1831 <groupId>org.codehaus.groovy</groupId>
1832 <artifactId>groovy-all</artifactId>
1833 </exclusion>
1834 </exclusions>
1835 </dependency>
1836
1837 <dependency>
1838 <groupId>${hive.group}</groupId>
1839 <artifactId>hive-metastore</artifactId>
1840 <version>${hive.version}</version>
1841 <scope>${hive.deps.scope}</scope>
1842 <exclusions>
1843 <exclusion>
1844 <groupId>${hive.group}</groupId>
1845 <artifactId>hive-serde</artifactId>
1846 </exclusion>
1847 <exclusion>
1848 <groupId>${hive.group}</groupId>
1849 <artifactId>hive-shims</artifactId>
1850 </exclusion>
1851 <exclusion>
1852 <groupId>org.apache.thrift</groupId>
1853 <artifactId>libfb303</artifactId>
1854 </exclusion>
1855 <exclusion>
1856 <groupId>org.apache.thrift</groupId>
1857 <artifactId>libthrift</artifactId>
1858 </exclusion>
1859 <exclusion>
1860 <groupId>org.mortbay.jetty</groupId>
1861 <artifactId>servlet-api</artifactId>
1862 </exclusion>
1863 <exclusion>
1864 <groupId>com.google.guava</groupId>
1865 <artifactId>guava</artifactId>
1866 </exclusion>
1867 <exclusion>
1868 <groupId>org.slf4j</groupId>
1869 <artifactId>slf4j-api</artifactId>
1870 </exclusion>
1871 <exclusion>
1872 <groupId>org.slf4j</groupId>
1873 <artifactId>slf4j-log4j12</artifactId>
1874 </exclusion>
1875 <!-- Begin of Hive 2.3 exclusion -->
1876 <!-- Hive removes the HBase Metastore; see HIVE-17234 -->
1877 <exclusion>
1878 <groupId>org.apache.hbase</groupId>
1879 <artifactId>hbase-client</artifactId>
1880 </exclusion>
1881 <exclusion>
1882 <groupId>co.cask.tephra</groupId>
1883 <artifactId>*</artifactId>
1884 </exclusion>
1885 <!-- End of Hive 2.3 exclusion -->
1886 </exclusions>
1887 </dependency>
1888
1889 <dependency>
1890 <groupId>${hive.group}</groupId>
1891 <artifactId>hive-serde</artifactId>
1892 <version>${hive.version}</version>
1893 <scope>${hive.deps.scope}</scope>
1894 <exclusions>
1895 <exclusion>
1896 <groupId>${hive.group}</groupId>
1897 <artifactId>hive-common</artifactId>
1898 </exclusion>
1899 <exclusion>
1900 <groupId>${hive.group}</groupId>
1901 <artifactId>hive-shims</artifactId>
1902 </exclusion>
1903 <exclusion>
1904 <groupId>commons-codec</groupId>
1905 <artifactId>commons-codec</artifactId>
1906 </exclusion>
1907 <exclusion>
1908 <groupId>com.google.code.findbugs</groupId>
1909 <artifactId>jsr305</artifactId>
1910 </exclusion>
1911 <exclusion>
1912 <groupId>org.apache.avro</groupId>
1913 <artifactId>avro</artifactId>
1914 </exclusion>
1915 <exclusion>
1916 <groupId>org.apache.thrift</groupId>
1917 <artifactId>libthrift</artifactId>
1918 </exclusion>
1919 <exclusion>
1920 <groupId>org.apache.thrift</groupId>
1921 <artifactId>libfb303</artifactId>
1922 </exclusion>
1923 <exclusion>
1924 <groupId>org.slf4j</groupId>
1925 <artifactId>slf4j-api</artifactId>
1926 </exclusion>
1927 <exclusion>
1928 <groupId>org.slf4j</groupId>
1929 <artifactId>slf4j-log4j12</artifactId>
1930 </exclusion>
1931 <exclusion>
1932 <groupId>log4j</groupId>
1933 <artifactId>log4j</artifactId>
1934 </exclusion>
1935 <exclusion>
1936 <groupId>commons-logging</groupId>
1937 <artifactId>commons-logging</artifactId>
1938 </exclusion>
1939 <exclusion>
1940 <groupId>org.codehaus.groovy</groupId>
1941 <artifactId>groovy-all</artifactId>
1942 </exclusion>
1943 <!-- Begin of Hive 2.3 exclusion -->
1944 <exclusion>
1945 <!-- All classes are covered by spark's hive-thriftserver module -->
1946 <groupId>${hive.group}</groupId>
1947 <artifactId>hive-service-rpc</artifactId>
1948 </exclusion>
1949 <!-- parquet-hadoop-bundle:1.8.1 conflict with 1.10.1 -->
1950 <exclusion>
1951 <groupId>org.apache.parquet</groupId>
1952 <artifactId>parquet-hadoop-bundle</artifactId>
1953 </exclusion>
1954 <!-- Do not need Jasper, see HIVE-19799 -->
1955 <exclusion>
1956 <groupId>tomcat</groupId>
1957 <artifactId>jasper-compiler</artifactId>
1958 </exclusion>
1959 <exclusion>
1960 <groupId>tomcat</groupId>
1961 <artifactId>jasper-runtime</artifactId>
1962 </exclusion>
1963 <!-- End of Hive 2.3 exclusion -->
1964 </exclusions>
1965 </dependency>
1966
1967 <dependency>
1968 <groupId>net.sf.jpam</groupId>
1969 <artifactId>jpam</artifactId>
1970 <scope>${hive.deps.scope}</scope>
1971 <version>${jpam.version}</version>
1972 <exclusions>
1973 <exclusion>
1974 <groupId>javax.servlet</groupId>
1975 <artifactId>servlet-api</artifactId>
1976 </exclusion>
1977 </exclusions>
1978 </dependency>
1979
1980 <!-- hive shims pulls in hive 0.23 and a transitive dependency of the Hadoop version
1981 Hive was built against. This dependency cuts out the YARN/hadoop dependency, which
1982 is needed by Hive to submit work to a YARN cluster.-->
1983 <dependency>
1984 <groupId>${hive.group}</groupId>
1985 <artifactId>hive-shims</artifactId>
1986 <version>${hive.version}</version>
1987 <scope>${hive.deps.scope}</scope>
1988 <exclusions>
1989 <exclusion>
1990 <groupId>com.google.guava</groupId>
1991 <artifactId>guava</artifactId>
1992 </exclusion>
1993 <exclusion>
1994 <groupId>org.apache.hadoop</groupId>
1995 <artifactId>hadoop-yarn-server-resourcemanager</artifactId>
1996 </exclusion>
1997 <exclusion>
1998 <groupId>org.apache.curator</groupId>
1999 <artifactId>curator-framework</artifactId>
2000 </exclusion>
2001 <exclusion>
2002 <groupId>org.apache.thrift</groupId>
2003 <artifactId>libthrift</artifactId>
2004 </exclusion>
2005 <exclusion>
2006 <groupId>org.apache.zookeeper</groupId>
2007 <artifactId>zookeeper</artifactId>
2008 </exclusion>
2009 <exclusion>
2010 <groupId>org.slf4j</groupId>
2011 <artifactId>slf4j-api</artifactId>
2012 </exclusion>
2013 <exclusion>
2014 <groupId>org.slf4j</groupId>
2015 <artifactId>slf4j-log4j12</artifactId>
2016 </exclusion>
2017 <exclusion>
2018 <groupId>log4j</groupId>
2019 <artifactId>log4j</artifactId>
2020 </exclusion>
2021 <exclusion>
2022 <groupId>commons-logging</groupId>
2023 <artifactId>commons-logging</artifactId>
2024 </exclusion>
2025 <exclusion>
2026 <groupId>org.codehaus.groovy</groupId>
2027 <artifactId>groovy-all</artifactId>
2028 </exclusion>
2029 <!-- Begin of Hive 2.3 exclusion -->
2030 <!-- Exclude log4j-slf4j-impl, otherwise throw NCDFE when starting spark-shell -->
2031 <exclusion>
2032 <groupId>org.apache.logging.log4j</groupId>
2033 <artifactId>log4j-slf4j-impl</artifactId>
2034 </exclusion>
2035 <!-- End of Hive 2.3 exclusion -->
2036 </exclusions>
2037 </dependency>
2038
2039 <!-- hive-llap-common is needed when registering UDFs in Hive 2.3.
2040 We add it here, otherwise -Phive-provided won't work. -->
2041 <dependency>
2042 <groupId>org.apache.hive</groupId>
2043 <artifactId>hive-llap-common</artifactId>
2044 <version>${hive23.version}</version>
2045 <scope>${hive.deps.scope}</scope>
2046 <exclusions>
2047 <exclusion>
2048 <groupId>org.apache.hive</groupId>
2049 <artifactId>hive-common</artifactId>
2050 </exclusion>
2051 <exclusion>
2052 <groupId>org.apache.hive</groupId>
2053 <artifactId>hive-serde</artifactId>
2054 </exclusion>
2055 <exclusion>
2056 <groupId>org.slf4j</groupId>
2057 <artifactId>slf4j-api</artifactId>
2058 </exclusion>
2059 </exclusions>
2060 </dependency>
2061 <!-- hive-llap-client is needed when run MapReduce test in Hive 2.3. -->
2062 <dependency>
2063 <groupId>org.apache.hive</groupId>
2064 <artifactId>hive-llap-client</artifactId>
2065 <version>${hive23.version}</version>
2066 <scope>test</scope>
2067 <exclusions>
2068 <exclusion>
2069 <groupId>org.apache.hive</groupId>
2070 <artifactId>hive-common</artifactId>
2071 </exclusion>
2072 <exclusion>
2073 <groupId>org.apache.hive</groupId>
2074 <artifactId>hive-serde</artifactId>
2075 </exclusion>
2076 <exclusion>
2077 <groupId>org.apache.hive</groupId>
2078 <artifactId>hive-llap-common</artifactId>
2079 </exclusion>
2080 <exclusion>
2081 <groupId>org.apache.curator</groupId>
2082 <artifactId>curator-framework</artifactId>
2083 </exclusion>
2084 <exclusion>
2085 <groupId>org.apache.curator</groupId>
2086 <artifactId>apache-curator</artifactId>
2087 </exclusion>
2088 <exclusion>
2089 <groupId>org.apache.zookeeper</groupId>
2090 <artifactId>zookeeper</artifactId>
2091 </exclusion>
2092 <exclusion>
2093 <groupId>org.slf4j</groupId>
2094 <artifactId>slf4j-api</artifactId>
2095 </exclusion>
2096 </exclusions>
2097 </dependency>
2098
2099 <dependency>
2100 <groupId>org.apache.orc</groupId>
2101 <artifactId>orc-core</artifactId>
2102 <version>${orc.version}</version>
2103 <classifier>${orc.classifier}</classifier>
2104 <scope>${orc.deps.scope}</scope>
2105 <exclusions>
2106 <exclusion>
2107 <groupId>javax.xml.bind</groupId>
2108 <artifactId>jaxb-api</artifactId>
2109 </exclusion>
2110 <exclusion>
2111 <groupId>org.apache.hadoop</groupId>
2112 <artifactId>hadoop-common</artifactId>
2113 </exclusion>
2114 <exclusion>
2115 <groupId>org.apache.hadoop</groupId>
2116 <artifactId>hadoop-hdfs</artifactId>
2117 </exclusion>
2118 <exclusion>
2119 <groupId>org.apache.hive</groupId>
2120 <artifactId>hive-storage-api</artifactId>
2121 </exclusion>
2122 </exclusions>
2123 </dependency>
2124 <dependency>
2125 <groupId>org.apache.orc</groupId>
2126 <artifactId>orc-mapreduce</artifactId>
2127 <version>${orc.version}</version>
2128 <classifier>${orc.classifier}</classifier>
2129 <scope>${orc.deps.scope}</scope>
2130 <exclusions>
2131 <exclusion>
2132 <groupId>org.apache.hadoop</groupId>
2133 <artifactId>hadoop-common</artifactId>
2134 </exclusion>
2135 <exclusion>
2136 <groupId>org.apache.hadoop</groupId>
2137 <artifactId>hadoop-mapreduce-client-core</artifactId>
2138 </exclusion>
2139 <exclusion>
2140 <groupId>org.apache.orc</groupId>
2141 <artifactId>orc-core</artifactId>
2142 </exclusion>
2143 <exclusion>
2144 <groupId>org.apache.hive</groupId>
2145 <artifactId>hive-storage-api</artifactId>
2146 </exclusion>
2147 <exclusion>
2148 <groupId> com.esotericsoftware</groupId>
2149 <artifactId>kryo-shaded</artifactId>
2150 </exclusion>
2151 </exclusions>
2152 </dependency>
2153 <dependency>
2154 <groupId>org.apache.parquet</groupId>
2155 <artifactId>parquet-column</artifactId>
2156 <version>${parquet.version}</version>
2157 <scope>${parquet.deps.scope}</scope>
2158 </dependency>
2159 <dependency>
2160 <groupId>org.apache.parquet</groupId>
2161 <artifactId>parquet-hadoop</artifactId>
2162 <version>${parquet.version}</version>
2163 <scope>${parquet.deps.scope}</scope>
2164 <exclusions>
2165 <exclusion>
2166 <groupId>commons-pool</groupId>
2167 <artifactId>commons-pool</artifactId>
2168 </exclusion>
2169 </exclusions>
2170 </dependency>
2171 <dependency>
2172 <groupId>org.apache.parquet</groupId>
2173 <artifactId>parquet-avro</artifactId>
2174 <version>${parquet.version}</version>
2175 <scope>${parquet.test.deps.scope}</scope>
2176 </dependency>
2177 <dependency>
2178 <groupId>${hive.parquet.group}</groupId>
2179 <artifactId>parquet-hadoop-bundle</artifactId>
2180 <version>${hive.parquet.version}</version>
2181 <scope>${hive.parquet.scope}</scope>
2182 </dependency>
2183 <dependency>
2184 <groupId>org.codehaus.janino</groupId>
2185 <artifactId>janino</artifactId>
2186 <version>${janino.version}</version>
2187 </dependency>
2188 <dependency>
2189 <groupId>org.codehaus.janino</groupId>
2190 <artifactId>commons-compiler</artifactId>
2191 <version>${janino.version}</version>
2192 </dependency>
2193 <dependency>
2194 <groupId>joda-time</groupId>
2195 <artifactId>joda-time</artifactId>
2196 <version>${joda.version}</version>
2197 </dependency>
2198 <dependency>
2199 <groupId>org.jodd</groupId>
2200 <artifactId>jodd-core</artifactId>
2201 <version>${jodd.version}</version>
2202 </dependency>
2203 <dependency>
2204 <groupId>org.datanucleus</groupId>
2205 <artifactId>datanucleus-core</artifactId>
2206 <version>${datanucleus-core.version}</version>
2207 </dependency>
2208 <dependency>
2209 <groupId>org.apache.thrift</groupId>
2210 <artifactId>libthrift</artifactId>
2211 <version>${libthrift.version}</version>
2212 <exclusions>
2213 <exclusion>
2214 <groupId>org.slf4j</groupId>
2215 <artifactId>slf4j-api</artifactId>
2216 </exclusion>
2217 </exclusions>
2218 </dependency>
2219 <dependency>
2220 <groupId>org.apache.thrift</groupId>
2221 <artifactId>libfb303</artifactId>
2222 <version>0.9.3</version>
2223 <exclusions>
2224 <exclusion>
2225 <groupId>org.slf4j</groupId>
2226 <artifactId>slf4j-api</artifactId>
2227 </exclusion>
2228 </exclusions>
2229 </dependency>
2230 <dependency>
2231 <groupId>org.antlr</groupId>
2232 <artifactId>antlr4-runtime</artifactId>
2233 <version>${antlr4.version}</version>
2234 </dependency>
2235 <dependency>
2236 <groupId>org.apache.commons</groupId>
2237 <artifactId>commons-crypto</artifactId>
2238 <version>${commons-crypto.version}</version>
2239 <exclusions>
2240 <exclusion>
2241 <groupId>net.java.dev.jna</groupId>
2242 <artifactId>jna</artifactId>
2243 </exclusion>
2244 </exclusions>
2245 </dependency>
2246 <dependency>
2247 <groupId>com.thoughtworks.paranamer</groupId>
2248 <artifactId>paranamer</artifactId>
2249 <version>${paranamer.version}</version>
2250 <scope>runtime</scope>
2251 </dependency>
2252 <dependency>
2253 <groupId>org.apache.arrow</groupId>
2254 <artifactId>arrow-vector</artifactId>
2255 <version>${arrow.version}</version>
2256 <exclusions>
2257 <exclusion>
2258 <groupId>com.fasterxml.jackson.core</groupId>
2259 <artifactId>jackson-annotations</artifactId>
2260 </exclusion>
2261 <exclusion>
2262 <groupId>com.fasterxml.jackson.core</groupId>
2263 <artifactId>jackson-databind</artifactId>
2264 </exclusion>
2265 <exclusion>
2266 <groupId>io.netty</groupId>
2267 <artifactId>netty-buffer</artifactId>
2268 </exclusion>
2269 <exclusion>
2270 <groupId>io.netty</groupId>
2271 <artifactId>netty-common</artifactId>
2272 </exclusion>
2273 <exclusion>
2274 <groupId>io.netty</groupId>
2275 <artifactId>netty-handler</artifactId>
2276 </exclusion>
2277 </exclusions>
2278 </dependency>
2279 <dependency>
2280 <groupId>com.univocity</groupId>
2281 <artifactId>univocity-parsers</artifactId>
2282 <version>2.8.3</version>
2283 </dependency>
2284 <dependency>
2285 <groupId>org.apache.hive</groupId>
2286 <artifactId>hive-storage-api</artifactId>
2287 <version>${hive.storage.version}</version>
2288 <scope>${hive.storage.scope}</scope>
2289 <exclusions>
2290 <exclusion>
2291 <groupId>commons-lang</groupId>
2292 <artifactId>commons-lang</artifactId>
2293 </exclusion>
2294 </exclusions>
2295 </dependency>
2296 </dependencies>
2297 </dependencyManagement>
2298
2299 <build>
2300 <pluginManagement>
2301 <plugins>
2302 <plugin>
2303 <groupId>org.apache.maven.plugins</groupId>
2304 <artifactId>maven-enforcer-plugin</artifactId>
2305 <version>3.0.0-M2</version>
2306 <executions>
2307 <execution>
2308 <id>enforce-versions</id>
2309 <goals>
2310 <goal>enforce</goal>
2311 </goals>
2312 <configuration>
2313 <rules>
2314 <requireMavenVersion>
2315 <version>${maven.version}</version>
2316 </requireMavenVersion>
2317 <requireJavaVersion>
2318 <version>${java.version}</version>
2319 </requireJavaVersion>
2320 <bannedDependencies>
2321 <excludes>
2322 <exclude>org.jboss.netty</exclude>
2323 <exclude>org.codehaus.groovy</exclude>
2324 <exclude>*:*_2.11</exclude>
2325 <exclude>*:*_2.10</exclude>
2326 </excludes>
2327 <searchTransitive>true</searchTransitive>
2328 </bannedDependencies>
2329 </rules>
2330 </configuration>
2331 </execution>
2332 <execution>
2333 <id>enforce-no-duplicate-dependencies</id>
2334 <goals>
2335 <goal>enforce</goal>
2336 </goals>
2337 <configuration>
2338 <rules>
2339 <banDuplicatePomDependencyVersions/>
2340 </rules>
2341 </configuration>
2342 </execution>
2343 </executions>
2344 </plugin>
2345 <plugin>
2346 <groupId>org.codehaus.mojo</groupId>
2347 <artifactId>build-helper-maven-plugin</artifactId>
2348 <version>3.0.0</version>
2349 </plugin>
2350 <plugin>
2351 <groupId>net.alchim31.maven</groupId>
2352 <artifactId>scala-maven-plugin</artifactId>
2353 <version>4.3.0</version>
2354 <executions>
2355 <execution>
2356 <id>eclipse-add-source</id>
2357 <goals>
2358 <goal>add-source</goal>
2359 </goals>
2360 </execution>
2361 <execution>
2362 <id>scala-compile-first</id>
2363 <goals>
2364 <goal>compile</goal>
2365 </goals>
2366 </execution>
2367 <execution>
2368 <id>scala-test-compile-first</id>
2369 <goals>
2370 <goal>testCompile</goal>
2371 </goals>
2372 </execution>
2373 <execution>
2374 <id>attach-scaladocs</id>
2375 <phase>verify</phase>
2376 <goals>
2377 <goal>doc-jar</goal>
2378 </goals>
2379 </execution>
2380 </executions>
2381 <configuration>
2382 <scalaVersion>${scala.version}</scalaVersion>
2383 <checkMultipleScalaVersions>true</checkMultipleScalaVersions>
2384 <failOnMultipleScalaVersions>true</failOnMultipleScalaVersions>
2385 <recompileMode>incremental</recompileMode>
2386 <useZincServer>true</useZincServer>
2387 <args>
2388 <arg>-unchecked</arg>
2389 <arg>-deprecation</arg>
2390 <arg>-feature</arg>
2391 <arg>-explaintypes</arg>
2392 <arg>-target:jvm-1.8</arg>
2393 </args>
2394 <jvmArgs>
2395 <jvmArg>-Xms1024m</jvmArg>
2396 <jvmArg>-Xmx1024m</jvmArg>
2397 <jvmArg>-XX:ReservedCodeCacheSize=${CodeCacheSize}</jvmArg>
2398 </jvmArgs>
2399 <javacArgs>
2400 <javacArg>-source</javacArg>
2401 <javacArg>${java.version}</javacArg>
2402 <javacArg>-target</javacArg>
2403 <javacArg>${java.version}</javacArg>
2404 <javacArg>-Xlint:all,-serial,-path,-try</javacArg>
2405 </javacArgs>
2406 </configuration>
2407 </plugin>
2408 <plugin>
2409 <groupId>org.apache.maven.plugins</groupId>
2410 <artifactId>maven-compiler-plugin</artifactId>
2411 <version>3.8.1</version>
2412 <configuration>
2413 <source>${java.version}</source>
2414 <target>${java.version}</target>
2415 <skipMain>true</skipMain> <!-- skip compile -->
2416 <skip>true</skip> <!-- skip testCompile -->
2417 </configuration>
2418 </plugin>
2419 <plugin>
2420 <groupId>org.antlr</groupId>
2421 <artifactId>antlr4-maven-plugin</artifactId>
2422 <version>${antlr4.version}</version>
2423 </plugin>
2424 <!-- Surefire runs all Java tests -->
2425 <plugin>
2426 <groupId>org.apache.maven.plugins</groupId>
2427 <artifactId>maven-surefire-plugin</artifactId>
2428 <version>3.0.0-M3</version>
2429 <!-- Note config is repeated in scalatest config -->
2430 <configuration>
2431 <includes>
2432 <include>**/Test*.java</include>
2433 <include>**/*Test.java</include>
2434 <include>**/*TestCase.java</include>
2435 <include>**/*Suite.java</include>
2436 </includes>
2437 <reportsDirectory>${project.build.directory}/surefire-reports</reportsDirectory>
2438 <argLine>-ea -Xmx4g -Xss4m -XX:ReservedCodeCacheSize=${CodeCacheSize} -Dio.netty.tryReflectionSetAccessible=true</argLine>
2439 <environmentVariables>
2440 <!--
2441 Setting SPARK_DIST_CLASSPATH is a simple way to make sure any child processes
2442 launched by the tests have access to the correct test-time classpath.
2443 -->
2444 <SPARK_DIST_CLASSPATH>${test_classpath}</SPARK_DIST_CLASSPATH>
2445 <SPARK_PREPEND_CLASSES>1</SPARK_PREPEND_CLASSES>
2446 <SPARK_SCALA_VERSION>${scala.binary.version}</SPARK_SCALA_VERSION>
2447 <SPARK_TESTING>1</SPARK_TESTING>
2448 <JAVA_HOME>${test.java.home}</JAVA_HOME>
2449 </environmentVariables>
2450 <systemProperties>
2451 <log4j.configuration>file:src/test/resources/log4j.properties</log4j.configuration>
2452 <derby.system.durability>test</derby.system.durability>
2453 <java.awt.headless>true</java.awt.headless>
2454 <java.io.tmpdir>${project.build.directory}/tmp</java.io.tmpdir>
2455 <spark.test.home>${spark.test.home}</spark.test.home>
2456 <spark.testing>1</spark.testing>
2457 <spark.master.rest.enabled>false</spark.master.rest.enabled>
2458 <spark.ui.enabled>false</spark.ui.enabled>
2459 <spark.ui.showConsoleProgress>false</spark.ui.showConsoleProgress>
2460 <spark.unsafe.exceptionOnMemoryLeak>true</spark.unsafe.exceptionOnMemoryLeak>
2461 <spark.memory.debugFill>true</spark.memory.debugFill>
2462 <!-- Needed by sql/hive tests. -->
2463 <test.src.tables>src</test.src.tables>
2464 </systemProperties>
2465 <failIfNoTests>false</failIfNoTests>
2466 <excludedGroups>${test.exclude.tags}</excludedGroups>
2467 <groups>${test.include.tags}</groups>
2468 </configuration>
2469 <executions>
2470 <execution>
2471 <id>test</id>
2472 <goals>
2473 <goal>test</goal>
2474 </goals>
2475 </execution>
2476 </executions>
2477 </plugin>
2478 <!-- Scalatest runs all Scala tests -->
2479 <plugin>
2480 <groupId>org.scalatest</groupId>
2481 <artifactId>scalatest-maven-plugin</artifactId>
2482 <version>2.0.0</version>
2483 <!-- Note config is repeated in surefire config -->
2484 <configuration>
2485 <reportsDirectory>${project.build.directory}/surefire-reports</reportsDirectory>
2486 <junitxml>.</junitxml>
2487 <filereports>SparkTestSuite.txt</filereports>
2488 <argLine>-ea -Xmx4g -Xss4m -XX:ReservedCodeCacheSize=${CodeCacheSize} -Dio.netty.tryReflectionSetAccessible=true</argLine>
2489 <stderr/>
2490 <environmentVariables>
2491 <!--
2492 Setting SPARK_DIST_CLASSPATH is a simple way to make sure any child processes
2493 launched by the tests have access to the correct test-time classpath.
2494 -->
2495 <SPARK_DIST_CLASSPATH>${test_classpath}</SPARK_DIST_CLASSPATH>
2496 <SPARK_PREPEND_CLASSES>1</SPARK_PREPEND_CLASSES>
2497 <SPARK_SCALA_VERSION>${scala.binary.version}</SPARK_SCALA_VERSION>
2498 <SPARK_TESTING>1</SPARK_TESTING>
2499 <JAVA_HOME>${test.java.home}</JAVA_HOME>
2500 </environmentVariables>
2501 <systemProperties>
2502 <log4j.configuration>file:src/test/resources/log4j.properties</log4j.configuration>
2503 <derby.system.durability>test</derby.system.durability>
2504 <java.awt.headless>true</java.awt.headless>
2505 <java.io.tmpdir>${project.build.directory}/tmp</java.io.tmpdir>
2506 <spark.test.home>${spark.test.home}</spark.test.home>
2507 <spark.testing>1</spark.testing>
2508 <spark.ui.enabled>false</spark.ui.enabled>
2509 <spark.ui.showConsoleProgress>false</spark.ui.showConsoleProgress>
2510 <spark.unsafe.exceptionOnMemoryLeak>true</spark.unsafe.exceptionOnMemoryLeak>
2511 <spark.test.webdriver.chrome.driver>${spark.test.webdriver.chrome.driver}</spark.test.webdriver.chrome.driver>
2512 <!-- Needed by sql/hive tests. -->
2513 <test.src.tables>__not_used__</test.src.tables>
2514 </systemProperties>
2515 <tagsToExclude>${test.exclude.tags},${test.default.exclude.tags}</tagsToExclude>
2516 <tagsToInclude>${test.include.tags}</tagsToInclude>
2517 </configuration>
2518 <executions>
2519 <execution>
2520 <id>test</id>
2521 <goals>
2522 <goal>test</goal>
2523 </goals>
2524 </execution>
2525 </executions>
2526 </plugin>
2527 <plugin>
2528 <groupId>org.apache.maven.plugins</groupId>
2529 <artifactId>maven-jar-plugin</artifactId>
2530 <version>3.1.2</version>
2531 </plugin>
2532 <plugin>
2533 <groupId>org.apache.maven.plugins</groupId>
2534 <artifactId>maven-antrun-plugin</artifactId>
2535 <version>${maven-antrun.version}</version>
2536 </plugin>
2537 <plugin>
2538 <groupId>org.apache.maven.plugins</groupId>
2539 <artifactId>maven-source-plugin</artifactId>
2540 <version>3.1.0</version>
2541 <configuration>
2542 <attach>true</attach>
2543 </configuration>
2544 <executions>
2545 <execution>
2546 <id>create-source-jar</id>
2547 <goals>
2548 <goal>jar-no-fork</goal>
2549 <goal>test-jar-no-fork</goal>
2550 </goals>
2551 </execution>
2552 </executions>
2553 </plugin>
2554 <plugin>
2555 <groupId>org.apache.maven.plugins</groupId>
2556 <artifactId>maven-clean-plugin</artifactId>
2557 <version>3.1.0</version>
2558 <configuration>
2559 <filesets>
2560 <fileset>
2561 <directory>work</directory>
2562 </fileset>
2563 <fileset>
2564 <directory>checkpoint</directory>
2565 </fileset>
2566 <fileset>
2567 <directory>lib_managed</directory>
2568 </fileset>
2569 </filesets>
2570 </configuration>
2571 </plugin>
2572 <plugin>
2573 <groupId>org.apache.maven.plugins</groupId>
2574 <artifactId>maven-javadoc-plugin</artifactId>
2575 <version>3.1.1</version>
2576 <configuration>
2577 <additionalJOptions>
2578 <additionalJOption>-Xdoclint:all</additionalJOption>
2579 <additionalJOption>-Xdoclint:-missing</additionalJOption>
2580 </additionalJOptions>
2581 <tags>
2582 <tag>
2583 <name>example</name>
2584 <placement>a</placement>
2585 <head>Example:</head>
2586 </tag>
2587 <tag>
2588 <name>note</name>
2589 <placement>a</placement>
2590 <head>Note:</head>
2591 </tag>
2592 <tag>
2593 <name>group</name>
2594 <placement>X</placement>
2595 </tag>
2596 <tag>
2597 <name>tparam</name>
2598 <placement>X</placement>
2599 </tag>
2600 <tag>
2601 <name>constructor</name>
2602 <placement>X</placement>
2603 </tag>
2604 <tag>
2605 <name>todo</name>
2606 <placement>X</placement>
2607 </tag>
2608 <tag>
2609 <name>groupname</name>
2610 <placement>X</placement>
2611 </tag>
2612 </tags>
2613 </configuration>
2614 </plugin>
2615 <plugin>
2616 <groupId>org.codehaus.mojo</groupId>
2617 <artifactId>exec-maven-plugin</artifactId>
2618 <version>1.6.0</version>
2619 </plugin>
2620 <plugin>
2621 <groupId>org.apache.maven.plugins</groupId>
2622 <artifactId>maven-assembly-plugin</artifactId>
2623 <version>3.1.0</version>
2624 <configuration>
2625 <tarLongFileMode>posix</tarLongFileMode>
2626 </configuration>
2627 </plugin>
2628 <plugin>
2629 <groupId>org.apache.maven.plugins</groupId>
2630 <artifactId>maven-shade-plugin</artifactId>
2631 <version>3.2.1</version>
2632 <dependencies>
2633 <dependency>
2634 <groupId>org.ow2.asm</groupId>
2635 <artifactId>asm</artifactId>
2636 <version>7.2</version>
2637 </dependency>
2638 <dependency>
2639 <groupId>org.ow2.asm</groupId>
2640 <artifactId>asm-commons</artifactId>
2641 <version>7.2</version>
2642 </dependency>
2643 </dependencies>
2644 </plugin>
2645 <plugin>
2646 <groupId>org.apache.maven.plugins</groupId>
2647 <artifactId>maven-install-plugin</artifactId>
2648 <version>3.0.0-M1</version>
2649 </plugin>
2650 <plugin>
2651 <groupId>org.apache.maven.plugins</groupId>
2652 <artifactId>maven-deploy-plugin</artifactId>
2653 <version>3.0.0-M1</version>
2654 </plugin>
2655 <plugin>
2656 <groupId>org.apache.maven.plugins</groupId>
2657 <artifactId>maven-dependency-plugin</artifactId>
2658 <version>3.1.1</version>
2659 <executions>
2660 <execution>
2661 <id>default-cli</id>
2662 <goals>
2663 <goal>build-classpath</goal>
2664 </goals>
2665 <configuration>
2666 <!-- This includes dependencies with 'runtime' and 'compile' scopes;
2667 see the docs for includeScope for more details -->
2668 <includeScope>runtime</includeScope>
2669 </configuration>
2670 </execution>
2671 </executions>
2672 </plugin>
2673 <!-- This plugin's configuration is used to store Eclipse m2e settings only. -->
2674 <!-- It has no influence on the Maven build itself. -->
2675 <plugin>
2676 <groupId>org.eclipse.m2e</groupId>
2677 <artifactId>lifecycle-mapping</artifactId>
2678 <version>1.0.0</version>
2679 <configuration>
2680 <lifecycleMappingMetadata>
2681 <pluginExecutions>
2682 <pluginExecution>
2683 <pluginExecutionFilter>
2684 <groupId>org.apache.maven.plugins</groupId>
2685 <artifactId>maven-dependency-plugin</artifactId>
2686 <versionRange>[2.8,)</versionRange>
2687 <goals>
2688 <goal>build-classpath</goal>
2689 </goals>
2690 </pluginExecutionFilter>
2691 <action>
2692 <ignore></ignore>
2693 </action>
2694 </pluginExecution>
2695 <pluginExecution>
2696 <pluginExecutionFilter>
2697 <groupId>org.apache.maven.plugins</groupId>
2698 <artifactId>maven-jar-plugin</artifactId>
2699 <versionRange>3.1.2</versionRange>
2700 <goals>
2701 <goal>test-jar</goal>
2702 </goals>
2703 </pluginExecutionFilter>
2704 <action>
2705 <ignore></ignore>
2706 </action>
2707 </pluginExecution>
2708 <pluginExecution>
2709 <pluginExecutionFilter>
2710 <groupId>org.apache.maven.plugins</groupId>
2711 <artifactId>maven-antrun-plugin</artifactId>
2712 <versionRange>[${maven-antrun.version},)</versionRange>
2713 <goals>
2714 <goal>run</goal>
2715 </goals>
2716 </pluginExecutionFilter>
2717 <action>
2718 <ignore></ignore>
2719 </action>
2720 </pluginExecution>
2721 </pluginExecutions>
2722 </lifecycleMappingMetadata>
2723 </configuration>
2724 </plugin>
2725 </plugins>
2726 </pluginManagement>
2727
2728 <plugins>
2729 <!-- This plugin dumps the test classpath into a file -->
2730 <plugin>
2731 <groupId>org.apache.maven.plugins</groupId>
2732 <artifactId>maven-dependency-plugin</artifactId>
2733 <executions>
2734 <execution>
2735 <id>generate-test-classpath</id>
2736 <phase>test-compile</phase>
2737 <goals>
2738 <goal>build-classpath</goal>
2739 </goals>
2740 <configuration>
2741 <includeScope>test</includeScope>
2742 <outputProperty>test_classpath</outputProperty>
2743 </configuration>
2744 </execution>
2745 <execution>
2746 <id>copy-module-dependencies</id>
2747 <phase>${build.copyDependenciesPhase}</phase>
2748 <goals>
2749 <goal>copy-dependencies</goal>
2750 </goals>
2751 <configuration>
2752 <includeScope>runtime</includeScope>
2753 <outputDirectory>${jars.target.dir}</outputDirectory>
2754 </configuration>
2755 </execution>
2756 </executions>
2757 </plugin>
2758
2759 <!--
2760 The shade plug-in is used here to create effective pom's (see SPARK-3812), and also
2761 remove references from the shaded libraries from artifacts published by Spark.
2762 -->
2763 <plugin>
2764 <groupId>org.apache.maven.plugins</groupId>
2765 <artifactId>maven-shade-plugin</artifactId>
2766 <configuration>
2767 <shadedArtifactAttached>false</shadedArtifactAttached>
2768 <artifactSet>
2769 <includes>
2770 <include>org.spark-project.spark:unused</include>
2771 <include>org.eclipse.jetty:jetty-io</include>
2772 <include>org.eclipse.jetty:jetty-http</include>
2773 <include>org.eclipse.jetty:jetty-proxy</include>
2774 <include>org.eclipse.jetty:jetty-client</include>
2775 <include>org.eclipse.jetty:jetty-continuation</include>
2776 <include>org.eclipse.jetty:jetty-servlet</include>
2777 <include>org.eclipse.jetty:jetty-servlets</include>
2778 <include>org.eclipse.jetty:jetty-plus</include>
2779 <include>org.eclipse.jetty:jetty-security</include>
2780 <include>org.eclipse.jetty:jetty-util</include>
2781 <include>org.eclipse.jetty:jetty-server</include>
2782 <include>com.google.guava:guava</include>
2783 <include>org.jpmml:*</include>
2784 </includes>
2785 </artifactSet>
2786 <relocations>
2787 <relocation>
2788 <pattern>org.eclipse.jetty</pattern>
2789 <shadedPattern>${spark.shade.packageName}.jetty</shadedPattern>
2790 <includes>
2791 <include>org.eclipse.jetty.**</include>
2792 </includes>
2793 </relocation>
2794 <relocation>
2795 <pattern>com.google.common</pattern>
2796 <shadedPattern>${spark.shade.packageName}.guava</shadedPattern>
2797 </relocation>
2798 <relocation>
2799 <pattern>org.dmg.pmml</pattern>
2800 <shadedPattern>${spark.shade.packageName}.dmg.pmml</shadedPattern>
2801 </relocation>
2802 <relocation>
2803 <pattern>org.jpmml</pattern>
2804 <shadedPattern>${spark.shade.packageName}.jpmml</shadedPattern>
2805 </relocation>
2806 </relocations>
2807 </configuration>
2808 <executions>
2809 <execution>
2810 <phase>package</phase>
2811 <goals>
2812 <goal>shade</goal>
2813 </goals>
2814 </execution>
2815 </executions>
2816 </plugin>
2817 <plugin>
2818 <groupId>org.apache.maven.plugins</groupId>
2819 <artifactId>maven-enforcer-plugin</artifactId>
2820 </plugin>
2821 <plugin>
2822 <groupId>net.alchim31.maven</groupId>
2823 <artifactId>scala-maven-plugin</artifactId>
2824 </plugin>
2825 <plugin>
2826 <groupId>org.apache.maven.plugins</groupId>
2827 <artifactId>maven-source-plugin</artifactId>
2828 </plugin>
2829 <plugin>
2830 <groupId>org.scalastyle</groupId>
2831 <artifactId>scalastyle-maven-plugin</artifactId>
2832 <version>1.0.0</version>
2833 <configuration>
2834 <verbose>false</verbose>
2835 <failOnViolation>true</failOnViolation>
2836 <includeTestSourceDirectory>false</includeTestSourceDirectory>
2837 <failOnWarning>false</failOnWarning>
2838 <sourceDirectory>${basedir}/src/main/scala</sourceDirectory>
2839 <testSourceDirectory>${basedir}/src/test/scala</testSourceDirectory>
2840 <configLocation>scalastyle-config.xml</configLocation>
2841 <outputFile>${basedir}/target/scalastyle-output.xml</outputFile>
2842 <inputEncoding>${project.build.sourceEncoding}</inputEncoding>
2843 <outputEncoding>${project.reporting.outputEncoding}</outputEncoding>
2844 </configuration>
2845 <executions>
2846 <execution>
2847 <goals>
2848 <goal>check</goal>
2849 </goals>
2850 </execution>
2851 </executions>
2852 </plugin>
2853 <plugin>
2854 <groupId>org.apache.maven.plugins</groupId>
2855 <artifactId>maven-checkstyle-plugin</artifactId>
2856 <version>3.1.0</version>
2857 <configuration>
2858 <failOnViolation>false</failOnViolation>
2859 <includeTestSourceDirectory>true</includeTestSourceDirectory>
2860 <sourceDirectories>
2861 <directory>${basedir}/src/main/java</directory>
2862 <directory>${basedir}/src/main/scala</directory>
2863 <directory>${basedir}/v${hive.version.short}/src/main/java</directory>
2864 <directory>${basedir}/v${hive.version.short}/src/main/scala</directory>
2865 </sourceDirectories>
2866 <testSourceDirectories>
2867 <directory>${basedir}/src/test/java</directory>
2868 <directory>${basedir}/v${hive.version.short}/src/test/java</directory>
2869 <directory>${basedir}/v${hive.version.short}/src/test/scala</directory>
2870 </testSourceDirectories>
2871 <configLocation>dev/checkstyle.xml</configLocation>
2872 <outputFile>${basedir}/target/checkstyle-output.xml</outputFile>
2873 <inputEncoding>${project.build.sourceEncoding}</inputEncoding>
2874 <outputEncoding>${project.reporting.outputEncoding}</outputEncoding>
2875 </configuration>
2876 <dependencies>
2877 <dependency>
2878 <groupId>com.puppycrawl.tools</groupId>
2879 <artifactId>checkstyle</artifactId>
2880 <version>8.29</version>
2881 </dependency>
2882 </dependencies>
2883 <executions>
2884 <execution>
2885 <goals>
2886 <goal>check</goal>
2887 </goals>
2888 </execution>
2889 </executions>
2890 </plugin>
2891
2892 <plugin>
2893 <groupId>org.apache.maven.plugins</groupId>
2894 <artifactId>maven-antrun-plugin</artifactId>
2895 <executions>
2896 <execution>
2897 <id>create-tmp-dir</id>
2898 <phase>generate-test-resources</phase>
2899 <goals>
2900 <goal>run</goal>
2901 </goals>
2902 <configuration>
2903 <target>
2904 <mkdir dir="${project.build.directory}/tmp" />
2905 </target>
2906 </configuration>
2907 </execution>
2908 </executions>
2909 </plugin>
2910
2911 <!-- Enable surefire and scalatest in all children, in one place: -->
2912 <plugin>
2913 <groupId>org.apache.maven.plugins</groupId>
2914 <artifactId>maven-surefire-plugin</artifactId>
2915 </plugin>
2916 <plugin>
2917 <groupId>org.scalatest</groupId>
2918 <artifactId>scalatest-maven-plugin</artifactId>
2919 </plugin>
2920 <!-- Build test-jar's for all projects, since some projects depend on tests from others -->
2921 <plugin>
2922 <groupId>org.apache.maven.plugins</groupId>
2923 <artifactId>maven-jar-plugin</artifactId>
2924 <executions>
2925 <execution>
2926 <id>prepare-test-jar</id>
2927 <phase>${build.testJarPhase}</phase>
2928 <goals>
2929 <goal>test-jar</goal>
2930 </goals>
2931 <configuration>
2932 <excludes>
2933 <exclude>log4j.properties</exclude>
2934 </excludes>
2935 </configuration>
2936 </execution>
2937 </executions>
2938 </plugin>
2939 <plugin>
2940 <groupId>org.antipathy</groupId>
2941 <artifactId>mvn-scalafmt_${scala.binary.version}</artifactId>
2942 <version>1.0.3</version>
2943 <configuration>
2944 <parameters>${scalafmt.parameters}</parameters> <!-- (Optional) Additional command line arguments -->
2945 <skip>${scalafmt.skip}</skip> <!-- (Optional) skip formatting -->
2946 <skipSources>${scalafmt.skip}</skipSources>
2947 <skipTestSources>${scalafmt.skip}</skipTestSources>
2948 <configLocation>dev/.scalafmt.conf</configLocation> <!-- (Optional) config location -->
2949 <onlyChangedFiles>true</onlyChangedFiles>
2950 </configuration>
2951 <executions>
2952 <execution>
2953 <phase>validate</phase>
2954 <goals>
2955 <goal>format</goal>
2956 </goals>
2957 </execution>
2958 </executions>
2959 </plugin>
2960 <!--
2961 Couple of dependencies are coming in bundle format (bundle is just a normal jar which
2962 contains OSGi metadata in the manifest). If one don't use OSGi, then a bundle will work as
2963 any other jar. Since maven doesn't have native bundle support it needs an external plugin
2964 handle it. If the plugin is not added then the build can't resolve bundle dependencies.
2965 -->
2966 <plugin>
2967 <groupId>org.apache.felix</groupId>
2968 <artifactId>maven-bundle-plugin</artifactId>
2969 <version>4.2.0</version>
2970 <extensions>true</extensions>
2971 </plugin>
2972 </plugins>
2973 </build>
2974
2975 <profiles>
2976
2977 <!--
2978 This profile is enabled automatically by the sbt build. It changes the scope for shaded
2979 dependencies, since we don't shade it in the artifacts generated by the sbt build.
2980 -->
2981 <profile>
2982 <id>sbt</id>
2983 <dependencies>
2984 <dependency>
2985 <groupId>com.google.guava</groupId>
2986 <artifactId>guava</artifactId>
2987 <scope>compile</scope>
2988 </dependency>
2989 <dependency>
2990 <groupId>org.jpmml</groupId>
2991 <artifactId>pmml-model</artifactId>
2992 <scope>compile</scope>
2993 </dependency>
2994 </dependencies>
2995 </profile>
2996
2997 <!-- Ganglia integration is not included by default due to LGPL-licensed code -->
2998 <profile>
2999 <id>spark-ganglia-lgpl</id>
3000 <modules>
3001 <module>external/spark-ganglia-lgpl</module>
3002 </modules>
3003 </profile>
3004
3005 <!-- Kinesis integration is not included by default due to ASL-licensed code -->
3006 <profile>
3007 <id>kinesis-asl</id>
3008 <modules>
3009 <module>external/kinesis-asl</module>
3010 <module>external/kinesis-asl-assembly</module>
3011 </modules>
3012 </profile>
3013
3014 <profile>
3015 <id>docker-integration-tests</id>
3016 <modules>
3017 <module>external/docker-integration-tests</module>
3018 </modules>
3019 </profile>
3020
3021 <!-- A series of build profiles where customizations for particular Hadoop releases can be made -->
3022
3023 <!-- Hadoop-a.b.c dependencies can be found at
3024 http://hadoop.apache.org/docs/ra.b.c/hadoop-project-dist/hadoop-common/dependency-analysis.html
3025 -->
3026
3027 <profile>
3028 <id>hadoop-2.7</id>
3029 <!-- Default hadoop profile. Uses global properties. -->
3030 </profile>
3031
3032 <profile>
3033 <id>hadoop-3.2</id>
3034 <properties>
3035 <hadoop.version>3.2.0</hadoop.version>
3036 <curator.version>2.13.0</curator.version>
3037 </properties>
3038 </profile>
3039
3040 <profile>
3041 <id>hive-1.2</id>
3042 <properties>
3043 <hive.group>org.spark-project.hive</hive.group>
3044 <hive.classifier></hive.classifier>
3045 <!-- Version used in Maven Hive dependency -->
3046 <hive.version>1.2.1.spark2</hive.version>
3047 <!-- Version used for internal directory structure -->
3048 <hive.version.short>1.2</hive.version.short>
3049 <hive.parquet.scope>${hive.deps.scope}</hive.parquet.scope>
3050 <hive.storage.version>2.6.0</hive.storage.version>
3051 <hive.storage.scope>provided</hive.storage.scope>
3052 <hive.common.scope>provided</hive.common.scope>
3053 <hive.llap.scope>provided</hive.llap.scope>
3054 <hive.serde.scope>provided</hive.serde.scope>
3055 <hive.shims.scope>provided</hive.shims.scope>
3056 <orc.classifier>nohive</orc.classifier>
3057 <datanucleus-core.version>3.2.10</datanucleus-core.version>
3058 </properties>
3059 </profile>
3060
3061 <profile>
3062 <id>hive-2.3</id>
3063 <!-- Default hive profile. Uses global properties. -->
3064 </profile>
3065
3066 <profile>
3067 <id>yarn</id>
3068 <modules>
3069 <module>resource-managers/yarn</module>
3070 <module>common/network-yarn</module>
3071 </modules>
3072 </profile>
3073
3074 <profile>
3075 <id>mesos</id>
3076 <modules>
3077 <module>resource-managers/mesos</module>
3078 </modules>
3079 </profile>
3080
3081 <profile>
3082 <id>kubernetes</id>
3083 <modules>
3084 <module>resource-managers/kubernetes/core</module>
3085 </modules>
3086 </profile>
3087
3088 <!-- generally not enabled for automated builds, but will run k8s tests -->
3089 <profile>
3090 <id>kubernetes-integration-tests</id>
3091 <modules>
3092 <module>resource-managers/kubernetes/integration-tests</module>
3093 </modules>
3094 </profile>
3095
3096 <profile>
3097 <id>hive-thriftserver</id>
3098 <modules>
3099 <module>sql/hive-thriftserver</module>
3100 </modules>
3101 </profile>
3102
3103 <profile>
3104 <id>hadoop-cloud</id>
3105 <modules>
3106 <module>hadoop-cloud</module>
3107 </modules>
3108 </profile>
3109
3110 <profile>
3111 <id>test-java-home</id>
3112 <activation>
3113 <property><name>env.JAVA_HOME</name></property>
3114 </activation>
3115 <properties>
3116 <test.java.home>${env.JAVA_HOME}</test.java.home>
3117 </properties>
3118 </profile>
3119
3120 <profile>
3121 <id>scala-2.12</id>
3122 <build>
3123 <pluginManagement>
3124 <plugins>
3125 </plugins>
3126 </pluginManagement>
3127 </build>
3128 </profile>
3129
3130 <profile>
3131 <id>scala-2.13</id>
3132 <properties>
3133 <scala.version>2.13.1</scala.version>
3134 <scala.binary.version>2.13</scala.binary.version>
3135 </properties>
3136 <dependencyManagement>
3137 <dependencies>
3138 <dependency>
3139 <groupId>org.scala-lang.modules</groupId>
3140 <artifactId>scala-parallel-collections_${scala.binary.version}</artifactId>
3141 <version>0.2.0</version>
3142 </dependency>
3143 </dependencies>
3144 </dependencyManagement>
3145 </profile>
3146
3147 <!--
3148 This is a profile to enable the use of the ASF snapshot and staging repositories
3149 during a build. It is useful when testing against nightly or RC releases of dependencies.
3150 It MUST NOT be used when building copies of Spark to use in production of for distribution,
3151 -->
3152 <profile>
3153 <id>snapshots-and-staging</id>
3154 <properties>
3155 <!-- override point for ASF staging/snapshot repos -->
3156 <asf.staging>https://repository.apache.org/content/groups/staging/</asf.staging>
3157 <asf.snapshots>https://repository.apache.org/content/repositories/snapshots/</asf.snapshots>
3158 </properties>
3159
3160 <pluginRepositories>
3161 <pluginRepository>
3162 <id>ASF Staging</id>
3163 <url>${asf.staging}</url>
3164 </pluginRepository>
3165 <pluginRepository>
3166 <id>ASF Snapshots</id>
3167 <url>${asf.snapshots}</url>
3168 <snapshots>
3169 <enabled>true</enabled>
3170 </snapshots>
3171 <releases>
3172 <enabled>false</enabled>
3173 </releases>
3174 </pluginRepository>
3175
3176 </pluginRepositories>
3177 <repositories>
3178 <repository>
3179 <id>ASF Staging</id>
3180 <url>${asf.staging}</url>
3181 </repository>
3182 <repository>
3183 <id>ASF Snapshots</id>
3184 <url>${asf.snapshots}</url>
3185 <snapshots>
3186 <enabled>true</enabled>
3187 </snapshots>
3188 <releases>
3189 <enabled>false</enabled>
3190 </releases>
3191 </repository>
3192 </repositories>
3193 </profile>
3194
3195 <!--
3196 These empty profiles are available in some sub-modules. Declare them here so that
3197 maven does not complain when they're provided on the command line for a sub-module
3198 that does not have them.
3199 -->
3200 <profile>
3201 <id>hadoop-provided</id>
3202 </profile>
3203 <profile>
3204 <id>hive-provided</id>
3205 </profile>
3206 <profile>
3207 <id>orc-provided</id>
3208 </profile>
3209 <profile>
3210 <id>parquet-provided</id>
3211 </profile>
3212 <profile>
3213 <id>sparkr</id>
3214 </profile>
3215 <!-- use org.openlabtesting.leveldbjni on aarch64 platform -->
3216 <profile>
3217 <id>aarch64</id>
3218 <properties>
3219 <leveldbjni.group>org.openlabtesting.leveldbjni</leveldbjni.group>
3220 </properties>
3221 </profile>
3222 </profiles>
3223 </project>