这是我的代码
KinesisClient kinesisClient = KinesisClient.builder().build();
PutRecordRequest putRecordRequest = new PutRecordRequest();
putRecordRequest.setStreamName("stream-name");
putRecordRequest.setPartitionKey("SomeString-" + UUID.randomUUID());
putRecordRequest.setData(ByteBuffer.wrap(data));
PutRecordResponse putRecordResponse = kinesisClient.putRecord(putRecordRequest);
由于一些奇怪的原因,它说它不能解析putRecord(PutRecordRequest)
方法,即使当我查看反编译的jar文件时,它显然在那里。当我开始输入它时,它甚至会自动完成该方法。
这里会出什么问题?
2条答案
按热度按时间gg58donl1#
要使用AWS服务和Java,最好的做法是使用AWS SDK for Java V2。软件包**。amazon.awssdk.services.kinesis.型号**为V2。您使用的是V1,不建议使用此AWS页面上的指定:
AWS SDK代码示例
此操作的完整Java V2代码示例为:
您可以在AWS代码库中找到此AWS SDK for Java V2示例:
Kinesis examples using SDK for Java 2.x
如果您更喜欢使用Github,这里是所有AWS Java V2代码示例的位置:
https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/javav2
w8f9ii692#
我想明白了由于某种原因,我在我的项目中使用了
com.amazonaws.services.kinesis.model
和software.amazon.awssdk.services.kinesis.model
。我使用的是一个包中的KinesisClient
和另一个包中的PutRecordRequest
。