Créer votre première fonction Azure avec Java et IntelliJCreate your first Azure function with Java and IntelliJ

Cet article vous explique :This article shows you:

  • Comment créer un projet de fonction serverless avec IntelliJ IDEA et Apache MavenHow to create a serverless function project with IntelliJ IDEA and Apache Maven
  • Les étapes pour tester et déboguer la fonction dans l’environnement de développement intégré (IDE) sur votre ordinateurSteps for testing and debugging the function in the integrated development environment (IDE) on your own computer
  • Les instructions pour déployer le projet de fonction sur Azure FunctionsInstructions for deploying the function project 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 fonction avec Java et IntelliJ, installez les logiciels suivants :To develop a function with Java and IntelliJ, install the following software:

Important

Pour pouvoir suivre les différentes étapes de cet article, 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 the steps in this article.

Nous vous recommandons d’installer Azure Functions Core Tools, version 2.We recommend that you install Azure Functions Core Tools, version 2. Il fournit un environnement de développement local pour l’écriture, l’exécution et le débogage des fonctions Azure Functions.It provides a local development environment for writing, running, and debugging Azure Functions.

Créer un projet FunctionsCreate a Functions project

  1. Dans IntelliJ IDEA, sélectionnez Create New Project (Créer un projet).In IntelliJ IDEA, select Create New Project.
  2. Dans la fenêtre New Project (Nouveau projet), sélectionnez Maven dans le volet gauche.In the New Project window, select Maven from the left pane.
  3. Cochez la case Create from archetype (Créer à partir d’un archétype) et sélectionnez Add Archetype (Ajouter un archétype) pour azure-functions-archetype.Select the Create from archetype check box, and then select Add Archetype for the azure-functions-archetype.
  4. Dans la fenêtre Add Archetype (Ajouter un archétype), renseignez les champs comme suit :In the Add Archetype window, complete the fields as follows:
    • GroupId : com.microsoft.azureGroupId: com.microsoft.azure
    • ArtifactId : azure-functions-archetypeArtifactId: azure-functions-archetype
    • Version : utilisez la version la plus récente 1.22 du dépôt central Créer un projet Maven à partir d’un archétype dans IntelliJ IDEAVersion: Use the latest version 1.22 from the central repository Create a Maven project from archetype in IntelliJ IDEA
  5. Sélectionnez OK, puis Suivant.Select OK, and then select Next.
  6. Entrez les détails de votre projet en cours et sélectionnez Finish (Terminer).Enter your details for current project, and select Finish.

Maven crée les fichiers projet dans un nouveau dossier avec le même nom que la valeur ArtifactId.Maven creates the project files in a new folder with the same name as the ArtifactId value. Le code généré du projet est une fonction simple, déclenchée par HTTP, qui retourne le corps de la requête HTTP à l’origine du déclenchement.The project's generated code 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

Pour exécuter et déboguer des fonctions localement, assurez-vous qu’Azure Functions Core Tools, version 2 est installé.To run and debug functions locally, make sure you've installed Azure Functions Core Tools, version 2.

  1. Importez les modifications manuellement ou activez l’importation automatique.Import changes manually or enable auto import.

  2. Ouvrez la barre d’outils Projets Maven.Open the Maven Projects toolbar.

  3. Développez Cycle de vie, puis ouvrez package.Expand Lifecycle, and then open package. La solution est générée et empaquetée dans un répertoire cible nouvellement créé.The solution is built and packaged in a newly created target directory.

  4. Développez Plug-ins > azure-functions et ouvrez azure-functions:run pour démarrer le runtime local d’Azure Functions.Expand Plugins > azure-functions and open azure-functions:run to start the Azure Functions local runtime.
    Barre d’outils Maven pour Azure FunctionsMaven toolbar for Azure Functions

  5. Fermez la boîte de dialogue d’exécution quand vous avez fini de tester votre fonction.Close the run dialog box 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 IntelliJDebug the function in IntelliJ

  1. Pour démarrer l’hôte de fonction en mode débogage, ajoutez -DenableDebug comme argument quand vous exécutez votre fonction.To start the function host in debug mode, add -DenableDebug as the argument when you run your function. Vous pouvez modifier la configuration dans les objectifs maven ou exécuter la commande suivante dans une fenêtre de terminal :You can either change the configuration in maven goals or run the following command in a terminal window:

    mvn azure-functions:run -DenableDebug
    

    Cette commande force l’hôte de la fonction à ouvrir un port de débogage sur 5005.This command causes the function host to open a debug port at 5005.

  2. Dans le menu Run (Exécuter), sélectionnez Edit Configurations (Modifier les configurations).On the Run menu, select Edit Configurations.

  3. Sélectionnez + pour ajouter une configuration Remote (Distante).Select (+) to add a Remote.

  4. Renseignez les champs Name (Nom) et Settings (Paramètres), puis sélectionnez OK pour enregistrer la configuration.Complete the Name and Settings fields, and then select OK to save the configuration.

  5. Après l’installation, sélectionnez Debug (Déboguer) < Nom de la configuration distante > ou appuyez sur les touches MAJ+F9 de votre clavier pour démarrer le débogage.After setup, select Debug < Remote Configuration Name > or press Shift+F9 on your keyboard to start debugging.

    Déboguer des fonctions dans IntelliJ

  6. Quand vous avez terminé, arrêtez le débogueur et le processus en cours d’exécution.When you're finished, stop the debugger and the running process. 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

  1. Avant de pouvoir déployer votre fonction sur Azure, vous devez vous connecter par l’intermédiaire de l’interface Azure CLI.Before you can deploy your function to Azure, you must sign in by using the Azure CLI.

    az login
    
  2. Déployez votre code dans une nouvelle fonction en utilisant la cible Maven azure-functions:deploy.Deploy your code into a new function by using the azure-functions:deploy Maven target. Vous pouvez également sélectionner l’option azure-fonctions:deploy dans la fenêtre des projets Maven.You can also select the azure-functions:deploy option in the Maven Projects window.

    mvn azure-functions:deploy
    
  3. Trouvez l’URL de votre fonction dans la sortie de l’interface Azure CLI une fois la fonction déployée avec succès.Find the URL for your function in the Azure CLI output after the function has been successfully deployed.

    [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 à votre projet des fonctions supplémentaires avec différents déclencheurs en utilisant la cible Maven azure-functions:add.Add additional functions with different triggers to your project by using the azure-functions:add Maven target.