As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Migrar da KPL 0.x para a KPL 1.x
Este tópico fornece instruções passo a passo para migrar seu consumidor da KPL 0.x para a KPL 1.x. A KPL 1.x introduz suporte para o AWS SDK para Java 2.x, mantendo a compatibilidade da interface com as versões anteriores. Não é necessário atualizar sua lógica de processamento dos dados principais para migrar para a KPL 1.x.
-
Você deve atender aos seguintes pré-requisitos:
-
Java Development Kit (JDK) 8 ou posterior
-
AWS SDK para Java 2.x
-
Maven ou Gradle para gerenciamento de dependências
-
-
Adicionar dependências
Se estiver usando Maven, adicione a dependência a seguir ao arquivo pom.xml. Atualize groupid de
com.amazonawsparasoftware.amazon.kinesise a versão1.x.xpara a versão mais recente da KPL.<dependency> <groupId>software.amazon.kinesis</groupId> <artifactId>amazon-kinesis-producer</artifactId> <version>1.x.x</version> <!-- Use the latest version --> </dependency>Se você estiver usando Gradle, adicione o seguinte ao seu arquivo
build.gradle. Substitua1.x.xpela versão mais recente da KPL.implementation 'software.amazon.kinesis:amazon-kinesis-producer:1.x.x'A versão mais recente da KPL pode ser obtida no Repositório central do Maven
. -
Atualizar as instruções de importação para a KPL
A KPL 1.x usa o AWS SDK para Java 2.x e usa um nome de pacote atualizado que começa com
software.amazon.kinesis, em comparação com o nome do pacote na KPL anterior que começa comcom.amazonaws.services.kinesis.Substitua a importação de
com.amazonaws.services.kinesisporsoftware.amazon.kinesis. A tabela a seguir relaciona as importações que você deve substituir.Substituições de importações Substitua: Por: importar com.amazonaws.services.kinesis.producer.Attempt;
importar software.amazon.kinesis.producer.Attempt;
importar com.amazonaws.services.kinesis.producer.BinaryToHexConverter;
importar software.amazon.kinesis.producer.BinaryToHexConverter;
importar com.amazonaws.services.kinesis.producer.CertificateExtractor;
importar software.amazon.kinesis.producer.CertificateExtractor;
importar com.amazonaws.services.kinesis.producer.Daemon;
importar software.amazon.kinesis.producer.Daemon;
importar com.amazonaws.services.kinesis.producer.DaemonException;
importar software.amazon.kinesis.producer.DaemonException;
importar com.amazonaws.services.kinesis.producer.FileAgeManager;
importar software.amazon.kinesis.producer.FileAgeManager;
importar com.amazonaws.services.kinesis.producer.FutureTimedOutException;
importar software.amazon.kinesis.producer.FutureTimedOutException;
importar com.amazonaws.services.kinesis.producer.GlueSchemaRegistrySerializerInstance;
importar software.amazon.kinesis.producer.GlueSchemaRegistrySerializerInstance;
importar com.amazonaws.services.kinesis.producer.HashedFileCopier;
importar software.amazon.kinesis.producer.HashedFileCopier;
importar com.amazonaws.services.kinesis.producer.IKinesisProducer;
importar software.amazon.kinesis.producer.IKinesisProducer;
importar com.amazonaws.services.kinesis.producer.IrrecoverableError;
importar software.amazon.kinesis.producer.IrrecoverableError;
importar com.amazonaws.services.kinesis.producer.KinesisProducer;
importar software.amazon.kinesis.producer.KinesisProducer;
importar com.amazonaws.services.kinesis.producer.KinesisProducerConfiguration;
importar software.amazon.kinesis.producer.KinesisProducerConfiguration;
importar com.amazonaws.services.kinesis.producer.LogInputStreamReader;
importar software.amazon.kinesis.producer.LogInputStreamReader;
importar com.amazonaws.services.kinesis.producer.Metric;
importar software.amazon.kinesis.producer.Metric;
importar com.amazonaws.services.kinesis.producer.ProcessFailureBehavior;
importar software.amazon.kinesis.producer.ProcessFailureBehavior;
importar com.amazonaws.services.kinesis.producer.UnexpectedMessageException;
importar software.amazon.kinesis.producer.UnexpectedMessageException;
importar com.amazonaws.services.kinesis.producer.UserRecord;
importar software.amazon.kinesis.producer.UserRecord;
importar com.amazonaws.services.kinesis.producer.UserRecordFailedException;
importar software.amazon.kinesis.producer.UserRecordFailedException;
importar com.amazonaws.services.kinesis.producer.UserRecordResult;
importar software.amazon.kinesis.producer.UserRecordResult;
importar com.amazonaws.services.kinesis.producer.protobuf.Messages;
importar software.amazon.kinesis.producer.protobuf.Messages;
importar com.amazonaws.services.kinesis.producer.protobuf.Config;
importar software.amazon.kinesis.producer.protobuf.Config;
-
Atualizar instruções de importação para classes de provedores de credenciais da AWS
Ao migrar para a KPL 1.x, você deve atualizar pacotes e classes de importações no código da aplicação KPL baseados em AWS SDK para Java 1.x para os pacotes e classes correspondentes baseados em AWS SDK para Java 2.x. As importações comuns na aplicação KPL são classes de provedores de credenciais. Consulte Alterações no provedor de credenciais na documentação do guia de migração do AWS SDK para Java 2.x para obter a lista completa de alterações no provedor de credenciais. Aqui está a alteração comum de importação que talvez você precise fazer em suas aplicações KPL.
Importação na KPL 0.x
import com.amazonaws.auth.DefaultAWSCredentialsProviderChain;Importação na KPL 1.x
import software.amazon.awssdk.auth.credentials.DefaultCredentialsProvider;Se importar outros provedores de credenciais com base no AWS SDK para Java 1.x, você precisará atualizá-los para os equivalentes do AWS SDK para Java 2.x. Se não importou nenhuma classe/pacote do AWS SDK para Java 1.x, você pode ignorar essa etapa.
-
Atualize a configuração do provedor de credenciais na configuração da KPL
A configuração do provedor de credenciais na KPL 1.x requer os provedores de credenciais do AWS SDK para Java 2.x. Se estiver passando provedores de credenciais para o AWS SDK para Java 1.x na
KinesisProducerConfigurationsubstituindo o provedor de credenciais padrão, você precisará atualizá-lo com os provedores de credenciais do AWS SDK para Java 2.x. Consulte Alterações no provedor de credenciais na documentação do guia de migração do AWS SDK para Java 2.x para obter a lista completa de alterações no provedor de credenciais. Se não substituiu o provedor de credenciais padrão na configuração da KPL, você pode ignorar essa etapa.Por exemplo, se você estiver substituindo o provedor de credenciais padrão da KPL com o seguinte código:
KinesisProducerConfiguration config = new KinesisProducerConfiguration(); // SDK v1 default credentials provider config.setCredentialsProvider(new DefaultAWSCredentialsProviderChain());Você deve atualizá-lo com o código a seguir para usar o provedor de credenciais do AWS SDK para Java 2.x:
KinesisProducerConfiguration config = new KinesisProducerConfiguration(); // New SDK v2 default credentials provider config.setCredentialsProvider(DefaultCredentialsProvider.create());