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" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
0020 <modelVersion>4.0.0</modelVersion>
0021 <parent>
0022 <groupId>org.apache.spark</groupId>
0023 <artifactId>spark-parent_2.12</artifactId>
0024 <version>3.0.0</version>
0025 <relativePath>../../pom.xml</relativePath>
0026 </parent>
0027
0028 <artifactId>spark-streaming-kinesis-asl-assembly_2.12</artifactId>
0029 <packaging>jar</packaging>
0030 <name>Spark Project Kinesis Assembly</name>
0031 <url>http://spark.apache.org/</url>
0032
0033 <properties>
0034 <sbt.project.name>streaming-kinesis-asl-assembly</sbt.project.name>
0035 </properties>
0036
0037 <dependencies>
0038 <dependency>
0039 <groupId>org.apache.spark</groupId>
0040 <artifactId>spark-streaming-kinesis-asl_${scala.binary.version}</artifactId>
0041 <version>${project.version}</version>
0042 </dependency>
0043 <dependency>
0044 <groupId>org.apache.spark</groupId>
0045 <artifactId>spark-streaming_${scala.binary.version}</artifactId>
0046 <version>${project.version}</version>
0047 <scope>provided</scope>
0048 </dependency>
0049 <!--
0050 Demote already included in the Spark assembly.
0051 -->
0052 <dependency>
0053 <groupId>com.fasterxml.jackson.core</groupId>
0054 <artifactId>jackson-databind</artifactId>
0055 <scope>provided</scope>
0056 </dependency>
0057 <dependency>
0058 <groupId>commons-lang</groupId>
0059 <artifactId>commons-lang</artifactId>
0060 <scope>provided</scope>
0061 </dependency>
0062 <dependency>
0063 <groupId>com.google.protobuf</groupId>
0064 <artifactId>protobuf-java</artifactId>
0065 <version>2.6.1</version>
0066 <!--
0067 We are being explicit about version here and overriding the
0068 spark default of 2.5.0 because KCL appears to have introduced
0069 a dependency on protobuf 2.6.1 somewhere between KCL 1.4.0 and 1.6.1.
0070 -->
0071 </dependency>
0072 <dependency>
0073 <groupId>org.glassfish.jersey.core</groupId>
0074 <artifactId>jersey-client</artifactId>
0075 <scope>provided</scope>
0076 </dependency>
0077 <dependency>
0078 <groupId>org.glassfish.jersey.core</groupId>
0079 <artifactId>jersey-common</artifactId>
0080 <scope>provided</scope>
0081 </dependency>
0082 <dependency>
0083 <groupId>org.glassfish.jersey.core</groupId>
0084 <artifactId>jersey-server</artifactId>
0085 <scope>provided</scope>
0086 </dependency>
0087 <dependency>
0088 <groupId>log4j</groupId>
0089 <artifactId>log4j</artifactId>
0090 <scope>provided</scope>
0091 </dependency>
0092 <dependency>
0093 <groupId>org.apache.hadoop</groupId>
0094 <artifactId>hadoop-client</artifactId>
0095 <scope>provided</scope>
0096 </dependency>
0097 <dependency>
0098 <groupId>org.apache.avro</groupId>
0099 <artifactId>avro-ipc</artifactId>
0100 <scope>provided</scope>
0101 </dependency>
0102 <dependency>
0103 <groupId>org.apache.avro</groupId>
0104 <artifactId>avro-mapred</artifactId>
0105 <classifier>${avro.mapred.classifier}</classifier>
0106 <scope>provided</scope>
0107 </dependency>
0108 <dependency>
0109 <groupId>org.apache.curator</groupId>
0110 <artifactId>curator-recipes</artifactId>
0111 <scope>provided</scope>
0112 </dependency>
0113 <dependency>
0114 <groupId>org.apache.zookeeper</groupId>
0115 <artifactId>zookeeper</artifactId>
0116 <scope>provided</scope>
0117 </dependency>
0118 <dependency>
0119 <groupId>org.slf4j</groupId>
0120 <artifactId>slf4j-api</artifactId>
0121 <scope>provided</scope>
0122 </dependency>
0123 <dependency>
0124 <groupId>org.slf4j</groupId>
0125 <artifactId>slf4j-log4j12</artifactId>
0126 <scope>provided</scope>
0127 </dependency>
0128 <dependency>
0129 <groupId>org.xerial.snappy</groupId>
0130 <artifactId>snappy-java</artifactId>
0131 <scope>provided</scope>
0132 </dependency>
0133 </dependencies>
0134
0135 <build>
0136 <outputDirectory>target/scala-${scala.binary.version}/classes</outputDirectory>
0137 <testOutputDirectory>target/scala-${scala.binary.version}/test-classes</testOutputDirectory>
0138 <plugins>
0139 <!-- SPARK-17418: prevent the kinesis-asl-assembly from being published to Maven -->
0140 <plugin>
0141 <groupId>org.apache.maven.plugins</groupId>
0142 <artifactId>maven-deploy-plugin</artifactId>
0143 <configuration>
0144 <skip>true</skip>
0145 </configuration>
0146 </plugin>
0147 <plugin>
0148 <groupId>org.apache.maven.plugins</groupId>
0149 <artifactId>maven-install-plugin</artifactId>
0150 <configuration>
0151 <skip>true</skip>
0152 </configuration>
0153 </plugin>
0154 <plugin>
0155 <groupId>org.apache.maven.plugins</groupId>
0156 <artifactId>maven-shade-plugin</artifactId>
0157 <configuration>
0158 <shadedArtifactAttached>false</shadedArtifactAttached>
0159 <artifactSet>
0160 <includes>
0161 <include>*:*</include>
0162 </includes>
0163 </artifactSet>
0164 <relocations>
0165 <relocation>
0166 <pattern>com.google.protobuf</pattern>
0167 <shadedPattern>kinesis.protobuf</shadedPattern>
0168 <includes>
0169 <include>com.google.protobuf.**</include>
0170 </includes>
0171 </relocation>
0172 </relocations>
0173 <filters>
0174 <filter>
0175 <artifact>*:*</artifact>
0176 <excludes>
0177 <exclude>META-INF/*.SF</exclude>
0178 <exclude>META-INF/*.DSA</exclude>
0179 <exclude>META-INF/*.RSA</exclude>
0180 </excludes>
0181 </filter>
0182 </filters>
0183 </configuration>
0184 <executions>
0185 <execution>
0186 <phase>package</phase>
0187 <goals>
0188 <goal>shade</goal>
0189 </goals>
0190 <configuration>
0191 <transformers>
0192 <transformer implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"/>
0193 <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
0194 <resource>reference.conf</resource>
0195 </transformer>
0196 <transformer implementation="org.apache.maven.plugins.shade.resource.DontIncludeResourceTransformer">
0197 <resource>log4j.properties</resource>
0198 </transformer>
0199 <transformer implementation="org.apache.maven.plugins.shade.resource.ApacheLicenseResourceTransformer"/>
0200 <transformer implementation="org.apache.maven.plugins.shade.resource.ApacheNoticeResourceTransformer"/>
0201 </transformers>
0202 </configuration>
0203 </execution>
0204 </executions>
0205 </plugin>
0206 </plugins>
0207 </build>
0208 </project>
0209