Building Lifecycle Maven


Si vous avez utilisé Maven pour gérer des projets, sait probablement que sa partie la plus importante est le cycle de la vie. Suite à la documentation que nous savons que Maven couvre les principales étapes de la création d'un projet séparé en trois cycles de vie: défaut, propre et lieu.

Dans cet article je vais vous montrer comment les différents phases (la liste complète est ci-dessous) dans Maven (3,0) sont "dit", lors de la spécification objectifs sont exécutés. Pour ce faire, nous allons créer un projet simple et changer le pom.xml utilisant le maven-plugin-antrun pour afficher un message généralement ant-éco lorsque vous exécutez une étape. Vous pouvez l'utiliser comme pom.xml sonde pour voir quelles mesures sont impliqués lorsque vous démarrez objectifs spécifiques Maven de la ligne de commande. Exemple: la guerre mvn: la guerre; Test MVN propre; etc.




Remarque: toutes les étapes ne sont pas disponibles pour toutes les versions de Maven.

Lifecycle Clean

  1. pre-clean
  2. propre
  3. post-propre

Cycle de vie par défaut

  1. valider
  2. initialiser
  3. générer sources
  4. process-sources
  5. des ressources de production
  6. process-resources
  7. remplir
  8. processus-classes
  9. generate-test-sources
  10. processus-test-sources
  11. generate-test-resources
  12. process-test-resources
  13. Test-compilation
  14. processus essai-classes
  15. test
  16. préparer paquet
  17. paquet
  18. pré-integration-test
  19. integration-test
  20. post-integration-test
  21. vérifier
  22. installer
  23. déployer

site de cycle de vie

  1. site pré-
  2. lieu
  3. post-place
  4. site deploy

(Pour lire la description de chaque étape, se il vous plaît lire la documentation)

Tout d'abord, nous devons créer un exemple d'application. De exécutant la ligne de commande:

$> Mvn archetype: generate -DgroupId = org.sample.app -DartifactId = première application -DarchetypeArtifactId = maven-archetype-quickstart -DinteractiveMode = false


Si tout est ok, vous devez entrez dans le répertoire système de «premier-app" qui représente le projet, et d'un pom.xml de fichier interne.

Maintenant, nous devons utiliser le antrun plugin pour afficher des messages (ANT-écho) lors d'une phase spécifique est appelé. Ceci est un exemple de la phase de test:

maven-plugin-antrun ... test course ...

Enfin le pom.xml complète (notez je ai inclus tous les défaut trois cycles de vie, propre, site):

4.0.0 org.sample.app première application vase 1.0-SNAPSHOT première application http://maven.apache.org JUnit JUnit 3.8.1 test org.apache.maven.plugins maven-plugin-antrun valider valider course phase de validation initialiser initialiser course initialiser la phase générer sources générer sources course la phase generate-sources process-sources process-sources course processus étape sources des ressources de production des ressources de production course la phase de génération de ressources process-resources process-resources course les ressources de traitement de phase remplir remplir course Phase de compilation processus-classes processus-classes course phase process-classes generate-test-sources generate-test-sources course phase generate-test-sources processus-test-sources processus-test-sources course processus étape test-sources generate-test-resources generate-test-resources course generate-test-resources de phase process-test-resources process-test-resources course étape-test-ressources de processus Test-compilation Test-compilation course phase de test-compilation processus essai-classes processus essai-classes course processus étape tests-classes test test course phase de test préparer paquet préparer paquet course préparer la phase de forfait paquet paquet course paquet de phase pré-integration-test pré-integration-test course pré-intégration phase de test integration-test integration-test course l'intégration phase de test post-integration-test post-integration-test course l'intégration post-phase-test vérifier vérifier course phase de test installer installer course Installer la phase déployer déployer course distribuer de phase pre-clean pre-clean course pre-clean propre propre course propre stade post-propre post-propre course post-propre site pré- site pré- course site pré- lieu lieu course site de phase post-place post-place course post-place site deploy site deploy course phase de déploiement de site

Toujours dans le répertoire «premier-app» lancée après la commande "test de mvn" vous devriez être capable de voir (je ai découpé certaines parties de mettre en évidence les messages «écho»):

~/Première-Test App $ mvn [INFO] Numérisation des projets ... [INFO] [INFO] ----------------------------------------------- ------------------------- [INFO] Construire première application-1.0-SNAPSHOT [INFO] ----------------------------------------------- ------------------------- [INFO] [INFO] --- maven-plugin-antrun: 1,3: run (validé) @ première application --- [info] tâches d'exécution [Eco] la phase validé ... [Eco] initialiser la phase ... [Eco] sources de phase de production ... [Eco] processus étape sources ... [Eco] ressources la phase de production ... [Eco] ressources étape de processus ... [Eco] Phase de compilation ... [Eco] processus étape des classes ... [Eco] la phase generate-test-sources ... [Eco] processus étape test-sources ... [Eco] la phase generate-test-resources ... [Eco] processus des essais de phase ressources ... [Eco] test-compilation ... [Eco] processus étape tests-classes [info] services rendus [INFO] [INFO] --- maven-plugin-infaillible: 2.5: Test (test par défaut) @ première application --- [info] rapport infaillible répertoire:/home/gnele/premier-app/cibles/surefire-reports -------------------------------------------------- ----- T E S T S -------------------------------------------------- ----- Courir org.sample.app.AppTest Tests: 1, Failures: 0 Erreurs: 0, Skipped: 0, Temps écoulé: 0,049 sec Résultats: Tests: 1, Failures: 0 Erreurs: 0, se est arrêté: 0 [INFO] [INFO] --- maven-plugin-antrun: 1,3: run (test) @ première application --- [info] tâches d'exécution [Eco] phase de test [info] services rendus [INFO] ----------------------------------------------- ------------------------- [INFO] construire le succès [INFO] ----------------------------------------------- ------------------------- [INFO] Temps total: 6.228s [INFO] Fini: Sam 22 Octobre 2011 16:16:49 BST [INFO] Mémoire final: 9M/245M [INFO] ----------------------------------------------- -------------------------

Chouette non? Maintenant, vous pouvez utiliser pour contrôler les étapes effectuées lorsque la commande est exécutée Maven et de personnaliser la performance de ne importe quelle phase unique de vos projets.

S'amuser!

(0)
(0)

Commentaires - 0

Sans commentaires

Ajouter un commentaire

smile smile smile smile smile smile smile smile
smile smile smile smile smile smile smile smile
smile smile smile smile smile smile smile smile
smile smile smile smile
Caractères restants: 3000
captcha