Maven build lifecycle is defined by a list of build phases, where a build phase represents a stage in the lifecycle.
The default lifecycle comprises of the following phases.
validate - validates the project is correct and all necessary information is available.
compile - compile the source code of the project.
test - tests the compiled source code using a suitable unit testing framework. These tests does not require the code to be packaged or deployed.
package - take the compiled code and package it to its distributable format, for example, JAR.
verify - runs any checks on results of integration tests to ensure desired quality criteria are met.
install - installs the package into the local repository, for using it as a dependency in other projects locally.
deploy - performed in the build environment, copies the final package to the remote repository for sharing and collaboration with other members of the team and projects.