Maven入门指南④:仓库

转载 2015年11月21日 16:53:19

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 . 常用的仓库搜索地址


转自:http://www.cnblogs.com/luotaoyeah/


Maven入门指南 :Maven 快速入门及简单使用

Maven入门指南 :Maven 快速入门及简单使用前言      Maven是一个Java语言编写的开源项目管理工具,是Apache软件基金会的顶级项目。主要用于项目构建,依赖管理,项目信息管理。 ...
  • sunhuaqiang1
  • sunhuaqiang1
  • 2016年05月01日 09:45
  • 59588

Maven入门指南④:仓库

Maven入门指南④:仓库 1 . 仓库简介   没有 Maven 时,项目用到的 .jar 文件通常需要拷贝到 /lib 目录,项目多了,拷贝的文件副本就多了,占用磁盘空间,...
  • baijianjun123456
  • baijianjun123456
  • 2017年07月27日 15:00
  • 92

Maven入门指南④:仓库

1 . 仓库简介   没有 Maven 时,项目用到的 .jar 文件通常需要拷贝到 /lib 目录,项目多了,拷贝的文件副本就多了,占用磁盘空间,且难于管理。Maven 使用一个称之为仓库的目...
  • w405722907
  • w405722907
  • 2017年07月11日 09:19
  • 94

Maven入门指南④:仓库

1 . 仓库简介   没有 Maven 时,项目用到的 .jar 文件通常需要拷贝到 /lib 目录,项目多了,拷贝的文件副本就多了,占用磁盘空间,且难于管理。Maven 使用一个称之为仓库的目录,...
  • softmanfly
  • softmanfly
  • 2015年11月25日 14:09
  • 352

Maven入门指南④:仓库

1 . 仓库简介   没有 Maven 时,项目用到的 .jar 文件通常需要拷贝到 /lib 目录,项目多了,拷贝的文件副本就多了,占用磁盘空间,且难于管理。Maven 使用一个称之为仓库的目...
  • z69183787
  • z69183787
  • 2016年05月17日 11:46
  • 302

最详细的maven教程全攻略之maven基础片(一)

Maven使用教程 一、Maven介绍 我们在开发项目的过程中,会使用一些开源框架、第三方的工具等等,这些都是以jar包的方式被项目所引用,并且有些jar包还会依赖其他的j...
  • qq_35409640
  • qq_35409640
  • 2017年05月30日 08:19
  • 2108

Maven详解之仓库------本地仓库、远程仓库

maven的本地仓库和远程仓库,详解maven的远程仓库。 在实际开发中,快照版本的实际意义和作用。如何进行安全认证的配置?创建私服的好处,maven仓库依赖解析的机制...
  • wanghantong
  • wanghantong
  • 2014年08月11日 20:42
  • 274629

工作心得(一)——如何搭建本地的maven仓库

一眨眼工作了两年多了,大概两年前我写过第一篇技术文章,是个关于easyui tree的,刚才回去翻看了一下。。。。不忍直视,我心里只有一句话:这特么是什么玩意! 呵呵,相信大家也有这样的经历,工作一段...
  • Tomoyolq
  • Tomoyolq
  • 2016年01月16日 12:54
  • 2700

maven-Maven的坐标、仓库介绍及配置

转载原文地址: http://yanan0628.iteye.com/blog/2270344 1.什么是maven仓库?   1.1 仓库和构件   仓库指的是在某个位置统一存...
  • qq_36859415
  • qq_36859415
  • 2016年12月02日 14:42
  • 628

Git入门指南一:基本介绍和创建Git仓库

Git入门指南 作者:毕小朋 博客:http://blog.csdn.net/wirelessqa  声明:本文参考网上的很多优秀的教程,感谢互联网的分享精神! 一. Git基本介绍 1.1 ...
  • wirelessqa
  • wirelessqa
  • 2014年02月19日 19:43
  • 29124
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Maven入门指南④:仓库
举报原因:
原因补充:

(最多只允许输入30个字)