Потоковая передача Java KCL SPark не может импортировать org.apache.spark.streaming.kinesis

#java #amazon-web-services #apache-spark #amazon-kinesis #amazon-kinesis-agent

#java #amazon-web-services #apache-spark #amazon-kinesis #amazon-kinesis-agent

Вопрос:

Здравствуйте, ребята, я пытаюсь выполнить KCL в потоковом задании Spark, я создал первый черновик проекта, и вместе со своими зависимостями я мог бы импортировать несколько пакетов. Однако есть пакет, org.apache.spark.streaming.kinesis который, несмотря на то, что он включен в мой POM.xml не импортирует его.

Мой pom.xml:

 <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/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.streaming.sparkdemo</groupId>
  <artifactId>spark-demo</artifactId>
  <packaging>jar</packaging>
  <version>1.0-SNAPSHOT</version>
  <name>spark-demo</name>
  <url>http://maven.apache.org</url>

  <dependencies>

  <!-- Import Spark -->
    <dependency>
        <groupId>org.apache.spark</groupId>
        <artifactId>spark-core_2.11</artifactId>
        <version>1.4.0</version>
    </dependency>

    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>

    <dependency>
    <groupId>com.amazonaws</groupId>
    <artifactId>aws-java-sdk</artifactId>
    <version>1.11.78</version>  
  </dependency>

  <!-- https://mvnrepository.com/artifact/org.apache.spark/spark-streaming -->
<dependency>
    <groupId>org.apache.spark</groupId>
    <artifactId>spark-streaming_2.11</artifactId>
    <version>2.3.0</version>
    <scope>provided</scope>
</dependency>


  <dependency>
      <groupId>com.amazonaws</groupId>
      <artifactId>amazon-kinesis-client</artifactId>
      <version>1.9.3</version>
</dependency>


  </dependencies>



</project>
  

Однако после сборки я получаю это ужасное сообщение из моего импорта:

введите описание изображения здесь

Ответ №1:

Я решил эту проблему, включив пакет интеграции ASL Kinesis в мой POM.XML

https://mvnrepository.com/artifact/org.apache.spark/spark-streaming-kinesis-asl_2.11/2.3.0

 <!-- https://mvnrepository.com/artifact/org.apache.spark/spark-streaming-kinesis-asl -->
<dependency>
    <groupId>org.apache.spark</groupId>
    <artifactId>spark-streaming-kinesis-asl_2.11</artifactId>
    <version>2.3.0</version>
</dependency>