diff --git a/external/kinesis-asl-assembly/pom.xml b/external/kinesis-asl-assembly/pom.xml index e057b78abdc8c9359ae7d2bb320fbfe4dbb2c71d..6fb88ebae5b32bb106790e27169718ad61b9b7e8 100644 --- a/external/kinesis-asl-assembly/pom.xml +++ b/external/kinesis-asl-assembly/pom.xml @@ -63,7 +63,12 @@ <dependency> <groupId>com.google.protobuf</groupId> <artifactId>protobuf-java</artifactId> - <scope>provided</scope> + <version>2.6.1</version> + <!-- + We are being explicit about version here and overriding the + spark default of 2.5.0 because KCL appears to have introduced + a dependency on protobuf 2.6.1 somewhere between KCL 1.4.0 and 1.6.1. + --> </dependency> <dependency> <groupId>org.glassfish.jersey.core</groupId> @@ -147,6 +152,15 @@ <include>*:*</include> </includes> </artifactSet> + <relocations> + <relocation> + <pattern>com.google.protobuf</pattern> + <shadedPattern>kinesis.protobuf</shadedPattern> + <includes> + <include>com.google.protobuf.**</include> + </includes> + </relocation> + </relocations> <filters> <filter> <artifact>*:*</artifact>