zoukankan      html  css  js  c++  java
  • Maven基础笔记,原理

    1.什么是Maven
    ①Maven是一款实现自动化构建的工具软件。
    ②构建:从源程序→程序的执行
    清理→编译→测试→报告→打包→部署→执行
    ③构建工具:Make→Ant→Maven→Gradle...
    ④Maven的运行机制是主程序调用插件实现具体功能,需要的插件需要联网下载才能使用
    通过修改解压目录/conf/settings.xml文件中的localRepository标签的值可以修改默认的仓库目录
    2.Maven自动化构建机制
    1项目对象模型 Project Object Model
    将项目理解为一个对象模型进行管理,与项目构建相关的所有信息保存在pom.xml配置文件中
    2约定的目录结构
    Maven之所能实现自动化的编译、测试等操作是基于约定的目录结构
    3坐标
    ①用于在Maven的世界中唯一的定位到某一个“构建”
    ②坐标的组成
    <groupId>com.atguigu.maven</groupId>
    <artifactId>Hello</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <package>jar</package>
    4依赖管理
    ①Maven构建查找它所依赖的JAR包时会首先到本地仓库中查找,如果仓库中没有则报错。
    所依赖的构建必须安装到仓库中才能够被其他构建所使用
    ②依赖的概念:当前构建需要用到的其他的构建
    ③依赖的实现:通过目标构建的坐标引用所依赖的构建
    ④依赖的范围:
    依赖的目标构建对当前工程当中的哪些类有效
    compile:表示当前工程中的所有的类都需要使用这个JAR包
    test:表示当前工程中只有测试的类依赖这个JAR包
    provider:表示当前工程只在开发阶段依赖这个JAR包,部署后这个JAR包会由容器提供
    例如:servlet-api
    ⑤依赖的原则
    [1]路径最短者优先
    [2]路径相同时先声明者优先
    5仓库管理
    ①如何在仓库中查找构建
    groupId+artifactId+version
    comatguigumavenHello.0.1-SNAPSHOT
    ②仓库概念:Maven所有的构建存储的位置
    ③存储的内容:Maven的构建
    [1]Maven自身的插件
    [2]软件开发过程中使用Maven构建得到的程序模块
    [3]大量第三方提供的JAR包
    ④仓库分类
    [1]本地仓库
    (1)运行于用户本机
    (2)为当前主机上的所有的Maven构建提供依赖支持
    [2]远程仓库
          (1)私服:在局域网中搭建的一个服务器,为当前局域网中的Maven构建服务
    共享第三方JAR包
    共享项目中的公共模块
    (2)中央仓库
    Maven为全世界程序开发人员搭建的总的服务器
    (3)镜像仓库
    分担中央仓库的压力,在各个大洲建立的镜像服务器
    ⑤Maven从仓库中查找构建的原则:从小到大的范围
    6生命周期
    ①概念:项目从清理、编译等环节直到部署到服务器上运行所经历的整个过程
    ②三套独立的生命周期
    [1]清理:执行项目清理的各个环节
    [2]默认:执行项目从编译到部署的各个环节
    [3]站点:执行项目信息站点自动生成的各个环节
    ③特点:执行生命周期中的任何一个阶段,Maven都会从这个周期最初的环节开始执行,
    直到指定的环节
    7插件和目标
    ①插件:Maven的所有功能都不是由主程序执行的,具体功能都是由插件完成的。
    主程序只起调度的作用。
    ②Maven的插件本身也是Maven的构建,所以需要到Maven的仓库中查找
    ③Maven中有一部分插件是与生命周期直接相关的。每个插件都会有多个目标,
    每个目标对应生命周期中的一个阶段。
    8聚合和继承
    ①继承:将POM文件中的重复内容抽取出来放到父POM中,简化配置文件,
    同时对整个项目所有的依赖的版本进行统一管理
    ②聚合:将多个构建模块聚合为一个工程,安装聚合工程就可以全部自动安装

     

    不忘初心,方得始终
  • 相关阅读:
    jQuery命名空间,自定义空间及属性,插件开发全解析 (转)
    打印输入表单中的内容
    js 网页烟花效果
    js学习cookie封装之获取
    js学习cookie封装之添加
    git基本使用
    最简单的手风琴效果
    js学习cookie封装之删除
    21个值得收藏的javas技巧
    javascript常用特效汇总
  • 原文地址:https://www.cnblogs.com/Allen974103107/p/5537699.html
Copyright © 2011-2022 走看看