Maven概述

原创 2018年04月16日 13:50:04

有借鉴其他大神编写文档,如有不妥请及时告知!

1.Maven概述
     ①为什么要使用Maven?
          让开发人员从繁琐的构建操作中解脱出来,将更多的精力投入到业务逻辑的实现上。
     ②什么是Maven?
          一款自动构建工具。
          Make→Ant→Maven→Gradle(groovy)→...
     ③什么是构建?
          指应用程序从清理、编译、测试、报告、打包、部署等全过程。
     ④Maven三个主要功能
          [1]自动化构建
          [2]依赖管理
               (1)依赖:进行Spring的开发,就需要依赖Spring相关的JAR包。
               (2)依赖的复杂性
                    

                    

          [3]生成项目信息:根据当前项目的信息,生成一个静态网页的站点。

2.Maven核心概念
     ①项目对象模型:POM
     ②约定的目录结构
     ③坐标
     ④依赖管理
     ⑤仓库管理
     ⑥生命周期
     ⑦插件和目标
     ⑧继承和聚合

3.Maven的安装
     ①检查当前系统的运行环境:确认当前系统中是否提供了JAVA_HOME的环境变量
     ②将Maven安装包解压到非中文无空格目录
     ③配置path环境变量
     ④建议配置MAVEN_HOME环境变量
     ⑤检测:在命令行输入mvn -v

4.Maven联网
     ①Maven的核心程序并不包含任何具体的功能,只起一个统筹调度的作用,具体的工作需要由Maven的很多具体的插件来完成。
     ②Maven会首先到本地仓库中查找插件对应的JAR包
     ③默认的本地仓库的目录:~\.m2\repository
     ④修改默认的本地仓库目录
          [1]找到Maven解压目录下/conf/settings.xml
          [2]设置

<localRepository>D:\DevRep\MavenRepository</localRepository>

5.项目对象模型
     ①POM:Project Object Model
     ②将Maven工程封装为对象,抽取其中的共性定义为一个模型
     ③POM的信息主要是体现在Maven工程的pom.xml文件中

6.坐标
     ①在数学中,使用X和Y两个坐标可以在平面上唯一的定位一个点。
     ②在Maven中,使用每个工程自己的坐标就可以唯一的定位到一个Maven工程
     ③Maven坐标的三个向量
          公司组织ID:<groupId>cn.com.xxx.maven</groupId>
          模块ID:<artifactId>Hello</artifactId>
          版本号:<version>1.0</version>

7.依赖管理
     ①依赖方式
          [1]在Maven工程中是通过dependency元素中定义的目标工程的坐标来指定依赖
          [2]当指定了当前工程依赖的其他工程之后,Maven会首先到本地仓库中查找目标工程
          [3]查找某个Maven工程的规则:公司ID构成的目录结构+模块名目录+版本号目录
          [4]一个Maven工程必须执行“安装”操作后才能够进入本地仓库
     ②解决依赖冲突的问题
          [1]路径最短者优先

          [2]路径相同时先声明者优先

     ③依赖的范围
          [1]compile:默认范围,对当前工程中的所有类都有效
          [2]test:只对测试代码有效
          [3]provided:对当前工程中的所有类都有效,但不会被打包到最终的包里面,原因是项目运行时所作的环境会提供相关的JAR包。
          [4]runtime:对当前工程中的所有类都有效,但具体使用的JAR包会在运行时决定,例如JDBC驱动。

8.仓库管理
     ①仓库分类
          [1]本地仓库:就在当前电脑本地,可以为本机上的所有Maven工程提供依赖服务和插件管理。
          [2]远程仓库
               ●私服:当前局域网环境内的Maven服务器,可以为当前局域网内的所有Maven工程服务。
                    ○当某个Maven工程需要一个第三方JAR包时,可以首先到本地仓库查找,如果没有就到私服上找,如果私服上还没有,则私服负责从远程中央仓库下载,并保存到私服上,如果以后再有其他Maven工程需要这个JAR包,则可以从私服上获取,不必连远程中央仓库了。
                    ○当局域网内的某个开发人员将自己的Maven提交到私服上,则同一个局域网的其他开发人员就都可以引用这个Maven工程了。
               ●中央仓库:为全世界所有Java开发人员提供Maven构建的下载服务。
               ●镜像仓库:中央仓库的镜像,分担中央仓库的访问压力。
     ②仓库的内容
          [1]开发人员自己的Maven工程安装以后就会进入仓库
          [2]Maven自身的插件
          [3]第三方JAR包

9.生命周期
     ①Maven将各个构建过程定义为一组生命周期阶段
     ②Maven在执行任何一个Maven命令时,不是单独的执行命令本身,而是从当前生命周期开始执行已经定义好的每一个过程,直到完成Maven命令。
     ③三个主要的生命周期
          [1]清理生命周期
          [2]默认生命周期
          [3]站点生命周期

10.插件和目标
     ①Maven中所有的具体功能都是由Maven插件完成的。
     ②每一个Maven插件都包含一个或多个目标,每一个目标都和生命周期中的某一个阶段对应。
          



1 Maven-简介

1.1 何为 Maven 作为Apache组织中的一个颇为成功的开源项目,Maven主要服务于基于Java平台的项目构建、依赖管理和项目信息管理。无论是小型的开源类项目,还是大型的企业级应用;无论是...
  • u011077966
  • u011077966
  • 2016-01-06 14:43:51
  • 683

01、maven概述

1.MAVEN 概述 Maven 是一个项目管理和整合工具。Maven 为开发者提供了一套完整的构建生命周期框架。 Maven 能够帮助开发者完成以下工作: 构建 文档生成 报告 依赖 SCMs 发布...
  • u010820702
  • u010820702
  • 2016-06-03 10:28:24
  • 225

maven工程管理

  • 2018年02月24日 22:55
  • 2.92MB
  • 下载

Maven之——简介

摘要:此篇笔记主要是对maven进行一个简介、让我们大致了解maven是做什么的、内容是对《Maven实战》的摘要。强烈建议想学Maven的新手看这本书、当然也可以上网一些教学视频、但是最重要的一条:...
  • chenghuaying
  • chenghuaying
  • 2014-04-17 14:47:56
  • 3580

Maven入门介绍一:Maven概述

Maven是什么?           答:Maven是一个项目管理和整合的工具。Maven为开发者提供了一套完整的构建生命周期框架。开发团队基本不用花多少时间就能自动完成工程的基础构建配置,因为Ma...
  • windowsIOS
  • windowsIOS
  • 2016-04-18 10:57:21
  • 4674

[工具]maven介绍

少# 安装 自行google/baidu什么是MavenMaven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目的构建、报告和文档的软件项目管理工具。 简单说,maven是一套强大...
  • u014451076
  • u014451076
  • 2017-07-26 12:27:21
  • 343

Maven系列—Maven概述

一,概述 1. 什么是Maven? Maven 是标准、存储格式以及一些软件用以管理和描述项目。它为构建、测试、部署项目定义了一个标准的生命周期。它提供了一个框架,允许遵循 Maven 标准的所有...
  • cswhw
  • cswhw
  • 2013-05-23 19:07:13
  • 649

【Maven入门】Maven概述

1.定义 Maven 作为 Apache 的一个开源项目,旨在给项目管理提供更多的支持,它最早的意图只是为了给 apache 组织的几个项目提供统一的开发、测试、打包和部署,能让开发者在多个项目中方便...
  • baiye_xing
  • baiye_xing
  • 2017-07-31 21:52:08
  • 128

maven【0】(maven概述)

Maven中,任何一个依赖、插件或者项目构建的输出,都可以称之为构件。 Maven在某个统一的位置存储所有项目的共享的构件,这个统一的位置,我们就称之为仓库。(仓库就是存放依赖和插件的地方  ) ...
  • u013551536
  • u013551536
  • 2016-02-18 19:01:04
  • 120

Maven - 概述

Maven 是什么? Maven 是一个项目管理和整合工具。Maven 为开发者提供了一套完整的构建生命周期框架。开发团队几乎不用花多少时间就能够自动完成工程的基础构建配置,因为 Maven 使用了...
  • Augus3344
  • Augus3344
  • 2016-06-30 21:36:48
  • 344
收藏助手
不良信息举报
您举报文章:Maven概述
举报原因:
原因补充:

(最多只允许输入30个字)