首页 > Maven 阅读:689

Maven自定义插件简介

通过前面对 Maven 的介绍可以知道,Maven 是一个系统管理框架或体系,专注管理构建的生命周期和各个阶段。真正工作的是绑定到各个阶段的 Maven 插件。

每个插件具有一个或一个以上的目标,可以将这些插件的目标绑定到 Maven 生命周期的各个阶段中,或直接从命令行运行这些插件的目标。

用户可以从 Apache 和其他的参考 Maven 中心仓库获取。当然,这些插件基本上能满足大部分程序员的需求,但是在特殊情况下,有些极个别的功能可能在中心仓库中找不到,这时候怎么办呢?一个是耐心地等待别人分享;另一个是自己动手,完成一个实现该功能的插件。

等待是需要耐心的,如果当前功能要求的很急,没有时间让我们验证自己的耐心,那咱们就只能亲自动手写插件了。

其实编写插件也并不是很难很复杂的事情,接下来我们开始研究一下,怎么样编写看似高深的、能绑定到 Maven 生命周期的阶段中自动被调用执行的 Maven 插件。

为了方便用户对编写 Maven 插件的方向和过程有个总体的了解,先介绍一下编写 Maven 插件的基本步骤。

1)创建 Maven 项目。插件的功能肯定需要编写 Java 类的,所以插件本身就是一个 Maven 项目。当然,相对于以前研究的 Maven 项目,插件项目有它的特殊点:packaging 必须是 maven-plugin 类型,可以通过 maven-archetype-plugin 快速创建一个 Maven 插件项目。

2)编写插件目标。每个插件都至少包含一个目标,每个目标对应一个独立的 Java 类。这里把这种类叫 Mojo 类(对象)。Mojo 类必须继承 AbstractMojo 父类。

3)设置目标的配置点。大部分 Maven 件和它的目标都是可以配置的。根据需要,可以在编写 Mojo 的时候给它设置好可以配置的参数。

4)编写逻辑代码,实现目标功能。用 Java 代码实现插件的功能。

5)处理错误和日志。当 Mojo 运行的时候发生异常时,需要根据情况控制 Maven 的运行状况,并且用代码实现必要的日志输出,为用户提供必要的提示信息。

6)测试插件。编写测试案例,绑定(或命令行)执行插件。 

编程帮,一个分享编程知识的公众号。跟着站长一起学习,每天都有进步。

通俗易懂,深入浅出,一篇文章只讲一个知识点。

文章不深奥,不需要钻研,在公交、在地铁、在厕所都可以阅读,随时随地涨姿势。

文章不涉及代码,不烧脑细胞,人人都可以学习。

当你决定关注「编程帮」,你已然超越了90%的程序员!

编程帮二维码
微信扫描二维码关注