引言:坐标和依赖是一个构件在Maven世界中逻辑表示方式,而构件的物理表示方式就是文件而已,仓库就是统一管理这些文件的地方。

目录

仓库类别

  • 本地仓库
  • 远程仓库: 中仓仓库(自带的默认远程仓库)、私服(一种特殊的远程仓库)、其他

仓库路径与坐标的关系

简而言之,具体的路径根据坐标计算获得;

通过坐标大致对应的仓库路径如下:
groupId/artifactId/version/artifact-version.packaging
注:阅读Maven源码得出。。

本地仓库

位置: 在本地机器当前用户目录下 .m2/repository文件夹中。

注:当用户输入第一条命令后,Maven才会创建本地仓库。每个用户只有一个本地仓库。

私服

存在的意义

1.节省外网带宽和减少Maven构建的时间

2.部署第三方构件

3.提高稳定性、增强控制

作用

代理所有的外部的远程仓库

中央仓库

安装的Maven自带了中央仓库配置,Maven3中配置位于$M2_HOME/lib/maven-model-builder-3.0.jar里的/org/apache/maven/model/pom-4.0.0.xml的文件中,所有的Maven项目都会继承这个超级POM,配置如下:

<repositories>
<repository>
<id>central </id> <!-- 唯一标识 -->
<name> Maven Repository Switchboard </name> <!-- 仓库名称 -->
<url>http://repo1.maven.org/maven2<url><!-- 仓库地址 -->
<layout>default</layout> <!-- 设置布局 -->
<snapshots>
<enabled> false </enabled> <!-- 能否从仓库下载快照版本的构件 -->
</snapshorts>
</repository>
</repositories>

仓库配置

仓库配置、仓库认证配置、仓库镜像配置

关键点: 仓库的ID的指定, 它是多个配置能关联起来的的纽带。

仓库配置: 在项目的pom.xml中配置

仓库认证配置: 在本地Maven的setting.xml中配置

仓库镜像配置:在本地Maven的setting.xml中配置

仓库配置

举个栗子

(三)Maven之仓库的更多相关文章

  1. Maven学习总结(三):修改从Maven中心仓库下载到本地的jar包的默认存储位置

    一:修改从Maven中心仓库下载到本地的jar包的默认存储位置 从Maven中心仓库下载到本地的jar包的默认存放在”${user.home}/.m2/repository”中,${user.home ...

  2. (三)Maven仓库介绍与本地仓库配置

    1.Maven本地仓库/远程仓库的基本介绍 示意图: 本地仓库是指存在于我们本机的仓库,在我们加入依赖时候,首先会跑到我们的本地仓库去找,如果找不到则会跑到远程仓库中去找.对于依赖的包大家可以从这个地 ...

  3. 使用Nexus搭建Maven本地仓库

    阅读目录 序 Nexus 本文版权归mephisto和博客园共有,欢迎转载,但须保留此段声明,并给出原文链接,谢谢合作. 文章是哥(mephisto)写的,SourceLink 序 在工作中可能存在有 ...

  4. maven 本地仓库和远程仓库

    在Maven中,任何一个依赖.插件或者项目构建的输出,都可以称之为构件. Maven在某个统一的位置存储所有项目的共享的构件,这个统一的位置,我们就称之为仓库.(仓库就是存放依赖和插件的地方) 任何的 ...

  5. Maven本地仓库及远程仓库

    转载自:http://blog.csdn.net/wanghantong/article/details/36427433 Maven 仓库的分类: maven的仓库只有两大类:1.本地仓库 2.远程 ...

  6. nexus 搭建maven本地仓库

    使用Nexus搭建Maven本地仓库   阅读目录 序 Nexus 序 在工作中可能存在有些开发机器不能上网,大量的机器获取jar包会导致公司网络很慢,还有时候公司会自己发布自己的项目版本,其他的项目 ...

  7. 推荐几个好的 Maven 常用仓库网址

    注意,以下内容转载自:推荐几个好的 Maven 常用仓库网址 Maven 确确实实是个好东西,用来管理项目显得很方便,但是如果是通过 Maven 来远程下载 JAR 包的话,我宿舍的带宽是4兆的,4个 ...

  8. 使用Nexus搭建Maven代理仓库

    使用Maven构建和管理项目是非常享受的一件事,我们可以从Maven中央仓库下载所需要的构件(artifact),但实际开发中由于种种原因我们需要在架设一个Maven本地代理仓库,如:不方便访问公网. ...

  9. 如何发布jar包到maven中央仓库

    自使用maven以来,没少使用maven中央仓库中的各种jar包,方便有效,但是咱们也不能总是只取不予,也应该懂得奉献,当你写好了一个十分好用的jar包,想贡献出去给大家使用的时候,应该怎么做呢?当然 ...

  10. 如何在云服务器创建maven私有仓库

    参考链接:https://blog.csdn.net/silence_jjj/article/details/77531916 nexus3创建maven私有仓库(windows) 1.官网:http ...

随机推荐

  1. 剑指offer-包含min函数的栈-栈和队列-python

    题目描述 定义栈的数据结构,请在该类型中实现一个能够得到栈中所含最小元素的min函数(时间复杂度应为O(1)).   # -*- coding:utf-8 -*- class Solution: de ...

  2. vue设置全局样式变量 less

    1.第一步: npm install sass-resources-loader --save-dev 2.然后在build 的utils.js中exports.cssLoaders = functi ...

  3. modesim 仿真问题

    > unisim (ERROR: Library path "d:/Xilinx/14.3/ISE_DS/ISE//vhdl/mti_se/10.1a/nt64/unisim/unis ...

  4. VB之Collection---Collection集合类

    你看到的这个文章来自于http://www.cnblogs.com/ayanmw 由于要对一些数据进行处理,比较麻烦,实现某个算法要处理大量不同的不同类型的数据. 所以考虑到一些因素,又在使用VB6( ...

  5. Codeforces 912 质因数折半 方格数学期望

    A B #include <bits/stdc++.h> #define PI acos(-1.0) #define mem(a,b) memset((a),b,sizeof(a)) #d ...

  6. Dinic最大流 || Luogu P3376 【模板】网络最大流

    题面:[模板]网络最大流 代码: #include<cstring> #include<cstdio> #include<iostream> #define min ...

  7. 8.docker的系统资源限制

    一. 概述 默认docker容器使用的memory资源和CPU资源是没有限制的,但是我们可以在docker run的时候通过选项去限制,具体参考官方文档. [root@node1 ~]# docker ...

  8. 【UOJ#400】暴力写挂

    题目链接 题意 两棵树 , 求出下面式子的最大值. \[dep[u]+dep[v]-dep[LCA(u,v)]-dep'[LCA'(u,v)]\] Sol 边分治. 与第一棵树有关的信息比较多,所以对 ...

  9. github-搜索功能

    in:name spring boot stars:>3000   //在标题上查找spring boot 并且 stars >3000 in:readme spring boot sta ...

  10. 使用vue 3.0 初始化vue脚手架

    vue-cli3.0安装 如果你事先已经全局安装了旧版本的vue-cli(1.x 或 2.x),你需要先卸载它: npm uninstall vue-cli -g 安装 npm install -g ...