Maven 系列 四 :仓库

1 . 仓库简介

  没有 Maven 时,项目用到的 .jar 文件通常需要拷贝到 /lib 目录,项目多了,拷贝的文件副本就多了,占用磁盘空间,且难于管理。Maven 使用一个称之为仓库的目录,根据构件的坐标统一存储这些构件的唯一副本,在项目中通过依赖声明,可以方便的引用构件。

2 . 仓库的布局

  构件都有唯一的坐标,Maven 根据坐标管理构件的存储。如以下对 spring-orm-3.2.0 的存储:

文件路径对应了:groupId/artifactId/version/artifactId-version.packaging

3 . 仓库的分类

  Maven 仓库分为本地仓库和远程仓库,寻找构件时,首先从本地仓库找,找不到则到远程仓库找,再找不到就报错;在远程仓库中找到了,就下载到本地仓库再使用。中央仓库是 Maven 核心自带的远程仓库,默认地址:http://repo1.maven.org/maven2。除了中央仓库,还有其它很多公共的远程仓库。私服是架设在本机或局域网中的一种特殊的远程仓库,通过私服可以方便的管理其它所有的外部远程仓库。

3 . 1 . 本地仓库

  Maven 本地仓库默认地址为:${user.home}/.m2/repository。

  通过修改 %MAVEN_HOME%/conf/settings.xml (或者:${user.home}/.m2/settings.xml,针对当前用户(推荐))配置文件可以更改本地仓库的位置。

3 . 2 . 中央仓库

  安装完 Maven ,本地仓库几乎是空的,这时需要从远程仓库下载所需构件。Maven 配置了默认的中央仓库,找到 %MAVEN_HOME%/lib/maven-model-builder-3.2.1.jar,打开 org/apache/maven/model/pom-4.0.0.xml 超级POM:

3 . 3 . 在项目中添加其他远程仓库

  当中央仓库找不到所需的构件时,我们可以配置 pom.xml ,添加其它的远程仓库。

 1 <repositories>
 2     <repository>
 3         <id>Sonatype</id>
 4         <name>Sonatype Repository</name>
 5         <url>http://repository.sonatype.org/content/groups/public/</url>
 6         <layout>default</layout>
 7         <releases>
 8             <enabled>true</enabled>
 9         </releases>
10         <snapshots>
11             <enabled>false</enabled>
12         </snapshots>
13     </repository>
14 </repositories>

其中 id 必须唯一,若不唯一,如设置为 central 将覆盖中央仓库的配置。

3 . 4 . 镜像仓库

  镜像仓库可以理解为仓库的副本,从仓库中可以找到的构件,从镜像仓库中也可以找到。比如针对中央仓库 http://repo1.maven.org/maven2 ,在中国有它的镜像仓库,这样我们直接访问镜像仓库,更快更稳定。

 1 <settings>
 2     ...
 3     <mirrors>
 4         <mirror>
 5             <id>maven.net.cn</id>
 6             <name>central mirror in china</name>
 7             <url>http://maven.net.cn/content/groups/public</url>
 8             <mirrorOf>central</mirrorOf>    <!--表明为central中央仓库配置镜像仓库-->
 9         </mirror>
10     </mirrors>
11     ...
12 </settings>

  其中,<mirrorOf> 指明了为哪个仓库配置镜像,可以使用通配符如:<mirrorOf>*</mirrorOf>,或者 <mirrorOf>repo1,repo2</mirrorOf> 等进行匹配。一旦配置了镜像,所有针对原仓库的访问将转到镜像仓库的藏文,原仓库将不再能直接访问,即使镜像仓库不稳定或停用。在搭建私服的时候,我们通常为所有仓库设置镜像为私服地址,通过私服对所有仓库进行统一管理。

3 . 5 . 常用的仓库搜索地址

Maven 系列 四 :仓库

时间: 2024-08-01 06:21:19

Maven 系列 四 :仓库的相关文章

【连载】Maven系列(四)——配置私服

相关文章 1.<用起来超爽的Maven--入门篇> 2.<用起来超爽的Maven--进阶篇> 3.<Maven系列(三)   进阶> 一.为什么需要私服 有些公司并不提供外网给程序员,因此不能使用maven访问远程的仓库地址,所以很有必要在局域网里找一台有外网权限的机器:搭建nexus私服,然后程序员连到这台私服上,这样的话就可以通过这台搭建了nexus私服的电脑访问maven的远程仓库. 二.配置步骤 第一步:下载nexus-2.6.4-02.war包,然后拷贝到to

Maven(四)仓库

在不使用Maven的那些项目中,我们往往就能发现命名为lib/的目录,各个项目lib/目录下的内容存在大量的重复,例如大部分项目都用到了log4j,有一小部分用到了Spring FrameWork,还有另外一小部分用到了struts2,在每个需要的项目中都放置一份重复的log4j或者struts2显然不是最好的解决方案,这样做不仅造成了磁盘空间的浪费,而且也难于统一管理,文件的复制等操作也会降低构建的速度. 得益于上述博文讲到的坐标机制,任何Maven项目使用任何一个构件的方式都是完全相同的.再

(四)Maven中的仓库

一.分类 maven的仓库只有两大类: 1.本地仓库 2.远程仓库,在远程仓库中又分成了3种: 2.1 中央仓库 2.2 私服 2.3 其它公共库 二.本地仓库 本地仓库,顾名思义,就是Maven在本地存储构件的地方. 注:maven的本地仓库,在安装maven后并不会创建,它是在第一次执行maven命令的时候才被创建,maven本地仓库的默认位置:无论是Windows还是Linux,在用户的目录下都有一个.m2/repository/的仓库目录,这就是Maven仓库的默认位置 如何更改mave

myeclipse2014 安装maven3.3.9和maven配置本地仓库 及错误修改

结合网上的知识梳理以及自己安装的经验 myeclipse2014 安装maven3.3.9和maven配置本地仓库  及犯的错误修改  成功搞定maven 1,安装 Maven 之前要求先确定你的 JDK 已经安装配置完成.jdk最好是1.6以上的,Maven是 Apache 下的一个项目,我用的是 3.3.9. 下载地址:http://maven.apache.org/download.html 2,把下载好的maven安装包,解压到D:\maven 3, 配置maven环境变量 系统变量:M

Maven之——Nexus仓库与仓库组

Maven之--Nexus仓库与仓库组 1.    Nexus的仓库与仓库组 Nexus包含多种仓库概念.包括主要的宿主仓库.代理仓库.仓库组等.不同仓库提供不同配置.服务. 代理仓库主要是提供下载缓存构件和插件.如果只是从远程仓库下载构件和插件.那么代理仓库完全足够.宿主仓库主要用于存放项目部署的构件.或者第三方构件用于提供下载. 2.    Nexus内置仓库 Nexus预先配置了一些仓库.如果符合我们使用要求的话.则可以直接使用.简化配置.使用admin/admin123登录.点击左侧导航

Apache Kafka系列(四) 多线程Consumer方案

Apache Kafka系列(一) 起步 Apache Kafka系列(二) 命令行工具(CLI) Apache Kafka系列(三) Java API使用 Apache Kafka系列(四) 多线程Consumer方案 本文的图片是通过PPT截图出的,读者如果修改意见请联系我 一.Consumer为何需要实现多线程 假设我们正在开发一个消息通知模块,该模块允许用户订阅其他用户发送的通知/消息.该消息通知模块采用Apache Kafka,那么整个架构应该是消息的发布者通过Producer调用AP

【连载】Maven系列(三) 进阶

相关文章: 1.<用起来超爽的Maven--入门篇> 2.<用起来超爽的Maven--进阶篇> 一.Maven坐标: Maven世界拥有大量须要构建jar文件,我们须要找一个用来唯一标识一个构建jar文件的统一规范.那么拥有了统一规范,就能够把查找工作交给电脑来完毕,从而自己主动下载jar文件到本地仓库. Maven坐标是通过一些元素定义的,它们是groupId,artifactId,version,packaging,class-sifer groupId:定义当前Maven项目

maven系列之二maven项目的创建和maven项目的结构

maven系列之一简单介绍了maven的基本信息,安装和配置,大家对maven有一个大概的了解,但是在maven项目开发中远远不够,为了进一步了解maven,现在我们介绍maven项目的创建和maven项目的结构. 第一部分:maven项目的创建 maven项目创建方式一:用命令 开始键+r=,确定,检测maven的版本 输入mvn -v   输入mvn archetype:generate  ,执行这个命令有点久,要有耐心,他会检测setting.xml,不符合条件就会报错.同时也会根据set

Maven 系列 二 :Maven 常用命令,手动创建第一个 Maven 项目

1.根据 Maven 的约定,我们在D盘根目录手动创建如下目录及文件结构: 2.打开 pom.xml 文件,添加如下内容: 1 <project xmlns="http://maven.apache.org/POM/4.0.0" 2 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 3 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0