maven 自定义插件

maven  所有的功能都是基于插件的。maven默认提供了很多插件,不过你也可以自己定义插件,来扩展maven。

1: 用maven-archetype-plugin 来创建一个插件项目。

   <packaging>maven-plugin</packaging>

    默认会创建一个例子。

 

/**
 * @goal touch
 */
public class MyMojo
    extends AbstractMojo
{
    public void execute()
        throws MojoExecutionException
    {
     getLog().info("==============rrrrrrrrrrrrrrrrrrrrrr=======================");
    }
}

  @goal touch  生命了这个插件的目标为:touch

 

 2:将这个插件install 安装到本地。


到目前为止,插件已经开发、部署好了。接下来就是如何调用。

调用有两种, 先说第一种。

直接调用该插件

需要构建的项目目录>mvn groupId  : artifactId :version :touch(目标)

第二种 把该插件放到生命周期中,在构建的过程中自动调用。

需要在构建的项目pom.xml中添加

<build>
  <plugins>
   <plugin>
    <groupId>插件的groupId</groupId>
    <artifactId>插件的artifactId</artifactId>
    <version>插件的version</version>
    <executions>
     <execution>
      <id>my-plugin-test</id>
      <phase>verify</phase>  绑定到生命周期的哪个阶段      

      <goals>
       <goal>touch</goal>      绑定的插件目标
      </goals>
     </execution>
    </executions>
   </plugin>
  </plugins>
 </build>

 

需要构建的项目目录>mvn clean install 

这样在intall这个项目的时候,刚才自定义的插件就直接运行了。

 

自定义插件涉及到了几个概念:

1:插件生命周期。

生命周期,有三套

clean default  site

clean 

pre-clean  clean post-clean

default(这里只写几个主要的)

validate  initialize  complie  test  package verify  install deploy

site

pre-site  site post-site

 

2:插件的目标。

声明这个插件有哪些功能(接口) 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值