Lifecycles consist of phases, which can invoke a set of configured goals provided by certain plugins.
built-in build lifecycles:
- default: handles your project deployment.
- clean: handles project cleaning.
- site: handles the creation of your project's site documentation.
default lifecycle comprises of the following main 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.
- verify - run any checks on results of integration tests to ensure quality criteria are met.
- install - install the package into the local repository, for use as a dependency in other projects locally.
- deploy - done in the build environment, copies the final package to the remote repository for sharing with other developers and projects.
mvn -B archetype:generate \
-DarchetypeArtifactId=maven-archetype-quickstart \
-DarchetypeVersion=1.1 \
-DarchetypeGroupId=org.apache.maven.archetypes \
-DgroupId=com.mycompany.app \
-DartifactId=my-app
mvn clean package
java -cp target/my-app-1.0-SNAPSHOT.jar com.mycompany.app.App