Maven Life Cycle ...basic explanation:
I've looked for a while to reach a simple overview of the
project management and comprehension tool Maven and especially the life cycle process.
Firts of all some history :
Maven was originally designed to simplify building processes in Jakarta
Turbine project. There were several projects and each project contained
slightly different ANT build files.
Apache group then developed
Maven which can build multiple
projects together, publish projects information, deploy projects, share
JARs across several projects and help in collaboration of teams.
The point :
As we talk about
Maven Life Cycle, so here is basic definition of it :
Each of these build lifecycles are defined by a different list of build phases, wherein a build phase represents a stage in the lifecycle.
For example, the default lifecycle has the following build phases :
validate
- validate the project is correct and all necessary information is available
compile
- compile the source code of the project
test
- test the compiled source code using a suitable unit testing framework. These tests should not
require the code be packaged or deployed
package
- take the compiled code and package it in its distributable format, such as a JAR.
integration-test
- process and deploy the package if necessary into an environment where integration tests
can be run
verify
- run any checks to verify the package is valid and meets quality criteria
install
- install the package into the local repository, for use as a dependency in other projects locally
deploy
- done in an integration or release environment, copies the final package to the remote repository
for sharing with other developers and projects.
These build phases (plus the other build phases not shown here) and executed sequentially to complete the default lifecycle. Given the build phases above, this means that when the default lifecycle is used, Maven will first validate the project, then will try to compile the sources, run those against the tests, packages the binaries (i.e jar), run integration tests against that package, verifies the packaging, install the verifed package to the local repository, then depoy the installed package in a specified environment.
To do all those, you only need to call the last build phase to be executed, in this case, deploy :
.....I think is a simple way to undertand the
Maven lifecycle concept.
References : Google...yes always it's Google that bring us the informations...