什么是生命周期
Maven对项目开发各阶段工作:项目清理,初始化,编译,测试,打包,集成测试,验证,部署,站点生成称为构建活动。对这一系列活动的抽象,则称之为生命周期。Maven有三个生命周期:clean , default ,site ,每个周期下都有若干个构建任务,任务需要相应的插件实现。
Clean生命周期
clean 生命周期目的是清理项目,包括三个阶段
1. pre-clean #执行一些清理项目前的工作
2. clean #清理上一次构建生成的文件
3. post-clean #执行一些清理项目后的工作
Default生命周期
default 生命周期定义了项目构建核心步骤,包括
1. validate
2. initialize
3. generate-sources
4. process-sources #处理主资源文件 src.main.resources
5. generate-resources
6. process-resources
7. compile #编译主代码 src.main.java
8. process-classes
9. generate-test-sources
10. process-test-sources #处理测试资源文件 src.test.resources
11. generate-test-resources
12. process-test-resources
13. test-compile #编译测试代码 src.test.java
14. process-test-classes
15. test #运行测试
16. prepare-package
17. package #打包项目
18. pre-integration-test
19. integration-test
20. post-integration-test
21. verify
22. install #将包安装到本地仓库中
23. deploy #将包安装到远程仓库中
Site生命周期
1. pre-site
2. site #生成项目站点文档
3. post-site
4. site-deploy #将生成的项目站点发布到服务器上
好的,下面我们就可以通过命令行与上面的生命活动交互了!
命令行与生命周期
mvn clean #调用clean生命周期的clean阶段(包括pre-clean,clean)
mvn test #调用default生命周期的test阶段(包括validate -> test的所有阶段)
mvn clean install #跨越clean和default两个生命周期的多个阶段(pre-clean->clean, validate->install)
mvn clean deploy site-deploy #跨越三个生命周期
插件目标
大家会发现Maven的安装包很小,只有在使用的时候,才会下载相关插件完成构建活动。每个插件都有特定的目标(Plugin Goal),比如 maven-dependency-plugin 有十多个目标,每个目标对应特定功能。如前面章节介绍的:mvn dependency : list | tree | analyze 。
插件与生命周期绑定
Maven的生命周期与插件绑定,用以完成实际的构建任务。比如编译任务,对应default生命周期的compile阶段,通过插件 maven-compiler-plugin 的 compile 目标,就能完成这一构建任务。
Maven为了实现零配置就可以完成构建任务,提供了内置插件绑定,如下图:
参考
Maven实战 - 许晓斌
相关推荐
flume-agent-maven-plugin.zip,管理flume代理生命周期的maven插件用于启动、停止和运行flume代理的maven插件。
Maven是一个项目管理工具,它包含了一个项目对象模型 (Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管理系统(Dependency Management System),和用来运行定义在生命周期...
maven是项目管理工具,它包含了一个项目对象模型 (Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管理系统(Dependency Management System),和用来运行定义在生命周期阶段...
XJar-Maven-Plugin是对的一个Maven插件封装,实现可通过Maven命令或绑定在Maven的生命周期之中执行,从而更加便捷的方式集成了 。 GitHub: : 什么是XJar XJar是基于对JAR包内部资源的加密以及扩展ClassLoader来...
Maven 提供了开发人员构建一个完整的生命周期框架。开发团队可以自动完成项目的基础工具建设,Maven 使用标准的目录结构和默认构建生命周期。 在多协作的开发团队环境中工作时,Maven 可以设置按标准在非常短的时间...
Maven3实战笔记04——Maven的生命周期和插件。
Maven是一个项目管理工具,它包含了一个项目对象模型 (Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管理系统(Dependency Management System),和用来运行定义在生命周期...
Maven是一个项目管理工具,它包含了一个项目对象模型 (Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管理系统(Dependency Management System),和用来运行定义在生命周期...
Maven 为开发者提供了一套完整的构建生命周期框架。开发团队几乎不用花多少时间就能够自动完成工程的基础构建配置,因为 Maven 使用了一个标准的目录结构和一个默认的构建生命周期。 在有多个开发团队环境的情况下,...
3、项目生命周期管理:Maven提供了一系列的构建阶段(如编译、测试、打包、部署等),你可以在pom.xml中配置这些阶段的行为,Maven会按照定义好的生命周期来执行相应的操作。 4、插件系统:Maven支持插件机制,你...
Maven是一个项目管理工具,它包含了一个项目对象模型 (Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管理系统(Dependency Management System),和用来运行定义在生命周期...
Maven是一个项目管理工具,提供了一套完整的构建生命周期框架。
Maven是一个项目管理工具,它包含了一个项目对象模型 (Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管理系统(Dependency Management System),和用来运行定义在生命周期...
Maven是一个比Ant更先进的管理工具,它采用了"约定优于配置(CoC)"的策略来管理项目。其核心是解析一些XML文档,管理生命周期和插件。
面是执行 mvn clean install 产生的执行日志,通过日志可以看到每个步骤都显示 plugin 名称,版本号,生命周期阶段,执行操作等。 maven-clean-plugin:2.5:clean (default-clean) maven-resources-plugin:2.6:...
Maven生命周期 最新版 最全 最好用
Maven包含了一个项目对象模型 (Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管理系统(Dependency Management System)。 安装步骤 先下载,下载完成后,解压到某个目录 ...
Docker Compose Maven插件 快速开始 在Maven Central上可用。 ... < artifactId>docker-compose-maven-plugin $VERSION 关于 Maven插件,用于通过Maven运行基本的... 它可以用作Maven生命周期的一部分,也可以用作将do