【问题标题】:Kinesis to s3 bucket using Kinesis Connector使用 Kinesis 连接器到 s3 存储桶的 Kinesis
【发布时间】:2015-10-22 12:14:16
【问题描述】:

使用 kinesis 连接器库从 kinesis 访问 s3 存储桶时出现以下错误。 我使用了以下链接中的示例

https://github.com/awslabs/amazon-kinesis-connectors/tree/master/src/main/samples

信息:流 twitterStreamNew 处于活动状态 2015 年 10 月 16 日下午 3:45:00 com.yash.KinesisConnectorExecutor setupInputStream INFO:开始流源。 线程“主”java.lang.NoClassDefFoundError 中的异常:com/amazonaws/transform/JsonErrorUnmarshallerV2 在 com.amazonaws.services.dynamodbv2.AmazonDynamoDBClient.init(AmazonDynamoDBClient.java:387) 在 com.amazonaws.services.dynamodbv2.AmazonDynamoDBClient.(AmazonDynamoDBClient.java:383) 在 com.amazonaws.services.dynamodbv2.AmazonDynamoDBClient.(AmazonDynamoDBClient.java:357) 在 com.amazonaws.services.kinesis.clientlibrary.lib.worker.Worker.(Worker.java:109) 在 com.amazonaws.services.kinesis.clientlibrary.lib.worker.Worker.(Worker.java:94) 在 com.amazonaws.services.kinesis.connectors.KinesisConnectorExecutorBase.initialize(KinesisConnectorExecutorBase.java:84) 在 com.amazonaws.services.kinesis.connectors.KinesisConnectorExecutorBase.initialize(KinesisConnectorExecutorBase.java:37) 在 com.example.KinesisConnectorExecutor。 (KinesisConnectorExecutor.java:110) 在 com.example.S3Executor.(S3Executor.java:19) 在 com.example.S3Executor.main(S3Executor.java:34) 引起:java.lang.ClassNotFoundException:com.amazonaws.transform.JsonErrorUnmarshallerV2 在 java.net.URLClassLoader.findClass(未知来源) 在 java.lang.ClassLoader.loadClass(未知来源) 在 sun.misc.Launcher$AppClassLoader.loadClass(未知来源) 在 java.lang.ClassLoader.loadClass(未知来源) ... 10 更多

【问题讨论】:

    标签: amazon-web-services amazon-s3 amazon-kinesis


    【解决方案1】:

    有同样的错误 - 仅仅是由于库版本冲突。

    将您的 kinesis 连接器库和 aws java sdk 更新到 POM 中的最新版本。

        <dependency>
            <groupId>com.amazonaws</groupId>
            <artifactId>aws-java-sdk</artifactId>
            <version>1.10.27</version>
        </dependency>
    
        <dependency>
            <groupId>com.amazonaws</groupId>
            <artifactId>amazon-kinesis-connectors</artifactId>
            <version>1.2.0</version>
        </dependency>
    

    【讨论】:

    • 我更新了我的 pom,即使我有同样的错误。我在我的 pom 中使用以下依赖项进行 kineis-s3 连接 1)amazon-kinesis 连接器 - 1.2.0 (2)amazon- kinesis-producer - 0.10.1 (3)aws-java-sdk - 1.10.27 (4)aws-java-sdk-dynamodb - 1.10.27 (5)aws-java-sdk-s3 - 1.10.27 (6) com.fasterxml.jackson.core - 2.6.3.我需要添加任何其他依赖项吗??
    • 尝试将aws-java-sdk 排在第一位,amazon-kinesis-connectors 排在第二位,然后运行maven clean。您也不需要 dynamodb 和 s3 库,因为它们包含在主包中。如果您仍然没有运气,请发布您的 POM。也只是为了确认,这个错误是当您尝试接收消息时,而不是产生它们?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-14
    • 1970-01-01
    • 1970-01-01
    • 2020-07-26
    • 2014-08-05
    • 2018-10-24
    相关资源
    最近更新 更多