maven 生命周期 插件

maven定义了项目开发的生命周期,由以下构建步骤组成:clean,validate,compile,test,package,verify,install,site,deploy

生命周期由插件具体实现,这样设计可以确保算法具有扩展性又能严格控制算法整体结构。(模板方法设计思想)

maven为大多数构建步骤编写并绑定了默认插件

每个构建步骤至少绑定一个或多个插件目标

可以自定义构建工具所绑定的插件,或者自己编写插件

三套生命周期:clean,default,site

一个插件会实现多个功能,功能也成为插件目标       例如:dependency:list (dependency插件实现的list功能)

default生命周期由于需要确定打包类型,所以其生命周期阶段与插件目标的绑定关系由项目打包类型决定(pom中的packing元素定义)

default生命周期存在很多阶段,是没有绑定默认插件的,因此也没有实际行为

 

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>3.2.1</version>
<executions>
<execution>
<id>hh</id>
<phase>verify</phase> //绑定verify阶段 ,其实不写也会绑定,因为很多插件目标在编写时已经定义了默认的绑定阶段
<goals>
<goal>jar-no-fork</goal>
</goals>
</execution>
</executions>
</plugin>

 当多个插件目标绑定到同一个生命周期阶段时,其声明的先后顺序决定插件目标的执行顺序

插件配置:

  命令行插件配置:例:install-Dmaven.test.skip=true (跳过测试)

  pom插件全局配置:适用于从项目创建到发布都不会改变的配置

  pom局部插件:单独绑定不同的阶段

 

posted @ 2022-06-07 17:42  无极是一种信仰  阅读(113)  评论(0)    收藏  举报