Clean Lifecycle
运行mvn clean
执行clean生命周期,包含三个生命周期阶段:
pre-clean
clean
post-clean
clean:clean
会删除一次构建后的输出,默认删除_${basedir}/target/_目录(如果你没有自定义输出目录)。
执行clean
阶段的时候,maven可以执行任何绑定到pre-clean
阶段的_goal_(目标)。
例如:你想在pre-clean
阶段时触发antrun:run
_goal_来输出一个通知,或者想在构陷目录删除时,打包一下。
Triggering a Goal on pre-clean.
... ... maven-antrun-plugin file-exists pre-clean run hello world
我们还可以自定义clean插件的删除目录(即除了默认的目录,再删除别的目录)。可以配置fileSet
配置项,该配置支持ant的通配符。
Customizing Behavior of the Clean Plugin.
maven-clean-plugin target-other *.class
Default Lifecycle
maven的默认生命周期,有如下阶段:
Lifecycle Phase | Description |
---|---|
validate | 验证项目的正确性和完成该构建的必要信息 |
generate-sources | 生成包含在编译之中的源代码 |
process-sources | 处理源码,如过滤某些值 |
generate-resources | 生成资源文件,这些文件会包含到打包中 |
process-resources | 将资源文件复制到目标目录,并处理,准备打包 |
compile | 编译源码 |
process-classes | 对生成的类文件后处理,如字节码增强 |
generate-test-sources | 生成测试代码 |
process-test-sources | 处理测试代码 |
generate-test-resources | 生成测试用的资源文件 |
process-test-resources | 复制资源文件到测试目录 |
test-compile | 编译测试代码 |
test | 测试 |
prepare-package | 打包前的准备工作 |
package | 打包,如JAR,WAR等 |
pre-integration-test | 集成测试准备 |
integration-test | 集成测试 |
post-integration-test | 集成测试后的工作 |
verify | 检查验证生成的java包 |
install | 安装到本地仓库 |
deploy | 部署到目标地址 |
Site Lifecycle
暂时用不到,不整理