Maven基础概念及配置

发布于:2023-01-18 ⋅ 阅读:(534) ⋅ 点赞:(0)

目录

仓库:

仓库分类:

私服的作用:

坐标

什么是坐标

Maven坐标主要组成

Maven坐标的使用

仓库配置


  • 仓库:

  • 用于存储资源,包含各种jar包
  • 仓库分类:

  • 本地仓库:
  • 自己电脑上存储资源的仓库,连接远程仓库获取资源
  • 远程仓库:
  • 非本机电脑上的仓库,为本地仓库提供资源
    • 中央仓库:
    • Maven团队维护,存储所有资源的仓库
    • 私服:
    • 部门/公司范围内存储资源的仓库,从中央仓库获取资源
  • 私服的作用:

  • 1.保存具有版权的资源,包含购买或自主研发的jar
    • 中央仓库中的jar都是开源的,不能存储具有版权的资源
  • 2.一定范围内共享资源,仅对内部开放,不对外共享
  • 3.节省自己的外网带宽
    • 大量的对于外部仓库的重复请求会消耗很大的带宽
    • 利用私服代理外部仓库之后,对外的重复构件下载便得以消除,即降低外网带宽的压力
  • 4.加速Maven构建
    • 不停的连接请求外部仓库是十分耗时的
    • 但是Maven的一些内部机制(如快照更新检查)要求Maven在执行构建的时候不停的检查远程仓库数据
    • 因此,当项目配置了很多外部远程仓库的时候,构建的速度会被大大降低
    • 使用私服可以很好的解决这一问题
    • 当Maven只需要检查局域网内私服的数据时,构建的速度便能得到很大程度的提高
  • 5.提高稳定性,增强控制
    • Maven构建高度依赖远程仓库,因此当Internet不稳定的时候,Maven构建也会变得不稳定,甚至无法构建
    • 使用私服后,即使暂时没有Internet连接,由于私服中已经缓存了大量构件,Maven也仍然可以正常运行
    • 此外,一些私服软件,如Nexus还提供了很多额外的功能,如权限管理,RELEASE/SNAPSHOT区分等,管理员可以对仓库进行一些更高级的控制
  • 6.降低中央仓库的负荷
    • 运行并维护一个中央仓库不是一件容易的事情,服务数百万的请求,存储数T的数据,需要相当大的财力
    • 使用私服可以避免很多对中央仓库的重复下载,想象一下,一个有数百位开发人员的公司,在不适用私服的情况下,一个构件往往会被下载数百次;
    • 建立私服之后,这几百次下载就只会发生在内网范围内,私服对于中央仓库只有一次下载
  • 坐标

  • 什么是坐标

  • Maven中的坐标用于描述仓库中资源的位置
  • Maven坐标主要组成

  • groupId:
  • 定义当前Maven项目隶属组织名称(通常是域名反写,例如:org.mybatis)
  • artifactId:
  • 定义当前Maven项目名称(通常是模块名称,例如CRM,SMS)
  • version:
  • 定义当前项目版本号
  • Maven坐标的使用

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

  • 在非系统盘下创建maven目录
  • 然后在这里面创建一个repository(仓库)目录
  • 然后去maven的安装目录下的conf文件夹下
  • 把里面的settings.xml粘到之前创建好了的maven目录下
  • 但maven默认本地仓库位置在C盘用户名的.m2目录下
  • 我们肯定不配系统盘里
  • 所以把下面localRepository标签复制下
  • 移到下面更改内容为自己所需要配的目录
  • 注意:安装目录那块也要改,保持一致
  • 而中央仓库站点不在中国,下载速度会非常慢
  • 所以需要镜像仓库
  • 同样也要保持一致
  • <!-- 阿里云仓库 -->
    	<mirror>
    		<id>alimaven</id>
    		<mirrorOf>central</mirrorOf>
    		<name>aliyun maven</name>
    		<url>http://maven.aliyun.com/nexus/content/repositories/central/</url>
    	</mirror>
本文含有隐藏内容,请 开通VIP 后查看

网站公告

今日签到

点亮在社区的每一天
去签到