Maven 项目构建生命周期

Maven 项目构建生命周期

一句话: Maven 构建生命周期描述的是一次构建过程经历了多少个事件

Maven 项目构建生命周期_第1张图片

生命周期的3 大阶段

clean

清理工作

Maven 项目构建生命周期_第2张图片

default

核心工作,例如编译,测试,打包,部署等

Maven 项目构建生命周期_第3张图片

site

产生报告,发布站点等

Maven 项目构建生命周期_第4张图片

生命周期是分阶段执行的

一句话: 项目构建生命周期分很多阶段,并不是每次都完整执行,而是根据用户的要求来执行的【比如你执行compile, 那么就执行到complie 这个阶段,如果你执行install, 则会执行compile->test->package->install】

举例说明

1、演示compile

Maven 项目构建生命周期_第5张图片

2、演示install

Maven 项目构建生命周期_第6张图片

maven 插件

介绍

1、插件与生命周期内的某个阶段绑定,在执行到对应生命周期时, 由对应插件来完成任务/功能.

2、maven 插件很多,先看一张图:

Maven 项目构建生命周期_第7张图片

3、通过插件可以自定义其他功能

4、文档: http://maven.apache.org/plugins/index.html

自定义插件-应用实例

需求: 在pom.xml 加入自定义插件,能够在对maven_D 项目打包时,能输出主程序和测试程序的源码

完成步骤

  1. 当前package 只会得到项目的jar

Maven 项目构建生命周期_第8张图片

  1. 修改D:\java_projects\maven_D\pom.xml, 加入maven 插件并配置(注意: 加入自定义插件后,可能会爆红,重启项目即可.)

<project xmlns="http://maven.apache.org/POM/4.0.0"
         韩顺平Java 工程师
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0modelVersion>
    <groupId>com.wyxgroupId>
    <artifactId>maven_DartifactId>
    <version>1.0-SNAPSHOTversion>
    <dependencies>
        <dependency>
            <groupId>junitgroupId>
            <artifactId>junitartifactId>
            <version>4.13.2version>
            
            <optional>falseoptional>
            
            <scope>compilescope>
        dependency>
    dependencies>
    
    <build>
        <plugins>
            <plugin>
                
                <groupId>org.apache.maven.pluginsgroupId>
                <artifactId>maven-source-pluginartifactId>
                <version>2.2.1version>
                <executions>
                    <execution>
                        <goals>
                            
                            <goal>jargoal>
                            
                            <goal>test-jargoal>
                        goals>
                        
                        <phase>generate-test-resourcesphase>
                    execution>
                executions>
            plugin>
        plugins>
    build>
project>
  1. 观察一下maven 项目管理器

Maven 项目构建生命周期_第9张图片

  1. 再次执行maven-D 的intall 操作, 会得到两个新的jar ,分别包含了主程序和测试程序的源码。(说明: 测试时,需要保证src/main/… 和src/test/… 两个目录下有java 源代码,否则不会生成源码jar)

Maven 项目构建生命周期_第10张图片

  1. 解压得到jar , 可以看到源码了.

Maven 项目构建生命周期_第11张图片

maven 插件-maven 构建生命周期关系图

Maven 项目构建生命周期_第12张图片

图解

  1. 在maven 项目构建生命周期中,每个阶段的执行都有相应的插件完成

  2. 各个插件执行过程中,会附带输出内容,比如jar/war/xml/源码

  3. 程序员可以使用maven 默认的插件,也可以自定义插件,完成定制任务.

  4. 自定义插件引入成功, 是可以看到

Maven 项目构建生命周期_第13张图片

你可能感兴趣的:(常用工具,maven,pycharm,java,开发语言,数据库,ide,服务器)