maven的生命周期和插件
目录
一、maven的生命周期
完整的项目构建的过程包括:
清理、编译、测试、打包、集成测试、验证、部署;
在maven中定义了三套相互独立的生命周期,分别是clean(清理项目)、default(构建项目)、site(生成项目的站点)。
这三套生命周期都是独立的,执行其中一套时不会触发另外两套,每个生命周期又包含一些阶段,各个生命周期中的阶段却是按顺序执行的,后面的阶段会依赖于前面的阶段。
比如说执行package时,maven会先执行compile、test这些阶段。
1、clean生命周期
clean生命周期,用于清理项目,分为三个阶段:
pre-clean 执行清理前的工作
clean 清理上一次构建生成的所有文件
post-clean 执行清理后的文件
2、default生命周期(核心生命周期)
default生命周期(核心生命周期),用于构建项目
compile 编译
test 测试
package 打包
install 将架包发送至maven仓库
3、site生命周期
site生命周期,用于生成项目站点
pre-site 在生成项目站点前需要完成的工作
site 生成项目站点文档
post-site 在生成项目站点后要完成的工作
site-deploy 发布生成的站点到服务器上
二、生命周期和插件的关系
maven抽象出一套项目构建的生命周期,而插件是对maven抽象的具体实现,maven中的所有命令都是调用相关的插件来完成的。
比如对项目进行编译,compile就对应了maven compile plugin (也就是说我们用maven进行compile编译时,其实就是用的是maven中compile这个插件)
三、maven插件
1、官网查看插件
在maven的官网中maven提供了很多的插件。
进入Maven Plugins页面,里面会提供很多的插件
2、maven插件的使用
Maven的核心是一个插件执行框架; 所有的工作都是通过插件完成的。寻找一个特定的目标来执行?有构建和报告插件:
构建期间将执行构建插件,并且应在POM 的<build />元素中配置它们。
报告插件将在站点生成期间执行,并且应在POM 的<reporting />元素中进行配置。由于Reporting插件的结果是生成的站点的一部分,因此Reporting插件应该是国际化的和本地化的。
在项目的POM文件中配置插件,
添加<build></build>标签,在</build>标签内添加<plugins></plugins>,在<plugins>标签内添加<plugin></plugin>,最后在</plugin>内指定插件的属性,包括groupId,artifactId,version,configuration等属性
例如:在使用compiler-plugin插件时
<build> <finalName>${warName}</finalName> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>${maven.compiler.plugin.version}</version> <configuration> <source>${java.version}</source> <target>${java.version}</target> <encoding>${encoding}</encoding> </configuration> </plugin> </plugins> </build>
|
点击保存以后,右键项目run as -->maven build
执行开始后,maven会自动调用配置的compile plugin