SlideShare uma empresa Scribd logo
1 de 10
Baixar para ler offline
Maven
lifecycle
ilya.lapitan@gmail.com
Maven lifecycle
Сборка проекта Maven состоит из цепочки действий, которая образует
жизненный цикл сборки.
Каждое такое действие:
- направлено на реализацию конкретной цели
- зависит от результата выполнения предыдущего
Если конкретная цель для данного действия не выполненна, действие
считается не выполненным. Если какое-либо действие является не
выполненным, вся сборка проекта считается не выполненной.
Maven lifecycle
удаляет целевой каталог сборки проекта
Note: данное действие не выполняется автоматические перед каким-либо
другим действием. Может быть инициализировано командой mvn clean,
либо сконфигурировано для выполнения в POM-файле.
clean
Maven lifecycle
проверяет, что файл pom.xml:
- корректный XML файл
- содержимое файла соответствует спецификации для файлов сборки
Maven
validate
Maven lifecycle
разрешает описанные зависимости (скачивает необходимые библиотеки с
репозитория) и выполняет компиляцию исходного кода.
Скомпилированные классы помещаются в каталог classes целевого
каталога сборки проекта.
compile
Maven lifecycle
компилирует классы из каталога тестов и выполняет скомпилированные
классы.
По-умолчанию, любой провальный тест означает провал сборки проекта.
test
Maven lifecycle
создает артифакт (EAR, WAR, JAR файл).
Данный файл сохраняется в корне целевого каталога сборки проекта.
package
Maven lifecycle
помещает собранный артифакт в локальный репозиторий Maven.
Обычно это каталог [домашний_каталог]/.m2/repository.
install
Maven lifecycle
помещает собранный артифакт во внешний репозиторий (Artifactory,
Nexus).
Обычно данный этап требует небольшое количество дополнительных
настроек относительно работы с внешним репозиторием.
deploy
Maven lifecycle
Рассмотренные действия представляет собой базовый жизненный цикл
сборки Maven. Сборка проекта включает так же такие действия как:
- generate-sources
- process-sources
- process-classes
и др.
Детальня информация доступна на официальной сайте:
https://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.
html#Lifecycle_Reference

Mais conteúdo relacionado

Mais procurados

Обзор Continuous integration инструментов
Обзор Continuous integration инструментовОбзор Continuous integration инструментов
Обзор Continuous integration инструментовVitalii Morvaniuk
 
End-2-End UI автоматизация в мобильном приложении. Наша реализация
End-2-End UI автоматизация в мобильном приложении. Наша реализацияEnd-2-End UI автоматизация в мобильном приложении. Наша реализация
End-2-End UI автоматизация в мобильном приложении. Наша реализацияSQALab
 
Роман Василенко. Continuous delivery или как упростить себе жизнь
Роман Василенко. Continuous delivery или как упростить себе жизньРоман Василенко. Continuous delivery или как упростить себе жизнь
Роман Василенко. Continuous delivery или как упростить себе жизнь_itcampus
 
Codeception + Docker + Robo и что из этого вышло
Codeception + Docker + Robo и что из этого вышлоCodeception + Docker + Robo и что из этого вышло
Codeception + Docker + Robo и что из этого вышлоCOMAQA.BY
 
TestLink
TestLinkTestLink
TestLinkISsoft
 
"Опыт создания системы управления сборкой и тестированием" (полная)
"Опыт создания системы управления сборкой и тестированием" (полная)"Опыт создания системы управления сборкой и тестированием" (полная)
"Опыт создания системы управления сборкой и тестированием" (полная)SPB SQA Group
 
BDD girls Battle: Cucumber VS. JBehave
BDD girls Battle: Cucumber VS. JBehaveBDD girls Battle: Cucumber VS. JBehave
BDD girls Battle: Cucumber VS. JBehaveSQALab
 
Илья Кудинов «Развитие процессов тестирования в Badoo за три года, или как мы...
Илья Кудинов «Развитие процессов тестирования в Badoo за три года, или как мы...Илья Кудинов «Развитие процессов тестирования в Badoo за три года, или как мы...
Илья Кудинов «Развитие процессов тестирования в Badoo за три года, или как мы...WrikeTechClub
 
Тестирование осень 2013 лекция 5
Тестирование осень 2013 лекция 5 Тестирование осень 2013 лекция 5
Тестирование осень 2013 лекция 5 Technopark
 
Контроль качетсва в компании iiko
Контроль качетсва в компании iikoКонтроль качетсва в компании iiko
Контроль качетсва в компании iikoAlexey Chumagin
 
WPF Automation – test injection approach to application testing
WPF Automation – test injection approach to application testingWPF Automation – test injection approach to application testing
WPF Automation – test injection approach to application testingSQALab
 
Автоматизация тестирования приёмников цифрового телевидения
Автоматизация тестирования приёмников цифрового телевиденияАвтоматизация тестирования приёмников цифрового телевидения
Автоматизация тестирования приёмников цифрового телевиденияSQALab
 
SQADAYS 21 Москва 2017
SQADAYS 21 Москва 2017SQADAYS 21 Москва 2017
SQADAYS 21 Москва 2017Adam Sandman
 
DevOps подходы в инфраструктуре автоматизации тестирования
DevOps подходы в инфраструктуре автоматизации тестированияDevOps подходы в инфраструктуре автоматизации тестирования
DevOps подходы в инфраструктуре автоматизации тестированияSQALab
 
Опыт автоматизации интеграционного тестирования и внедрения DevOps в банковск...
Опыт автоматизации интеграционного тестирования и внедрения DevOps в банковск...Опыт автоматизации интеграционного тестирования и внедрения DevOps в банковск...
Опыт автоматизации интеграционного тестирования и внедрения DevOps в банковск...COMAQA.BY
 
GUI-автоматизация в Telerik Test Studio
GUI-автоматизация в Telerik Test StudioGUI-автоматизация в Telerik Test Studio
GUI-автоматизация в Telerik Test StudioSQALab
 
Инструменты разработки ПО в *nix
Инструменты разработки ПО в *nixИнструменты разработки ПО в *nix
Инструменты разработки ПО в *nixAlexander Gerasiov
 
Готовим Docker для Автоматизации Тестирования
Готовим Docker для Автоматизации ТестированияГотовим Docker для Автоматизации Тестирования
Готовим Docker для Автоматизации ТестированияCOMAQA.BY
 

Mais procurados (19)

Непрерывная интеграция
Непрерывная интеграцияНепрерывная интеграция
Непрерывная интеграция
 
Обзор Continuous integration инструментов
Обзор Continuous integration инструментовОбзор Continuous integration инструментов
Обзор Continuous integration инструментов
 
End-2-End UI автоматизация в мобильном приложении. Наша реализация
End-2-End UI автоматизация в мобильном приложении. Наша реализацияEnd-2-End UI автоматизация в мобильном приложении. Наша реализация
End-2-End UI автоматизация в мобильном приложении. Наша реализация
 
Роман Василенко. Continuous delivery или как упростить себе жизнь
Роман Василенко. Continuous delivery или как упростить себе жизньРоман Василенко. Continuous delivery или как упростить себе жизнь
Роман Василенко. Continuous delivery или как упростить себе жизнь
 
Codeception + Docker + Robo и что из этого вышло
Codeception + Docker + Robo и что из этого вышлоCodeception + Docker + Robo и что из этого вышло
Codeception + Docker + Robo и что из этого вышло
 
TestLink
TestLinkTestLink
TestLink
 
"Опыт создания системы управления сборкой и тестированием" (полная)
"Опыт создания системы управления сборкой и тестированием" (полная)"Опыт создания системы управления сборкой и тестированием" (полная)
"Опыт создания системы управления сборкой и тестированием" (полная)
 
BDD girls Battle: Cucumber VS. JBehave
BDD girls Battle: Cucumber VS. JBehaveBDD girls Battle: Cucumber VS. JBehave
BDD girls Battle: Cucumber VS. JBehave
 
Илья Кудинов «Развитие процессов тестирования в Badoo за три года, или как мы...
Илья Кудинов «Развитие процессов тестирования в Badoo за три года, или как мы...Илья Кудинов «Развитие процессов тестирования в Badoo за три года, или как мы...
Илья Кудинов «Развитие процессов тестирования в Badoo за три года, или как мы...
 
Тестирование осень 2013 лекция 5
Тестирование осень 2013 лекция 5 Тестирование осень 2013 лекция 5
Тестирование осень 2013 лекция 5
 
Контроль качетсва в компании iiko
Контроль качетсва в компании iikoКонтроль качетсва в компании iiko
Контроль качетсва в компании iiko
 
WPF Automation – test injection approach to application testing
WPF Automation – test injection approach to application testingWPF Automation – test injection approach to application testing
WPF Automation – test injection approach to application testing
 
Автоматизация тестирования приёмников цифрового телевидения
Автоматизация тестирования приёмников цифрового телевиденияАвтоматизация тестирования приёмников цифрового телевидения
Автоматизация тестирования приёмников цифрового телевидения
 
SQADAYS 21 Москва 2017
SQADAYS 21 Москва 2017SQADAYS 21 Москва 2017
SQADAYS 21 Москва 2017
 
DevOps подходы в инфраструктуре автоматизации тестирования
DevOps подходы в инфраструктуре автоматизации тестированияDevOps подходы в инфраструктуре автоматизации тестирования
DevOps подходы в инфраструктуре автоматизации тестирования
 
Опыт автоматизации интеграционного тестирования и внедрения DevOps в банковск...
Опыт автоматизации интеграционного тестирования и внедрения DevOps в банковск...Опыт автоматизации интеграционного тестирования и внедрения DevOps в банковск...
Опыт автоматизации интеграционного тестирования и внедрения DevOps в банковск...
 
GUI-автоматизация в Telerik Test Studio
GUI-автоматизация в Telerik Test StudioGUI-автоматизация в Telerik Test Studio
GUI-автоматизация в Telerik Test Studio
 
Инструменты разработки ПО в *nix
Инструменты разработки ПО в *nixИнструменты разработки ПО в *nix
Инструменты разработки ПО в *nix
 
Готовим Docker для Автоматизации Тестирования
Готовим Docker для Автоматизации ТестированияГотовим Docker для Автоматизации Тестирования
Готовим Docker для Автоматизации Тестирования
 

Destaque

Maven как средство сборки проекта
Maven как средство сборки проектаMaven как средство сборки проекта
Maven как средство сборки проектаYova Stoika
 
Иван Крутов - Автоматизация сборки Java-проекта
Иван Крутов - Автоматизация сборки Java-проектаИван Крутов - Автоматизация сборки Java-проекта
Иван Крутов - Автоматизация сборки Java-проектаYandex
 
использование Hibernate java persistence.part 2.
использование Hibernate java persistence.part 2.использование Hibernate java persistence.part 2.
использование Hibernate java persistence.part 2.Asya Dudnik
 
Мастер класс- Maven + Jenkins
Мастер класс- Maven + JenkinsМастер класс- Maven + Jenkins
Мастер класс- Maven + JenkinsValentin Fedoskin
 
Архивы в Java
Архивы в JavaАрхивы в Java
Архивы в JavaIlya Lapitan
 
Google советы успешного поиска
 Google советы успешного поиска Google советы успешного поиска
Google советы успешного поискаIlya Lapitan
 
Стратегии выполнения тестов в Gradle
Стратегии выполнения тестов в GradleСтратегии выполнения тестов в Gradle
Стратегии выполнения тестов в GradleIlya Lapitan
 
Learn Java with Coursera
Learn Java  with  CourseraLearn Java  with  Coursera
Learn Java with CourseraIlya Lapitan
 
Apache Camel Lifecycle
Apache Camel LifecycleApache Camel Lifecycle
Apache Camel LifecycleIlya Lapitan
 
141 - Spring. Добавление контроллеров Spring MVC
141 - Spring. Добавление контроллеров Spring MVC141 - Spring. Добавление контроллеров Spring MVC
141 - Spring. Добавление контроллеров Spring MVCRoman Brovko
 
Spring the Ripper by Evgeny Borisov
Spring the Ripper by Evgeny BorisovSpring the Ripper by Evgeny Borisov
Spring the Ripper by Evgeny BorisovJavaDayUA
 
Введение в maven
Введение в mavenВведение в maven
Введение в mavenDmitry Zinushin
 
Apache Camel + Apache ActiveMQ persistence
Apache Camel + Apache ActiveMQ persistenceApache Camel + Apache ActiveMQ persistence
Apache Camel + Apache ActiveMQ persistenceIlya Lapitan
 

Destaque (20)

Maven как средство сборки проекта
Maven как средство сборки проектаMaven как средство сборки проекта
Maven как средство сборки проекта
 
Spring in java
Spring in javaSpring in java
Spring in java
 
Иван Крутов - Автоматизация сборки Java-проекта
Иван Крутов - Автоматизация сборки Java-проектаИван Крутов - Автоматизация сборки Java-проекта
Иван Крутов - Автоматизация сборки Java-проекта
 
использование Hibernate java persistence.part 2.
использование Hibernate java persistence.part 2.использование Hibernate java persistence.part 2.
использование Hibernate java persistence.part 2.
 
Мастер класс- Maven + Jenkins
Мастер класс- Maven + JenkinsМастер класс- Maven + Jenkins
Мастер класс- Maven + Jenkins
 
Sonar quality
Sonar qualitySonar quality
Sonar quality
 
Архивы в Java
Архивы в JavaАрхивы в Java
Архивы в Java
 
Apache2
Apache2Apache2
Apache2
 
Google советы успешного поиска
 Google советы успешного поиска Google советы успешного поиска
Google советы успешного поиска
 
Linux commands
Linux commandsLinux commands
Linux commands
 
Стратегии выполнения тестов в Gradle
Стратегии выполнения тестов в GradleСтратегии выполнения тестов в Gradle
Стратегии выполнения тестов в Gradle
 
Bash scripting
 Bash scripting Bash scripting
Bash scripting
 
Amazon S3
Amazon S3 Amazon S3
Amazon S3
 
Learn Java with Coursera
Learn Java  with  CourseraLearn Java  with  Coursera
Learn Java with Coursera
 
Apache Camel Lifecycle
Apache Camel LifecycleApache Camel Lifecycle
Apache Camel Lifecycle
 
141 - Spring. Добавление контроллеров Spring MVC
141 - Spring. Добавление контроллеров Spring MVC141 - Spring. Добавление контроллеров Spring MVC
141 - Spring. Добавление контроллеров Spring MVC
 
Gradle
GradleGradle
Gradle
 
Spring the Ripper by Evgeny Borisov
Spring the Ripper by Evgeny BorisovSpring the Ripper by Evgeny Borisov
Spring the Ripper by Evgeny Borisov
 
Введение в maven
Введение в mavenВведение в maven
Введение в maven
 
Apache Camel + Apache ActiveMQ persistence
Apache Camel + Apache ActiveMQ persistenceApache Camel + Apache ActiveMQ persistence
Apache Camel + Apache ActiveMQ persistence
 

Semelhante a Maven lifecycle

системы сборок проектов
системы сборок проектовсистемы сборок проектов
системы сборок проектовRomero78
 
системы контроля версий
системы контроля версийсистемы контроля версий
системы контроля версийNicki Feathers
 
Hayorov AA selen_internal_demo
Hayorov AA selen_internal_demoHayorov AA selen_internal_demo
Hayorov AA selen_internal_demoAlexander Khaerov
 
Способы организаций больших Java проектов по Автоматизированному тестированию
Способы организаций больших Java проектов по Автоматизированному тестированиюСпособы организаций больших Java проектов по Автоматизированному тестированию
Способы организаций больших Java проектов по Автоматизированному тестированиюCOMAQA.BY
 
Автоматизация тестирования многопоточности
Автоматизация тестирования многопоточностиАвтоматизация тестирования многопоточности
Автоматизация тестирования многопоточностиSQALab
 
"Опыт создания системы управления сборкой и тестированием" (слайдкаст)
"Опыт создания системы управления сборкой и тестированием" (слайдкаст)"Опыт создания системы управления сборкой и тестированием" (слайдкаст)
"Опыт создания системы управления сборкой и тестированием" (слайдкаст)SPB SQA Group
 
Программа для регрессионного тестирования анализаторов PVS-Studio, CppCat
Программа для регрессионного тестирования анализаторов PVS-Studio, CppCatПрограмма для регрессионного тестирования анализаторов PVS-Studio, CppCat
Программа для регрессионного тестирования анализаторов PVS-Studio, CppCatAndrey Karpov
 
Apache maven in java projects
Apache maven in java projectsApache maven in java projects
Apache maven in java projectsAsya Dudnik
 

Semelhante a Maven lifecycle (9)

Cистемы автоматической сборки проектов (Полина Фоминых)
Cистемы автоматической сборки проектов (Полина Фоминых)Cистемы автоматической сборки проектов (Полина Фоминых)
Cистемы автоматической сборки проектов (Полина Фоминых)
 
системы сборок проектов
системы сборок проектовсистемы сборок проектов
системы сборок проектов
 
системы контроля версий
системы контроля версийсистемы контроля версий
системы контроля версий
 
Hayorov AA selen_internal_demo
Hayorov AA selen_internal_demoHayorov AA selen_internal_demo
Hayorov AA selen_internal_demo
 
Способы организаций больших Java проектов по Автоматизированному тестированию
Способы организаций больших Java проектов по Автоматизированному тестированиюСпособы организаций больших Java проектов по Автоматизированному тестированию
Способы организаций больших Java проектов по Автоматизированному тестированию
 
Автоматизация тестирования многопоточности
Автоматизация тестирования многопоточностиАвтоматизация тестирования многопоточности
Автоматизация тестирования многопоточности
 
"Опыт создания системы управления сборкой и тестированием" (слайдкаст)
"Опыт создания системы управления сборкой и тестированием" (слайдкаст)"Опыт создания системы управления сборкой и тестированием" (слайдкаст)
"Опыт создания системы управления сборкой и тестированием" (слайдкаст)
 
Программа для регрессионного тестирования анализаторов PVS-Studio, CppCat
Программа для регрессионного тестирования анализаторов PVS-Studio, CppCatПрограмма для регрессионного тестирования анализаторов PVS-Studio, CppCat
Программа для регрессионного тестирования анализаторов PVS-Studio, CppCat
 
Apache maven in java projects
Apache maven in java projectsApache maven in java projects
Apache maven in java projects
 

Maven lifecycle

  • 2. Maven lifecycle Сборка проекта Maven состоит из цепочки действий, которая образует жизненный цикл сборки. Каждое такое действие: - направлено на реализацию конкретной цели - зависит от результата выполнения предыдущего Если конкретная цель для данного действия не выполненна, действие считается не выполненным. Если какое-либо действие является не выполненным, вся сборка проекта считается не выполненной.
  • 3. Maven lifecycle удаляет целевой каталог сборки проекта Note: данное действие не выполняется автоматические перед каким-либо другим действием. Может быть инициализировано командой mvn clean, либо сконфигурировано для выполнения в POM-файле. clean
  • 4. Maven lifecycle проверяет, что файл pom.xml: - корректный XML файл - содержимое файла соответствует спецификации для файлов сборки Maven validate
  • 5. Maven lifecycle разрешает описанные зависимости (скачивает необходимые библиотеки с репозитория) и выполняет компиляцию исходного кода. Скомпилированные классы помещаются в каталог classes целевого каталога сборки проекта. compile
  • 6. Maven lifecycle компилирует классы из каталога тестов и выполняет скомпилированные классы. По-умолчанию, любой провальный тест означает провал сборки проекта. test
  • 7. Maven lifecycle создает артифакт (EAR, WAR, JAR файл). Данный файл сохраняется в корне целевого каталога сборки проекта. package
  • 8. Maven lifecycle помещает собранный артифакт в локальный репозиторий Maven. Обычно это каталог [домашний_каталог]/.m2/repository. install
  • 9. Maven lifecycle помещает собранный артифакт во внешний репозиторий (Artifactory, Nexus). Обычно данный этап требует небольшое количество дополнительных настроек относительно работы с внешним репозиторием. deploy
  • 10. Maven lifecycle Рассмотренные действия представляет собой базовый жизненный цикл сборки Maven. Сборка проекта включает так же такие действия как: - generate-sources - process-sources - process-classes и др. Детальня информация доступна на официальной сайте: https://maven.apache.org/guides/introduction/introduction-to-the-lifecycle. html#Lifecycle_Reference