Créer votre première fonction avec Java et EclipseCreate your first function with Java and Eclipse

Cet article vous explique comment créer un projet de fonction serverless avec l’environnement de développement intégré (IDE) Eclipse et Apache Maven, comment le tester et le déboguer, puis comment le déployer sur Azure Functions.This article shows you how to create a serverless function project with the Eclipse IDE and Apache Maven, test and debug it, then deploy it to Azure Functions.

Si vous n’avez pas d’abonnement Azure, créez un compte gratuit avant de commencer.If you don't have an Azure subscription, create a free account before you begin.

Configuration de l'environnement de développementSet up your development environment

Pour développer une application de fonction avec Java et Eclipse, vous devez avoir installé les éléments suivants :To develop a functions app with Java and Eclipse, you must have the following installed:

Important

Pour pouvoir effectuer ce démarrage rapide, vous devez définir la variable d’environnement JAVA_HOME sur l’emplacement d’installation du JDK.The JAVA_HOME environment variable must be set to the install location of the JDK to complete this quickstart.

Il est vivement recommandé d’installer également Azure Functions Core Tools, version 2, qui offre un environnement local pour l’exécution et le débogage d’Azure Functions.It's highly recommended to also install Azure Functions Core Tools, version 2, which provide a local environment for running and debugging Azure Functions.

Créer un projet FunctionsCreate a Functions project

  1. Dans Eclipse, sélectionnez le menu Fichier, puis Nouveau -> Projet Maven.In Eclipse, select the File menu, then select New -> Maven Project.
  2. Acceptez les valeurs par défaut de la boîte de dialogue Nouveau projet Maven, puis sélectionnez Suivant.Accept the defaults in the New Maven Project dialogue and select Next.
  3. Sélectionnez Add Archetype (Ajouter un archétype), puis ajoutez les entrées pour azure-functions-archetype.Select Add Archetype and add the entries for the azure-functions-archetype.
    • Archetype Group ID (ID de groupe d’archétypes) : com.microsoft.azureArchetype Group ID: com.microsoft.azure
    • Archetype Artifact ID (ID d’artefact d’archétype) : azure-functions-archetypeArchetype Artifact ID: azure-functions-archetype
    • Version : Utilisez la version 1.22 la plus récente du référentiel central Création de projet Maven dans EclipseVersion: Use latest version 1.22 from the central repository Eclipse Maven create
  4. Cliquez sur OK, puis sur Suivant.Click OK and then click Next. Veillez à renseigner les valeurs de tous les champs, y compris resourceGroup, appNameet appRegion (utilisez un appName différent de Fabrikam-Function-20170920120101928), puis Terminer.Be sure to fill in values for all of the fields including resourceGroup, appName, and appRegion (please use a different appName other than fabrikam-function-20170920120101928), and eventually Finish. Création de projet Maven dans Eclipse2Eclipse Maven create2

Maven crée les fichiers projet dans un nouveau dossier avec le nom de artifactId.Maven creates the project files in a new folder with a name of artifactId. Le code généré dans le projet est une fonction simple déclenchée par HTTP qui retourne le corps de la demande HTTP à l’origine du déclenchement.The generated code in the project is a simple HTTP triggered function that echoes the body of the triggering HTTP request.

Exécuter des fonctions localement dans l’IDERun functions locally in the IDE

Notes

Azure Functions Core Tools, version 2 doit être installé pour pouvoir exécuter et déboguer des fonctions localement.Azure Functions Core Tools, version 2 must be installed to run and debug functions locally.

  1. Cliquez avec le bouton droit sur le projet généré, puis choisissez Exécuter en tant que et Build Maven.Right-click on the generated project, then choose Run As and Maven build.
  2. Dans la boîte de dialogue Edit Configuration (Modifier la configuration), entrez package dans les champs Goals (Objectifs) et Nom, puis sélectionnez Exécuter.In the Edit Configuration dialog, Enter package in the Goals and Name fields, then select Run. Cette opération entraîne la génération et l’empaquetage du code de fonction.This will build and package the function code.
  3. Une fois la génération terminée, créez une autre configuration Exécuter comme ci-dessus, en utilisant azure-functions:run en tant qu’objectif et que nom.Once the build is complete, create another Run configuration as above, using azure-functions:run as the goal and name. Sélectionnez Exécuter pour exécuter la fonction dans l’IDE.Select Run to run the function in the IDE.

Lorsque vous avez fini de tester votre fonction, terminez le runtime dans la fenêtre de console.Terminate the runtime in the console window when you're done testing your function. Un seul hôte de fonction à la fois peut être actif et en cours d’exécution localement.Only one function host can be active and running locally at a time.

Déboguer la fonction dans EclipseDebug the function in Eclipse

Dans votre configuration Exécuter en tant que définie à l’étape précédente, remplacez azure-functions:run par azure-functions:run -DenableDebug, puis exécutez la configuration mise à jour pour démarrer l’application de fonction en mode débogage.In your Run As configuration set up in the previous step, change azure-functions:run to azure-functions:run -DenableDebug and run the updated configuration to start the function app in debug mode.

Sélectionnez le menu Exécuter, puis ouvrez Déboguer les configurations.Select the Run menu and open Debug Configurations. Choisissez Application Java distante et créez une configuration.Choose Remote Java Application and create a new one. Donnez un nom à votre configuration et renseignez les paramètres.Give your configuration a name and fill in the settings. Le port doit être cohérent avec le port de débogage ouvert par l’hôte de fonction, qui correspond par défaut à 5005.The port should be consistent with the debug port opened by function host, which by default is 5005. Après la configuration, cliquez sur Debug pour démarrer le débogage.After setup, click on Debug to start debugging.

Débogage de fonctions dans Eclipse

Définissez des points d’arrêt et inspectez les objets de votre fonction à l’aide de l’IDE.Set breakpoints and inspect objects in your function using the IDE. Quand vous avez terminé, arrêtez le débogueur et l’hôte de fonction en cours d’exécution.When finished, stop the debugger and the running function host. Un seul hôte de fonction à la fois peut être actif et en cours d’exécution localement.Only one function host can be active and running locally at a time.

Déployer la fonction sur AzureDeploy the function to Azure

Le processus de déploiement sur Azure Functions utilise les informations d’identification du compte provenant d’Azure CLI.The deploy process to Azure Functions uses account credentials from the Azure CLI. Connectez-vous avec Azure CLI avant de continuer en utilisant l’invite de commandes de votre ordinateur.Log in with the Azure CLI before continuing using your computer's command prompt.

az login

Déployez votre code dans une nouvelle application de fonction en utilisant l’objectif Maven azure-functions:deploy dans une nouvelle configuration Exécuter en tant que.Deploy your code into a new Function app using the azure-functions:deploy Maven goal in a new Run As configuration.

Quand le déploiement est terminé, vous voyez l’URL que vous pouvez utiliser pour accéder à votre application de fonction Azure :When the deploy is complete, you see the URL you can use to access your Azure function app:

[INFO] Successfully deployed Function App with package.
[INFO] Deleting deployment package from Azure Storage...
[INFO] Successfully deleted deployment package fabrikam-function-20170920120101928.20170920143621915.zip
[INFO] Successfully deployed Function App at https://fabrikam-function-20170920120101928.azurewebsites.net
[INFO] ------------------------------------------------------------------------

Étapes suivantesNext steps

  • Pour plus d’informations sur le développement de fonctions Java, consultez le Guide du développeur de fonctions Java.Review the Java Functions developer guide for more information on developing Java functions.
  • Ajoutez des fonctions supplémentaires avec différents déclencheurs à votre projet en utilisant la cible Maven azure-functions:add.Add additional functions with different triggers to your project using the azure-functions:add Maven target.