Restez organisé à l'aide des collections
Enregistrez et classez les contenus selon vos préférences.
Apache Maven est un outil d'automatisation de la compilation pour Java.
App Engine fournit un plug-in Maven que vous pouvez utiliser pour créer et déployer votre application sur App Engine. Le plug-in n'est pas compatible avec les projets Enterprise Application Archive (EAR).
Avant de commencer
Déterminez si Maven est installé et la version dont vous disposez en exécutant la commande suivante :
mvn-v
Si Maven est installé, une longue chaîne d'informations commençant par Apache Maven et suivie d'un numéro de version tel que 3.9.1 s'affiche.
Si vous n'avez pas encore installé Maven 3.9.1 ou une version ultérieure:
Téléchargez Maven 3.9.1 ou une version ultérieure.
Si vous ne l'avez pas déjà fait, suivez les étapes décrites ici pour télécharger gcloud CLI, créer votre projet Google Cloud et initialiser votre application App Engine.
Installez le composant gcloud CLI app-engine-java :
gcloudcomponentsinstallapp-engine-java
Ajouter le plug-in App Engine Maven
Pour utiliser le plug-in App Engine Maven, ajoutez les lignes suivantes à la section plugins du fichier pom.xml de votre projet :
Après avoir ajouté le plug-in App Engine Maven au fichier pom.xml de votre projet, vous pouvez utiliser la commande suivante pour déployer votre application :
Remplacez PROJECT_ID par l'ID de votre Google Cloud projet. Si votre ID de projet est déjà inclus dans le fichier pom.xml, vous n'avez pas besoin d'inclure la propriété -Dapp.deploy.projectId dans la commande que vous exécutez.
L'objectif package crée et empaquette votre application, et l'objectif appengine:deploy effectue les opérations suivantes :
Il génère un ID de version unique pour la nouvelle version de votre application.
Il déploie la nouvelle version sur App Engine.
Il achemine tout le trafic vers la nouvelle version.
Modifier les paramètres de déploiement par défaut
Vous pouvez modifier le comportement du déploiement par défaut en transmettant des paramètres avec la commande appengine:deploy. Par exemple, la commande suivante déploie le service défini dans votre fichier pom.xml sur un projet Google Cloud spécifique, lui attribue un ID de version personnalisé et désactive le routage automatique du trafic pour la nouvelle version:
Vous pouvez également utiliser la commande appengine:deploy pour déployer des fichiers de configuration, tels que cron.yaml, dispatch.yaml et index.yaml.
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/09/04 (UTC).
[[["Facile à comprendre","easyToUnderstand","thumb-up"],["J'ai pu résoudre mon problème","solvedMyProblem","thumb-up"],["Autre","otherUp","thumb-up"]],[["Difficile à comprendre","hardToUnderstand","thumb-down"],["Informations ou exemple de code incorrects","incorrectInformationOrSampleCode","thumb-down"],["Il n'y a pas l'information/les exemples dont j'ai besoin","missingTheInformationSamplesINeed","thumb-down"],["Problème de traduction","translationIssue","thumb-down"],["Autre","otherDown","thumb-down"]],["Dernière mise à jour le 2025/09/04 (UTC)."],[[["\u003cp\u003eApache Maven is a build automation tool for Java, and App Engine provides a Maven plugin for building and deploying apps, excluding Enterprise Application Archive (EAR) projects.\u003c/p\u003e\n"],["\u003cp\u003eTo use the App Engine Maven plugin, users must install Maven version 3.9.1 or newer and the gcloud CLI \u003ccode\u003eapp-engine-java\u003c/code\u003e component.\u003c/p\u003e\n"],["\u003cp\u003eThe App Engine Maven plugin can be added to a project's \u003ccode\u003epom.xml\u003c/code\u003e file, and apps can then be built and deployed using the command \u003ccode\u003emvn package appengine:deploy -Dapp.deploy.projectId=PROJECT_ID\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eappengine:deploy\u003c/code\u003e goal generates a unique version ID, deploys the new app version to App Engine, and directs all traffic to the new version by default.\u003c/p\u003e\n"],["\u003cp\u003eThe default deployment settings can be altered by passing parameters in the \u003ccode\u003eappengine:deploy\u003c/code\u003e command, such as specifying a custom project ID, version ID, or disabling automatic traffic routing.\u003c/p\u003e\n"]]],[],null,["# Using Apache Maven and the App Engine Plugin\n\n[Apache Maven](http://maven.apache.org/) is a\nbuild automation tool for Java.\n\nApp Engine provides a Maven plugin that you can use to build and deploy\nyour app to App Engine. The plugin does not support Enterprise\nApplication Archive (EAR) projects.\n| **Note:** For information about other ways to build and deploy your app, see [Testing and deploying your app](/appengine/docs/standard/testing-and-deploying-your-app).\n\nBefore you start\n----------------\n\n1. Determine if Maven is installed and which version you have by running\n the following command:\n\n mvn -v\n\n If Maven is installed, a long string of information beginning with\n `Apache Maven` and followed by a version number such as `3.9.1` will\n display.\n2. If you don't have Maven 3.9.1 or newer installed:\n\n 1. [Download](https://maven.apache.org/download.cgi) Maven 3.9.1 or newer.\n 2. [Install](https://maven.apache.org/install.html) Maven 3.9.1 or newer.\n\n | **Note:** Linux users might need to download Maven instead of using `apt-get install` to install Maven 3.9.1 or newer.\n3. If you haven't already done so, follow the steps\n [here](/appengine/docs/standard/setting-up-environment)\n to download the gcloud CLI, create your Google Cloud project, and\n initialize your App Engine app.\n\n4. Install the gcloud CLI `app-engine-java` component:\n\n gcloud components install app-engine-java\n\nAdding the App Engine Maven plugin\n----------------------------------\n\nTo use the [App Engine Maven plugin](https://github.com/GoogleCloudPlatform/appengine-plugins/tree/main/app-maven-plugin), add the following lines to the `plugins` section in\nyour project's `pom.xml` file: \n\n \u003cplugin\u003e\n \u003cgroupId\u003ecom.google.cloud.tools\u003c/groupId\u003e\n \u003cartifactId\u003eappengine-maven-plugin\u003c/artifactId\u003e\n \u003cversion\u003e2.8.1\u003c/version\u003e\n \u003c/plugin\u003e\n\n| **Note:** If there is a newer version of the App Engine Maven plugin, you should upgrade to the [latest version](http://mvnrepository.com/artifact/com.google.cloud.tools/appengine-maven-plugin).\n\nBuilding and deploying your app\n-------------------------------\n\nAfter you add the App Engine Maven plugin to your project's `pom.xml`\nfile, you can use the following command to build deploy your app: \n\n```\nmvn package appengine:deploy -Dapp.deploy.projectId=PROJECT_ID\n```\n\nReplace \u003cvar translate=\"no\"\u003ePROJECT_ID\u003c/var\u003e with the ID of your Google Cloud project. If\nyour `pom.xml` file already\n\n[specifies your\nproject ID](/appengine/docs/standard/java-gen2/maven-reference#appenginedeploy)\n, you don't need to include the `-Dapp.deploy.projectId` property in the\ncommand you run.\n\nThe `package` goal builds and packages your app, and the\n\n[`appengine:deploy` goal](/appengine/docs/standard/java-gen2/maven-reference#appenginedeploy)\n\ndoes the following:\n\n1. Generates a unique version ID for the new version of your app.\n\n2. Deploys the new version to App Engine.\n\n3. Routes all traffic to the new version.\n\nChanging the deployment defaults\n--------------------------------\n\nYou can change the default deployment behavior by passing parameters in the\n`appengine:deploy` command. For example, the following command deploys the\nservice defined in your `pom.xml` file to a specific Google Cloud project,\nassigns a custom version ID to the service, and turns off automatic traffic\nrouting for the new version: \n\n```bash\nmvn appengine:deploy -Dapp.deploy.projectId=PROJECT_ID -Dapp.deploy.version=VERSION_ID -Dapp.deploy.promote=False\n```\n\nYou can also use the `appengine:deploy` command to deploy configuration files,\nsuch as `cron.yaml`, `dispatch.yaml`, and `index.yaml`.\n\nFor more information, see the `appengine:deploy`\n\n[reference](/appengine/docs/standard/java-gen2/maven-reference#appenginedeploy)\n.\n\nWhat's next\n-----------\n\n- Review the [JDK 21 App Engine Maven plugin sample](https://github.com/GoogleCloudPlatform/java-docs-samples/tree/main/appengine-java21/helloworld).\n- Explore the plugin code and report issues on [GitHub](https://github.com/GoogleCloudPlatform/app-maven-plugin).\n- Learn how to specify parameters for tasks by referring to [App Engine Maven Goals and Parameters](/appengine/docs/standard/java-gen2/maven-reference#appenginedeploy)."]]