Contents

Maven核心插件简介

1. 概述

Maven 是 Java 世界中最常用的构建工具。主要是它只是一个插件执行框架,其中所有作业都由插件实现。

在本教程中,我们将介绍核心 Maven 插件,提供指向其他教程的链接,重点介绍这些插件可以做什么以及它们的目标如何与构建生命周期绑定。

2. Maven 构建生命周期

核心插件与构建生命周期密切相关。

Maven 定义了三个构建生命周期:  defaultsiteclean。每个生命周期由多个阶段组成,这些阶段按顺序运行到mvn命令中指定的阶段。

最重要的生命周期是default,负责构建过程中的所有步骤,从项目验证到包部署。

site生命周期负责构建站点,显示项目的 Maven 相关信息,而clean生命周期负责删除先前构建中生成的文件。

所有三个生命周期中的许多阶段都自动绑定到核心插件的目标。参考文章将详细介绍这些目标和内置绑定。

所有插件都包含在 POM 的build元素中:

<build>
    <plugins>
        <!-- plugins go here -->
    </plugins>
</build>

3. 绑定到默认生命周期的插件

默认生命周期的内置绑定依赖于 POM 的packaging 元素的值。为简洁起见,我们将介绍最常见的包装类型的绑定:jar 和war

以下是绑定到default 生命周期每个阶段的目标列表,格式为“phase -> plugin:goal ”

  • process-resources -> resources:resources
  • compile -> compiler:compile
  • process-test-resources -> resources:testResources
  • test-compile -> compiler:testCompile
  • test -> surefire:test
  • package -> ejb:ejb or ejb3:ejb3 or jar:jar or par:par or rar:rar or war:war
  • install -> install:install
  • deploy -> deploy:deploy