第9章 maven的插件和生命周期

简介:

第9章 maven的插件和生命周期

本章介绍了maven生命周期、插件以及如何配置插件

9.1 生命周期

一般的项目都会经历这几个步骤:编译,测试,打包,部署,有些公司是手动方式,有些是自动化脚本方式,虽然方式类似,但不可能完全相同。maven对这些工作进行抽象和统一,总结了一套完善的生命周期。

9.1.1 三套生命周期

maven的三套生命周期分别是:cleandefaultsite,每个周期都分为多个阶段。

9.1.2 clean生命周期

1、pre-clean:执行清理前需要完成的工作

2、clean:清理上一次构建生成的文件

3、post-clean:执行清理后需要完成的工作

9.1.3 default生命周期

1、 validate:验证工程是否正确,所有需要的资源是否可用。

2、 compile:编译项目的源代码。

3、 test:使用合适的单元测试框架来测试已编译的源代码。这些测试不需要已打包和布署。

4、 package:把已编译的代码打包成可发布的格式,比如jar。

5、 integration-test:如有需要,将包处理和发布到一个能够进行集成测试的环境。

6、 verify:运行所有检查,验证包是否有效且达到质量标准。

7、 install:把包安装到maven本地仓库,可以被其他工程作为依赖来使用。

8、 Deploy:在集成或者发布环境下执行,将最终版本的包拷贝到远程的repository,使得其他的开发者或者工程可以共享。

9.1.4 site生命周期

1、 pre-site:生成项目站点之前需要完成的工作
2、 site:生成项目站点文档
3、 post-site:生成项目站点之后需要完成的工作
4、 site-deploy:将项目站点发布到服务器上

9.2 插件

maven仅仅定义了抽象的生命周期,具体的任务交给插件来完成。插件以独立的构件形式存在。

9.2.1 内置绑定

为了能让用户不需要配置快速的构件项目,maven在核心为一些主要的生命周期阶段绑定了很多插件的目标,当用户通过命令行调用生命周期阶段的时候,对应的插件目标就会执行相应的任务。
- clean生命周期阶段与插件目标的绑定关系

生命周期阶段 插件目标
pre-clean
clean maven-clean-plugin:clean
post-clean

- site生命周期阶段与插件目标的绑定关系

生命周期阶段 插件目标
pre-site
site maven-site-plugin:site
post-site
site-deploy maven-site-plugin:deploy
  • default生命周期与内置插件绑定关系
生命周期阶段 插件目标 执行任务
process-resources maven-resources-plugin:resources 复制主资源文件至主输出目录
compile maven-compile-plugin:compile 编译主代码至主输出目录
process-test-resources maven-resources-plugin:testRresources 复制测试资源文件至测试输出目录
test-compile maven-compiler-plugin:testCompile 编译测试代码至测试输出目录
test maven-surefire-plugin:test 执行测试用例
package maven-jar-plugin:jar 创建项目jar包
install maven-install-plugin:install 将项目输出构件安装到本地仓库
deploy maven-deploy-plugin:deploy 将项目输出构件部署到远程仓库

9.2.2 插件配置

插件配置分为命令行和pom文件配置,本文只介绍pom文件配置插件。


<build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>2.3.2</version>
                <configuration>
                    <source>1.7</source>
                    <target>1.7</target>
                </configuration>
            </plugin>
        </plugins>
    </build>

以上代码配置了maven-compiler-plugin插件,指定编辑版本为JDK1.7

9.2.2 更多插件

更多插件请访问maven插件官网:http://maven.apache.org/plugins/index.html


首页传送门

目录
相关文章
|
4月前
|
Java Maven Android开发
在Eclipse里配置Maven插件
Maven是一款比较常用的Java开发拓展包,它相当于一个全自动jar包管理器,会导入用户开发时需要使用的相应jar包。使用Maven开发Java程序,可以极大提升开发者的开发效率。下面我就跟大家介绍一下如何在Eclipse里安装和配置Maven插件。
51 0
|
5月前
|
存储 Java Maven
IDEA常用插件之类Jar包搜索Maven Search
IDEA常用插件之类Jar包搜索Maven Search
146 0
|
19小时前
|
Java 测试技术 Maven
Maven 有三个标准的生命周期
Maven的构建生命周期包括验证、编译、测试、打包、检查、安装和部署等阶段,用于项目构建与发布。它有三个标准生命周期:Clean(清除目标目录)、Default(编译、测试、打包、验证、安装和部署)和Site(生成项目文档和站点)。每个阶段由插件目标组成,如clean、package和dependency:copy-dependencies。执行时,命令按照阶段和目标的顺序操作,如`mvn clean dependency:copy-dependencies package`会依次执行清理、复制依赖和打包。
|
1天前
|
Java 测试技术 Maven
Maven 构建生命周期
Maven构建生命周期包括验证、编译、测试、打包、检查、安装和部署等阶段,用于项目构建与发布。标准生命周期有清洁、默认和站点三个阶段。清洁周期清除编译输出,默认周期涵盖验证、编译、测试、打包、验证质量、安装到本地仓库及部署到远程仓库。站点周期则生成并部署项目文档。
|
2天前
|
Java 测试技术 项目管理
Maven 构建生命周期
Maven的构建生命周期包括验证、编译、测试、打包、检查、安装和部署等阶段,用于项目构建与发布。它有三个标准生命周期:Clean(如clean目标,清除编译输出),Default(验证、编译、测试、打包、验证质量、安装到本地仓库、部署到远程仓库)和Site(生成项目文档和站点,然后部署到远程服务器)。每个生命周期阶段按顺序执行,确保项目管理的标准化和自动化。
|
11天前
|
Java 测试技术 Maven
Maven 插件
Maven插件负责执行生命周期中的阶段,如clean、default(build)、site。生命周期阶段是Maven的标准接口,实际操作由相应插件实现,如maven-clean-plugin执行clean阶段。Maven是一个基于插件的框架,插件用于生成jar/war、编译代码、运行单元测试、生成文档和报告。通过`mvn [plugin-name]:[goal-name]`调用插件目标,如`mvn compiler:compile`用于编译Java代码。
|
14天前
|
Java 测试技术 Maven
Maven 构建生命周期
Maven的构建生命周期包括验证、编译、测试、打包、检查、安装和部署等阶段,用于项目构建与发布。它有三个标准生命周期:Clean(清除目标目录)、Default(验证、编译、测试、打包、验证质量、安装和部署)和Site(生成项目文档和站点)。每个阶段由插件目标组成,如clean、package和dependency:copy-dependencies,这些目标可以绑定到特定阶段或独立执行。命令行中,阶段和目标的执行顺序按照出现的顺序进行。
|
5月前
|
Java Maven
idea Maven Helper插件使用方法
idea Maven Helper插件使用方法
166 0
idea Maven Helper插件使用方法
|
26天前
|
XML Java 测试技术
Maven特点、作用、生命周期
Maven是一个项目管理工具,主要用于Java项目的管理。它提供了项目对象模型(POM),一个用于描述项目的基础、源代码、构建配置、依赖关系等信息的XML文件,使得开发人员能够使用统一的方式来构建和管理项目。
20 1
|
2月前
|
IDE Java Apache
常用 Maven 插件大全(速度收藏)
常用 Maven 插件大全(速度收藏)
71 1

推荐镜像

更多