Grâce à Gradle, un système d’automatisation de compilation flexible et déclaratif, vous pouvez automatiser la compilation, les tests, la publication et le déploiement. Cette page vous explique comment utiliser Gradle avec un projet App Engine dans l'environnement standard.
Avant de commencer
Installez et configurez les composants requis suivants :
Installer Gradle (version 3.4.1 ou ultérieure)
Configuration et validation de votre projet Google Cloud
Vous devez configurer votre projet Google Cloud et installer la gcloud CLI :
Utilisez la console Google Cloud pour créer et configurer votre projet Google Cloud :
- Sélectionnez ou créez un projet Google Cloud.
- Suivez les instructions pour vous assurer qu'une application App Engine existe et que la facturation est activée :
- Si vous devez créer une application App Engine pour votre projet, vous êtes invité à sélectionner la région dans laquelle vous souhaitez placer cette application.
- Suivez les instructions pour créer un compte de facturation ou sélectionner un compte existant.
- Le tableau de bord s'affiche une fois l'application App Engine créée et la facturation activée dans votre projet.
Vous n'avez pas besoin d'installer la gcloud CLI, car le plug-in installe automatiquement le SDK si nécessaire.
Créer un projet Gradle
Vous pouvez créer entièrement un projet Gradle à l'aide de l'interface système. Pour essayer le plug-in, vous pouvez également télécharger, exécuter en local et déployer le projet Hello World.
Créez un répertoire, puis accédez-y.
Pour initialiser un nouveau projet :
gradle init --type java-library; mkdir -p src/main/webapp/WEB-INF; rm src/main/java/Library.java src/test/java/LibraryTest.java
Insérez les lignes suivantes dans le fichier
build.gradle
afin d'ajouter des tâches Gradle pour App Engine, des dépôts Maven, le plug-in Gradle pour App Engine, des dépendances et la configuration des tâches :Vous devez également ajouter les fichiers suivants à votre projet, à l'aide d'un éditeur de texte ou d'un environnement de développement intégré (IDE) :
Pour découvrir une présentation du projet Java App Engine, consultez les fichiers de configuration.
Télécharger l'application Hello World
Clonez le dépôt de l'exemple d'application Hello World sur votre ordinateur :
git clone https://github.com/GoogleCloudPlatform/java-docs-samples.git
Vous pouvez également télécharger l'exemple en tant que fichier zip et l'extraire.
Accédez au répertoire qui contient l'exemple de code :
cd java-docs-samples/appengine-java8/helloworld
Tester votre application avec un serveur de développement
Pour accéder aux ressources Google de votre projet lors de l'exécution en local, définissez les identifiants par défaut de l'application en exécutant la commande suivante :
gcloud auth application-default login
Accédez à la racine du répertoire de votre application.
À tout moment pendant la phase de développement, vous pouvez exécuter et tester votre application sur le serveur de développement en appelant Gradle, à l'aide de la commande suivante :
gradle appengineRun
Vous pouvez également exécuter Gradle sans l’installer à l’aide du wrapper Gradle.
Attendez que le serveur démarre. Une fois le serveur démarré et votre application en cours d'exécution, un message semblable à celui-ci s'affiche :
:compileJava :processResources NO-SOURCE :classes :war :explodeWar :assemble :appengineRun 2018-06-05 22:50:46.231:INFO::main: Logging initialized @321ms Jun 06, 2018 2:50:49 AM com.google.appengine.tools.development.AbstractModule startup INFO: Module instance default is running at http://localhost:8080/ Jun 06, 2018 2:50:49 AM com.google.appengine.tools.development.AbstractModule startup INFO: The admin console is running at http://localhost:8080/_ah/admin Jun 05, 2018 10:50:49 PM com.google.appengine.tools.development.DevAppServerImpl doStart INFO: Dev App Server is now running
Accédez à l'adresse
http://127.0.0.1:8080
pour afficher l'exécution de votre application.
Déboguer votre application sur un serveur de développement
Pour déboguer une application en cours d'exécution localement, définissez la propriété jvmFlags
pour activer le débogage sur la machine virtuelle Java (JVM) sous-jacente, par exemple :
appengine {
run {
jvmFlags = ['-Xdebug', '-Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5005']
}
}
Activer le hot reload de l'application
Le rechargement à chaud permet de mettre à jour une ou plusieurs classes dans une application en cours d'exécution sans arrêter l'environnement. Pour activer le rechargement à chaud, procédez comme suit :
Vous devez demander au serveur local de rechercher les modifications, à l'aide des lignes suivantes :
appengine { run { automaticRestart = true } }
Pendant l'exécution de votre application, exécutez la tâche
explodeWar
pour copier les modifications directement dans l'application éclatée, puis les appliquer dans l'application en cours d'exécution.
Déployer l'application
Pour déployer votre application, procédez comme suit :
gradle appengineDeploy
La tâche appengineDeploy
et toutes les autres tâches Gradle sont associées à des propriétés que vous pouvez utiliser. Pour obtenir la liste complète des tâches et des propriétés disponibles, consultez la page Tâches et propriétés Gradle pour App Engine.
Utiliser le wrapper Gradle
Gradle fournit un mécanisme permettant de télécharger et exécuter la version requise de Gradle sans l'installer :
Linux/macOS
./gradlew appengineRun
Windows
gradlew.bat appengineRun
Pour en savoir plus sur Gradle, consultez la page Tâches et propriétés Gradle pour App Engine.
Étapes suivantes
- Explorez le code du plug-in, et signalez les problèmes sur GitHub.
- Accédez à la page Tâches et propriétés du plug-in Gradle pour App Engine pour découvrir comment spécifier des propriétés de tâches.