Création de fonctions Lambda avec Java - AWS Lambda

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Création de fonctions Lambda avec Java

Vous pouvez exécuter du code Java dans AWS Lambda. Lambda fournit des runtimes pour Java qui exécutent votre code afin de traiter des événements. Votre code s’exécute dans un environnement Amazon Linux incluant les informations d’identification AWS d’un rôle AWS Identity and Access Management (IAM) que vous gérez.

Lambda prend en charge les environnements d’exécution Java suivants.

Java
Nom Identifiant Système d’exploitation Date d'obsolescence Créer la fonction de blocage Mettre à jour la fonction de blocage

Java 21

java21

Amazon Linux 2023

Java 17

java17

Amazon Linux 2

Java 11

java11

Amazon Linux 2

Java 8

java8.al2

Amazon Linux 2

Lambda fournit les bibliothèques suivantes pour les fonctions Java :

Important

N'utilisez pas de composants privés de l'API JDK, tels que des champs privés, des méthodes ou des classes. Les composants d'API non publics peuvent être modifiés ou supprimés dans n'importe quelle mise à jour, ce qui peut entraîner l'interruption de votre application.

Pour créer une fonction Java
  1. Ouvrez la console Lambda.

  2. Sélectionnez Créer une fonction.

  3. Configurez les paramètres suivants :

    • Nom de la fonction : saisissez le nom de la fonction.

    • Exécution : choisissez Java 17.

  4. Sélectionnez Créer une fonction.

  5. Pour configurer un événement de test, choisissez Test.

  6. Dans Event name (Nom de l’événement), saisissez test.

  7. Sélectionnez Save Changes.

  8. Pour invoquer la fonction, choisissez Test.

La console crée une fonction Lambda avec une classe de gestionnaire nommée Hello. Étant donné que Java est un langage compilé, vous ne pouvez pas afficher ou modifier le code source dans la console Lambda, mais vous pouvez modifier sa configuration, l’invoquer et configurer des déclencheurs.

Note

Pour démarrer le développement d'applications dans votre environnement local, déployez l'un des exemples d'applications disponibles dans le GitHub référentiel de ce guide.

La classe Hello comporte une fonction nommée handleRequest qui accepte un objet d’événement et un objet de contexte. Il s’agit de la fonction de gestionnaire que Lambda appelle lors de l’invocation de la fonction. Le runtime de la fonction Java obtient les événements d’invocations à partir de Lambda et les transmet au gestionnaire. Dans la configuration de fonction, la valeur de gestionnaire est example.Hello::handleRequest.

Pour mettre à jour le code de la fonction, vous créez un package de déploiement, qui est une archive .zip contenant le code de votre fonction. Au fur et à mesure du développement de votre fonction, nous vous conseillons de stocker le code de votre fonction dans le contrôle de code source, d’ajouter des bibliothèques et d’automatiser les déploiements. Commencez par créer un package de déploiement et mettre à jour votre code dans la ligne de commande.

Le runtime de la fonction transmet un objet de contexte au gestionnaire, en plus de l’événement d’invocation. L’objet de contexte contient des informations supplémentaires sur l’invocation, la fonction et l’environnement d’exécution. Des informations supplémentaires sont disponibles dans les variables d’environnement.

Votre fonction Lambda est fournie avec un groupe de CloudWatch journaux Logs. La fonction runtime envoie les détails de chaque appel à CloudWatch Logs. Il relaie tous les journaux que votre fonction génère pendant l’invocation. Si votre fonction renvoie une erreur, Lambda met en forme l’erreur et la renvoie à l’appelant.