小白学Maven笔记 2——基础概念

构建生命周期(Build Lifecycle)

生命周期分为:

  1. default (处理项目部署)
  2. clean(处理项目清理)
  3. site (处理生成项目站点文档)

阶段(Phase)

每一个生命周期是由不同的构建阶段(build phase)构成的

  • validate 验证项目是否正确并且所有的信息是有效的
  • compile 编译项目的源码
  • test 使用合适的单元测试框架来测试已经被编译的源码
  • package 将源码打包成指定的格式,如JAR
  • verify 对集成测试结果进行检查,以确保满足质量标准(这个没用过不太了解)
  • install 将生成的package安装到本地仓库,用于本地作为其他工程依赖来使用
  • deploy 发布package到远程仓库让别人使用(自己还没有到达这个地步,还无缘使用LOL)
    其他更多阶段请看Lifecycle Reference

以上所有的阶段(加上Lifecycle Reference中其他的)构成了 default生命周期。

坐标:

还记得上一篇我们创建工程的时候填写的信息吗?


小白学Maven笔记 2——基础概念_第1张图片
屏幕快照 2017-04-21 23.08.25.png

在Maven中groupId+artifactId+version唯一标示了一个资源,我们可以理解为坐标。Maven中有本地仓库和 远程仓库,使用坐标搜索的时候回优先使用本地仓库,没有去远程仓库找,然后下载到本地,这也是上一篇我们打开auto import的原因,自动帮我们下载


小白学Maven笔记 2——基础概念_第2张图片
屏幕快照 2017-04-21 23.08.52.png

插件

Maven核心是一个插件执行框架,官网插件详细介绍

  1. 构建插件(build plugins)定义在标签中,类似下面

  
    
      org.apache.maven.plugins
      maven-compiler-plugin
      3.3
      
        1.5
        1.5
      
    
  

2.报告插件(reporting plugins)定义在标签中

常用标签:

指定打包信息,默认是jar
项目描述名
项目地址
项目描述
开发者信息
许可证信息
组织信息

依赖信息
    
            ….
            依赖范围,若为test尽在test代码中能引用
            是否可选
            排除依赖传递列表
                
                
            
    


依赖管理(父模块中定义,子模块继承)
    


构建行为

插件列表

子模块总对于父模块的继承

聚合多个子模块

自己定义标签,使用${标签名}来使用

依赖冲突:

1.短路,优先依赖层级最少的
2.层级相同先声明则优先

上一篇:小白学Maven笔记 1——快速开始

你可能感兴趣的:(小白学Maven笔记 2——基础概念)