Maven随笔

1. Maven的定义

Maven:专家,内行。Maven是一款自动化构建工具,专注服务于Java平台的项目构建和依赖管理。约定的目录结构使得Maven可以自动化构建。

2. 使用Maven的好处以及原因

使用Maven的原因,由于目前的技术在开发中存在的问题:

(1)一个项目就是一个工程,一个项目就需要一个jar包

(2)项目汇总需要的jar包必须手动“复制”、“粘贴”到WEB-INF/lib目录下

(3)jar包需要到别人替我们准备好,或者到官网上去下载(获取第三方jar包)

(4)一个jar包需要的其他 jar 包需要自己手动加入到项目(jar包之间的依赖关系)

使用Maven的好处:

(1)添加第三方包

使用Maven后每个jar包只在本地仓库保存一份,需要jar包的工程只需要维护一个文本形式的 jar 包的引用——成为“仓库”。

优点:极大节约储存空间;项目更加轻巧;避免了重复文件太多而造成的混乱。

(2)jar包之间的依赖关系

引入Maven后,Maven就可以替我们将当前jar包所依赖的其他所有jar包全部导入进来,无需人工参与,节约了大量的时间和精力。

(3)处理jar包之间的冲突

使用Maven可以自动处理jar包之间的冲突问题,因为Maven内置了两条依赖原则:最短路径者优先和先声明者优先

(4)获取第三方包

使用Maven可以统一规范 jar 包管理体系,只需要在项目中以坐标的方式依赖一个 jar 包,Maven就可以自动从中央仓库进行下载,并同时下载这个jar包所依赖的其他jar包

(5)将项目拆分成多个工模块

Maven的依赖管理机制可以在工程拆分后进行互相调用和访问

(6)实现项目的分布式部署

分布式部署:随着项目的增加,每个模块都需要运行在独立的服务器上。使用Maven可以实现项目的分布式部署

3. 使用哪三个向量在Maven的仓库中唯一的确定一个Maven工程

在Maven中使用如下三个向量可以在Maven的仓库中唯一的确定一个Maven工程:

(1)gruodId:公司或组织的域名倒序+当前项目名称

(2)artifactid:当前项目的模块名称

(3)version:当前模块的版本

4. Maven仓库有哪几种?

Maven仓库的分类:

(1)本地仓库

(2)远程仓库:【1】私服(局域网范围内)【2】中央仓库【3】中央仓库的镜像

5. Maven几种依赖范围

(1)compile 范围依赖(默认的是这个范围)

【1】main目录下的Java代码可以反问这个范围的依赖

【2】test目录下的Java代码可以访问这个防伪的依赖

【3】部署到Tomcat服务器上运行时要放在WEB-INF的 lib 目录下

  对主程序是否有效:有效

  对测试是否有效:有效

  是否参与打包:参与

(2)test范围依赖

【1】main目录下的Java代码不能访问这个范围的依赖

【2】test目录下的Java代码可以访问这个范围的依赖

【3】部署到Tomcat服务器上运行时不会放在WEB-INF的 lib 目录下

  主程序是否有效:无效

  对测试是否有效:有效

  是否参与打包:不参与

  典型例子:junit

(3)provide 范围依赖

【1】main目录下的Java代码可以访问这个范围的依赖

【2】test目录下的Java代码可以访问这个范围的依赖

【3】部署到Tomcat服务器上运行时不会放在WEB-INF的 lib 目录下

 6、请简述镜像仓库的作用

架设在各个大洲,为中央仓库分担流量,减轻仓库压力,同时加快用户响应请求,提升用户访问速度

7、请简述为什么Maven可以帮助我们自动化的构建项目?

约定的目录结构使得Maven使得Maven可以自动化构建。

8、Maven中的坐标是什么?

 g(groupid), a(artifactid), v(version)

9、Maven几种仓库区别

(1)本地仓库,本地仓库为当前本机电脑上的所有Maven工程服务

(2)远程仓库,远程仓库又分为私服,中央仓库,中央仓库镜像

远程仓库分为私服,中央仓库和中央仓库镜像

私服架设在当前局域网下,为当前局域网范围内的所有Maven工程服务

中央仓库架设在Internet上,为全世界的Maven工程服务

中央仓库镜像架设在各大洲,为中央仓库分流。

 

posted @ 2020-11-09 21:12  筱頔  阅读(62)  评论(0)    收藏  举报