MAVEN 生命周期
MAVEN的生命周期是一个软件生命周期的抽象,该抽象包含4个部分:
1, 清理clean
2, 编译compile
3, 测试test
4, 部署deploy
在这4部分中,第一部分是独立的,叫做clean阶段。其他三部分属于default阶段。
每个抽象都包含一系列的命令来执行。并且,这些抽象是“有步骤”的,也就是说,如果你直接执行deploy部署,那么就先会经历编译、测试的过程。
注意除非你显式的指定clean,否则clean阶段会被抛弃。因为这是两个阶段。
从内部机制上来说,MAVEN使用插件来执行这些生命周期。每个插件又包含一些插件目标。你使用:
plugin:target
来执行MAVEN的具体生命周期的每个步骤。
而对于用户角度来说,你可能只需要执行mvn lifecycle就行了,如:mvn compile。
举例来说:
你 有一个maven-compile-plugin的插件,该插件从名字上来看就是帮助你具体执行maven生命周期中compile的阶段。该插件包含几 个命令,如compile。所以,你执行:maven-compile-plugin:compile来对项目进行编译。
那么,你只需 要在终端输入:mvn compile就行了。他会使用上面的plugin:target形式来执行具体的任务。并且,在该compile之前的其他抽象动作都会被执行,除了 clean。如果你执行mvn clean compile,那么clean阶段也会被加上。