Maven基础-01-笔记

  • Maven基础概念(坐标、仓库)
    • 1、仓库
    • 2、坐标
    • 3、仓库配置

Maven基础概念(坐标、仓库)

1、仓库

  • 仓库:用于存储资源,主要是各种jar包

    关于仓库,我们前面讲到了有三种:本地仓库,私服,中央仓库,其中私服和中央仓库都属于远程仓库

  • 中央仓库:maven团队自身维护的仓库,属于开源的

  • 私服:各公司/部门等小范围内存储资源的仓库,私服也可以从中央仓库获取资源

  • 本地仓库:开发者自己电脑上存储资源的仓库,也可从远程仓库获取资源

  • 私服的作用:

    • (1)保存具有版权的资源,包含购买或自主研发的jar。中央仓库中的jar包都是开源的,不能存储具有版权的资源。

    • (2)一定范围内共享资源,仅对内部开放,不对外共享。

2、坐标

  • 我们说maven的仓库里存储了各种各样的资源(jar包),那这些资源我们如何找到它们呢?我们需要知道它们具体的一个位置才能知道如何找到它们,这个就叫坐标

  • 坐标:maven中的坐标用于描述仓库中资源的位置

  • https://repo1.maven.org/maven2/ @在这里面可以找到maven中的jar包,并可以下载,但是有的包结构复杂不方便查找@

那maven中的坐标是如何构成的呢?

  • maven坐标的主要组成如下:

    • groupId:定义当前资源隶属组织名称(通常是域名反写,如:org.mybatis;com.itheima)

    • artifactId:定义当前资源的名称(通常是项目或模块名称,如:crm,sms)

    • version:定义当前资源的版本号

    packaging:定义资源的打包方式,取值一般有如下三种

    (1)jar:该资源打成jar包,默认是jar

    (2)war:该资源打成war包

    (3)pom:该资源是一个父资源(表明使用maven分模块管理),打包时只生成一个pom.xml不生成jar或其他包结构

如果要查询maven某一个资源的坐标,我们通常可以去maven的仓库进行查询,

  • https://mvnrepository.com/,在该网站中可直接搜索想要的资源,然后就能得到该资源的坐标

    1)输入资源名称进行检索

    2)点击你想要的资源进行查看

    3)选择版本查看坐标

  • maven坐标的作用:

  • 使用唯一标识,唯一性定义资源位置,通过该标识可以将资源的识别与下载工作交由机器完成。

3、仓库配置

  • 开发者要在自己电脑上做开发,首先要做的就是配置本地仓库

  • 默认情况下maven本地仓库的位置在哪儿呢?

  • 我们可以选择在全局进行配置,在maven的配置文件conf/settings.xml中可以找到它的说明

      <!-- localRepository| The path to the local repository maven will use to store artifacts.|| Default: ${user.home}/.m2/repository<localRepository>/path/to/local/repo</localRepository>-->
    
  • 也就是在系统盘当前用户目录下的.m2/repository,比如我当前的系统用户是zs,则默认的本地仓库仓库位置在C:\Users\zs\.m2\repository @不对setting.xml配置文件进行修改,默认本地仓库位置@

  • 因为我们平时开发项目所有的资源会比较多,而且各种资源还有好多的版本,资源与资源之间还有相互依赖的这种情况,因此本地仓库保存的内容会非常的多,它的体积会很大,如果放在C盘下不太合适,因此我们可以自己来指定一个位置作为本地仓库的位置,这个指定同样是需要来修改maven的配置文件conf/settings.xml

  • 在我们前面查看这个文件的时候大家会发现它提供了一个标签<localRepository>/path/to/local/repo</localRepository>

  • 这个标签中配置的值就是我们本地仓库的位置,但是这个标签是在注释中的,也就是说目前不起作用,因此我们要将该标签挪出注释,并修改标签内的值,指定一个新的位置作为本地仓库的位置,例如

      <!-- localRepository| The path to the local repository maven will use to store artifacts.|| Default: ${user.home}/.m2/repository<localRepository>/path/to/local/repo</localRepository>-->
    <localRepository>D:\maven\repository</localRepository>
    
  • 如果是局部用户配置:在仓库的同级目录D:\maven\下也可以包含一个settings.xml配置文件,在里面也可以进行指定

注意:局部用户配置优先与全局配置(遇见相同配置项的时候)

  • @全局配置是maven安装包中conf包中的setting.xml文件@

  • @局部用户配置则是在仓库的同级目录中的setting.xml文件,该文件可以直接复制全局配置setting.xml,根据需要再修改(通常情况,保持两个文件内容一致)。像上面的全局setting中指明的仓库位置D:\maven\repository,则用户setting则放在D盘下maven目录中即可@

  • @全局setting和用户setting保持一致,万事大吉@

  • 另外大家需要注意:maven默认连接的远程仓库位置是:(即中央仓库)
    @上面配置的查看方式简单说明一下@

  • 此站点并不在国内,因此有时候下载速度非常慢,因此我们可以配置一个国内站点镜像,可用于加速下载资源

  • 我们在conf/settings.xml配置文件中找到<mirrors>标签,在这组标签下添加镜像的配置,配置阿里云镜像仓库,如下

    <mirrors><!--配置具体的仓库的下载镜像--><mirror><!--此镜像的唯一标识符,用来区分不同的mirror元素--><id>nexus-aliyun</id><!--对哪种仓库进行镜像,简单说就是替代哪个仓库--><mirrorOf>central</mirrorOf><!--镜像名称--><name>Nexus aliyun</name><!--镜像URL--><url>http://maven.aliyun.com/nexus/content/groups/public</url></mirror>
    </mirrors>
    

Maven基础-01-笔记相关推荐

  1. maven基础01环境环境搭建及配置部署

    目录 1. 为什么使用maven 2. 什么是自动构建工具 3. 常用的构建工具 4. Maven安装与配置 4.1 下载 4.2 配置maven环境变量 4.3 验证 4.4 配置 5. 基本使用 ...

  2. Maven官网笔记(学习翻译)

    Maven官网笔记 1.What is Maven? 1.1 介绍(Introduction) Maven,是一个表示知识积累的单词,最开始是使用在雅加达涡轮机项目中用于构建项目.开发者希望有一个统一 ...

  3. ASP.Net MVC开发基础学习笔记(5):区域、模板页与WebAPI初步

    http://blog.jobbole.com/85008/ ASP.Net MVC开发基础学习笔记(5):区域.模板页与WebAPI初步 2015/03/17 · IT技术 · .Net, Asp. ...

  4. Object-C基础入门笔记(一)

    OC基础入门笔记之一 // // main.m // oc // // Created by lujun on 2020/9/20. // Copyright © 2020 lujun. All ri ...

  5. 2022年Spark基础学习笔记目录

    一.Spark学习笔记 在私有云上创建与配置虚拟机 Spark基础学习笔记01:初步了解Spark Spark基础学习笔记02:Spark运行时架构 Spark基础学习笔记03:搭建Spark单机版环 ...

  6. 8. SpringBoot基础学习笔记

    SpringBoot基础学习笔记 课程前置知识说明 1 SpringBoot基础篇 1.1 快速上手SpringBoot SpringBoot入门程序制作 1.2 SpringBoot简介 1.2.1 ...

  7. C基础学习笔记——01-C基础第02天(用户权限、VI操作、Linux服务器搭建)

    在学习C基础总结了笔记,并分享出来.有问题请及时联系博主:Alliswell_WP,转载请注明出处. 01-C基础第02天(用户权限.VI操作.Linux服务器搭建) 打开终端:ctrl+alt+t ...

  8. 2022年Spark基础学习笔记

    一.Spark学习笔记 在OpenStack私有云上创建与配置虚拟机 Spark基础学习笔记01:初步了解Spark Spark基础学习笔记02:Spark运行时架构 Spark基础学习笔记03:搭建 ...

  9. Maven基础-Maven的生命周期、命令和插件(6)- mvn test命令详解

    1.项目背景 本文在 <Maven基础-Maven的生命周期.命令和插件(2)- 项目准备> 一文的基础上进行命令的演示. 如何各位coder只是单纯的想了解 mvn test 命令,则可 ...

  10. 尚学堂JAVA基础学习笔记_2/2

    尚学堂JAVA基础学习笔记_2/2 文章目录 尚学堂JAVA基础学习笔记_2/2 写在前面 第10章 IO技术 1. IO入门 2. IO的API 3. 装饰流 4. IO实战 5. CommonsI ...

最新文章

  1. NFS---linux远程挂载
  2. [征询意见]准备采用“创作共用”协议保护大家的原创作品
  3. sql 拼接int类型的字段_一套简单实用的SQL脚本(下篇)
  4. python后端工程师 数据爬虫
  5. socket绑定指定网卡发包
  6. 战龙四驱java_《战龙四驱》中都有哪些经典角色
  7. C语言实现djikstra算法(附完整源码)
  8. Android如何在测试程序中删除被测应用私有的原始数据
  9. Visual Studio下Qt调用IDL
  10. python ftp 上传文档出现 553 Could not create file
  11. 类加载器ClassLoader
  12. Cards and Joy CodeForces - 999F (贪心+set)
  13. 学习《ACM 程序设计》笔记--STL
  14. linux Audit 介绍【架构篇】
  15. android电商组件化分配,android电商组件化设计(含源码):MVP+dagger+组件化
  16. Truecrypt加密软件文件检测
  17. Windows10系统删除文件夹“找不到该项目”强删方法
  18. 中国资源卫星应用中心_数据下载
  19. Unity学习笔记1 简易2D横版RPG游戏制作(一)
  20. 动态规划解决0-1背包问题详解(图文并茂)

热门文章

  1. 使用ClaimsIdentity来实现登录授权
  2. java recordset 记录数_【求助】asp中怎样获得一个记录集(Recordset)的所有行数?
  3. 对认定的嘉定区企业技术中心奖励15万元
  4. 关于易宝支付第三方接口的实现
  5. 基于51单片机的51单片机的LED彩灯霓虹灯控制器(心形流水灯)设计
  6. opencv视频跟踪
  7. vim 中批量添加注释(块选择模式)
  8. 服务主机本地系统占cpu_如何通过“服务主机:本地系统(网络受限制)”解决CPU使用率过高的问题
  9. RLException:Unable to contact my own server at
  10. LoRa SX1276 参数调试测试