Comience con el SDK para Kotlin - AWS SDK para Kotlin

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Comience con el SDK para Kotlin

AWS SDK para Kotlin Proporciona Kotlin APIs para cada uno Servicio de AWS. Con el SDK, puede crear aplicaciones de Kotlin que funcionen con Amazon S3, Amazon EC2, Amazon DynamoDB y más.

En este tutorial, se muestra cómo usar Gradle para definir las dependencias de. AWS SDK para Kotlin A continuación, se crea un código que escribe los datos en una tabla de DynamoDB. Si bien es posible que desee utilizar las funciones de un IDE, todo lo que necesita para este tutorial es una ventana de terminal y un editor de texto.

Para completar el tutorial, siga estos pasos:

Paso 1: Configuración para este tutorial

Antes de comenzar este tutorial, necesita un conjunto de permisos del IAM Identity Center que pueda acceder a DynamoDB y necesita un entorno de desarrollo de Kotlin configurado con la configuración de inicio de sesión único de IAM Identity Center al que acceder. AWS

Siga las instrucciones de esta guía para obtener Configuración básica la configuración básica de este tutorial.

Una vez que hayas configurado tu entorno de desarrollo con acceso de inicio de sesión único para el SDK de Kotlin y tengas una sesión activa en el portal de AWS acceso, continúa con el paso 2.

Paso 2: Crear el proyecto

Para crear el proyecto de este tutorial, primero usa Gradle para crear los archivos básicos de un proyecto de Kotlin. Luego, actualiza los archivos con la configuración, las dependencias y el código necesarios para el. AWS SDK para Kotlin

Para crear un proyecto nuevo con Gradle

nota

En este tutorial, se usa la versión 8.11.1 de Gradle con el gradle init comando, que ofrece cinco instrucciones en el paso 3 que se muestra a continuación. Si utilizas una versión diferente de Gradle, es posible que las instrucciones difieran, al igual que las versiones preconfiguradas de los artefactos.

  1. Crea un nuevo directorio llamado getstarted en la ubicación que elijas, como el escritorio o la carpeta principal.

  2. Abre una ventana de terminal o línea de comandos y navega hasta el getstarted directorio que has creado.

  3. Usa el siguiente comando para crear un nuevo proyecto de Gradle y una clase básica de Kotlin.

    gradle init --type kotlin-application --dsl kotlin
    • Cuando se te pida el objetivoJava version, presiona Enter (el valor predeterminado es). 21

    • Cuando se le pidaProject name, presione Enter (el valor predeterminado es el nombre del directorio, getstarted en este tutorial).

    • Cuando se le pidaapplication structure, presione Enter (el valor predeterminado es). Single application project

    • Cuando se le soliciteSelect test framework, pulse Enter (por defecto es). kotlin.test

    • Cuando se le pidaGenerate build using new APIs and behavior, pulse Enter (por defecto es). no

Para configurar su proyecto con dependencias para Amazon S3 AWS SDK para Kotlin y Amazon S3

  • En el getstarted directorio que creó en el procedimiento anterior, sustituya el contenido del settings.gradle.kts archivo por el siguiente contenido y X.Y.Z sustitúyalo por la última versión del SDK para Kotlin:

    dependencyResolutionManagement { repositories { mavenCentral() } versionCatalogs { create("awssdk") { from("aws.sdk.kotlin:version-catalog:X.Y.Z") } } } plugins { // Apply the foojay-resolver plugin to allow automatic download of JDKs. id("org.gradle.toolchains.foojay-resolver-convention") version "0.8.0" } rootProject.name = "getstarted" include("app")
  • Navega hasta el gradle directorio que se encuentra dentro del getstarted directorio. Sustituya el contenido del archivo de catálogo de versiones denominado libs.versions.toml por el siguiente contenido:

    [versions] junit-jupiter-engine = "5.10.3" [libraries] junit-jupiter-engine = { module = "org.junit.jupiter:junit-jupiter-engine", version.ref = "junit-jupiter-engine" } [plugins] kotlin-jvm = { id = "org.jetbrains.kotlin.jvm", version = "2.1.0" }
  • Vaya al directorio app y abra el archivo build.gradle.kts. Sustituya el contenido por el siguiente código y, a continuación, guarde los cambios.

    plugins { alias(libs.plugins.kotlin.jvm) application } dependencies { implementation(awssdk.services.s3) // Add dependency on the AWS SDK para Kotlin's S3 client. testImplementation("org.jetbrains.kotlin:kotlin-test-junit5") testImplementation(libs.junit.jupiter.engine) testRuntimeOnly("org.junit.platform:junit-platform-launcher") } java { toolchain { languageVersion = JavaLanguageVersion.of(21) } } application { mainClass = "org.example.AppKt" } tasks.named<Test>("test") { useJUnitPlatform() }

    La dependencies sección contiene una implementation entrada para el módulo Amazon S3 del AWS SDK para Kotlin. El compilador de Gradle está configurado para usar Java 2.1 en la java sección.

Paso 3: Escribir el código

Una vez creado y configurado el proyecto, edita la clase predeterminada del proyecto App para usar el siguiente código de ejemplo.

  1. En la carpeta del proyectoapp, navegue hasta el directoriosrc/main/kotlin/org/example. Abra el archivo App.kt.

  2. Sustituya su contenido por el siguiente código y guarde el archivo.

    package org.example import aws.sdk.kotlin.services.s3.* import aws.sdk.kotlin.services.s3.model.BucketLocationConstraint import aws.smithy.kotlin.runtime.content.ByteStream import kotlinx.coroutines.runBlocking import java.util.UUID val REGION = "us-west-2" val BUCKET = "bucket-${UUID.randomUUID()}" val KEY = "key" fun main(): Unit = runBlocking { S3Client .fromEnvironment { region = REGION } .use { s3 -> setupTutorial(s3) println("Creating object $BUCKET/$KEY...") s3.putObject { bucket = BUCKET key = KEY body = ByteStream.fromString("Testing with the Kotlin SDK") } println("Object $BUCKET/$KEY created successfully!") cleanUp(s3) } } suspend fun setupTutorial(s3: S3Client) { println("Creating bucket $BUCKET...") s3.createBucket { bucket = BUCKET if (REGION != "us-east-1") { // Do not set location constraint for us-east-1. createBucketConfiguration { locationConstraint = BucketLocationConstraint.fromValue(REGION) } } } println("Bucket $BUCKET created successfully!") } suspend fun cleanUp(s3: S3Client) { println("Deleting object $BUCKET/$KEY...") s3.deleteObject { bucket = BUCKET key = KEY } println("Object $BUCKET/$KEY deleted successfully!") println("Deleting bucket $BUCKET...") s3.deleteBucket { bucket = BUCKET } println("Bucket $BUCKET deleted successfully!") }

Paso 4: Compilar y ejecutar la aplicación

Una vez creado el proyecto y que contenga la clase de ejemplo, compile y ejecute la aplicación.

  1. Abra una ventana de terminal o símbolo del sistema y desplácese hasta el directorio del proyecto getstarted.

  2. Use el siguiente comando para compilar y ejecutar la aplicación:

    gradle run
nota

Si obtiene unaIdentityProviderException, es posible que no tenga una sesión de inicio de sesión único activa. Ejecute el comando aws sso login AWS CLI para iniciar una nueva sesión.

La aplicación llama a la operación de la API CreateBucket para crear un nuevo depósito de S3 y, a continuación, llama a PutObject para colocar un objeto nuevo en el nuevo depósito de S3.

Al final de la cleanUp() función, la aplicación elimina el objeto y, a continuación, elimina el depósito de S3.

Para ver los resultados en la consola de Amazon S3

  1. DentroApp.kt, comente la línea cleanUp(s3) de la runBlocking sección y guarde el archivo.

  2. Reconstruya el proyecto y coloque un objeto nuevo en un nuevo depósito de S3 ejecutandogradle run.

  3. Inicie sesión en la consola de Amazon S3 para ver el nuevo objeto en el nuevo bucket de S3.

Después de ver el objeto, elimine el bucket de S3.

Success

Si tu proyecto de Gradle se creó y se ejecutó sin errores, enhorabuena. Creaste correctamente tu primera aplicación de Kotlin con. AWS SDK para Kotlin

Limpieza

Cuando haya terminado de desarrollar su nueva aplicación, elimine todos AWS los recursos que haya creado durante este tutorial para evitar incurrir en cargos. Es posible que también desee eliminar o archivar la carpeta del proyecto (get-started) que creó en el paso 2.

Siga estos pasos para limpiar los recursos:

  • Si ha comentado la llamada a la cleanUp() función, elimine el bucket de S3 mediante la consola de Amazon S3.

Pasos a seguir a continuación

Ahora que ya ha aprendido lo básico, puede aprender lo siguiente: