Maven

作者: 可乐加冰丶丶 | 来源:发表于2020-01-16 16:29 被阅读0次

1.什么是Maven?

Maven是一个项目管理工具,它包含了一个项目对象模型(POM:Project Object Model),一组标准集合,一个项目生命周期,一个依赖管理系统,和用来运行定义在生命周期阶段中插件和目标的逻辑。

项目对象模型 (Project Object Model)

一个 maven 工程都有一个 pom.xml 文件,通过 pom.xml 文件定义项目的坐标、项目依赖、项目信息、
插件目标等。

依赖管理系统(Dependency Management System)

通过 maven 的依赖管理对项目所依赖的 jar 包进行统一管理

一个项目生命周期

使用 maven 完成项目的构建,项目构建包括:清理、编译、测试、部署等过程,maven 将这些
过程规范为一个生命周期

一组标准集合

maven 将整个项目管理过程定义一组标准,比如:通过 maven 构建工程有标准的目录结构,有
标准的生命周期阶段、依赖管理有标准的坐标定义等。

插件(plugin)目标(goal)

maven 管理项目生命周期过程都是基于插件完成的。

2.Maven的作用?

构建工程,管理jar包,编译代码,自动运行单元测试,打包,生成报表,部署项目,生成web站点。

2.1Maven的依赖管理(经典作用之一)

Maven的一个核心特性就是依赖管理。当我们涉及到多模块的项目(包含成百个模块或者子项目),管理依赖就变成一项困难的任务。Maven对处理这种情形高度控制。
Maven工程部直接将jar包导入到工程中,而是通过在pom.xml文件中添加所需jar包的坐标,再通过pom.xml文件中的坐标,到一个专门用于“存放jar包的仓库”(maven仓库)中根据坐标从而找到这些jar包,再把这些jar包拿去运行。
Maven中有索引的概念,通过建立索引,可以大大提高加载jar包的速度,是的我们认为jar包基本跟放在本地的工程文件中再读出来的速度是一样的。

2.2项目的一键构建(经典作用之二)

在项目整个构建过程,使用maven一个命令可以轻松完成编译、测试、运行、打包、安装、部署等一系列工作。

一:Maven仓库的分类

maven 的工作需要从仓库下载一些 jar 包,如下图所示,本地的项目 A、项目 B 等都会通过 maven
软件从远程仓库(可以理解为互联网上的仓库)下载 jar 包并存在本地仓库,本地仓库 就是本地文
件夹,当第二次需要此 jar 包时则不再从远程仓库下载,因为本地仓库已经存在了,可以将本地仓库
理解为缓存,有了本地仓库就不用每次从远程仓库下载了。

本地仓库## :用来存储从远程仓库或中央仓库下载的插件和 jar 包,项目使用一些插件或 jar 包,

优先从本地仓库查找
默认本地仓库位置在 {user.dir}/.m2/repository,{user.dir}表示 windows 用户目录

远程仓库##:如果本地需要插件或者 jar 包,本地仓库没有,默认去远程仓库下载。

远程仓库可以在互联网内也可以在局域网内。

中央仓库## :在 maven 软件中内置一个远程仓库地址 http://repo1.maven.org/maven2 ,它是中

央仓库,服务于整个互联网,它是由 Maven 团队自己维护,里面存储了非常全的 jar 包,它包
含了世界上大部分流行的开源项目构件。

相关文章

网友评论

      本文标题:Maven

      本文链接:https://www.haomeiwen.com/subject/vsgfzctx.html