4.Maven仓库
1. 何为Maven仓库
Maven仓库就是统一存放所有依赖的地方,其他所有项目都可以在仓库里通过坐标找到所需要的依赖。
2. 仓库的布局
任何一个构件都有其唯一的坐标,根据这个坐标可以定义其在仓库中的唯一存储路径,这便是Maven仓库布局方式。例如,log4j:log4j:1.2.15这一依赖,其对应的仓库路径为log4j/log4j/1.2.15/log4j-1.2.15.jar。该路径与坐标的大致对应关系为groupId/artifactId/version/artifactId-version.packaging。
3.仓库的分类
对Maven来说,仓库只分为两类:本地仓库和远程仓库。当Maven根据坐标寻找构件的时候,它首先会查看本地仓库,如果本地仓库存在此构建,则直接使用。如果不存在,Maven就会去远程仓库查找,发现需要的构建之后,下载到本地仓库使用。
3.1 本地仓库
一般情况下,无论是在Windows还是Linux,Maven本地仓库的地址是在用户目录下的.m2/repository里。
其中在.m2文件夹中有一个setting.xml配置文件,通过这个文件可以改变一些仓库的设置。默认情况下settings.xml文件并不存在,用户需要从Maven安装目录复制$M2_HOME/conf/settings.xml文件再进行编辑。
全局范围的配置文件
全局目录的settings.xml文件指的是$M2_HOME/conf/settings.xml文件,修改这个文件,整台机器上的所有用户都会直接受到影响。
用户范围的配置文件
而~/.m2/settings.xml文件是用户范围的,只有当前用户才会受到该配置的影响。建议修改~/.m2/settings.xml文件,避免自己的修改影响到系统中的其他用户。
改变本地仓库的目录地址
编辑settings.xml文件,设置localRepository元素为想要的仓库地址,如:
<settings>
<localRepository>D:\jva\repository\</localRepository>
</settings>
将构件安装到本地仓库
在某个项目中执行mvn clean install命令就可以将该项目安装到本地仓库。在命令行可以看到弹出提示:[INFO]Installing .... to .... ,这表示正在将构件安装到本地仓库。
3.2 远程仓库
安装好Maven之后,如果不执行任何Maven命令,本地仓库目录是不存在的。当用户输入第一条Maven命令之后,Maven才会创建本地仓库,并根据配置和需要,从远程仓库下载构建至本地仓库。
常用的远程仓库有:
Java.net Maven -> http://download.java.net/maven/2/
JBoss Maven -> http://repository.jboss.com/maven2/
3.3 中央仓库
中央仓库其实就是一个远程仓库,不同的是这个仓库是Maven官方提供的,专门为全世界的Java程序员提供服务。如果你下载Maven后没有修改settings.xml配置文件,那么你默认就会从这个中央仓库里下载构件。
3.4 私服
对于本地的Maven仓库来说,私服也可以算是一个远程的仓库,只不过这个仓库与本机处于同一个局域网下。通过私服可以更快地下载所需的构件,并且私服拥有的环境更加稳定。此外,也可以将一些公共的构件部署到私服上,提供给其他成员使用。
4.远程仓库的配置
4.Maven仓库的更多相关文章
- 转:aliyun阿里云Maven仓库地址——加速你的maven构建
maven仓库用过的人都知道,国内有多么的悲催.还好有比较好用的镜像可以使用,尽快记录下来.速度提升100倍. http://maven.aliyun.com/nexus/#view-reposito ...
- aliyun阿里云Maven仓库地址——加速你的maven构建
maven仓库用过的人都知道,国内有多么的悲催.还好有比较好用的镜像可以使用,尽快记录下来.速度提升100倍. http://maven.aliyun.com/nexus/#view-reposito ...
- maven仓库信息分析站点推荐
maven是java的一个依赖,打包管理的工具,稍微大一点的java项目都需要使用maven. 随着java的壮大,maven仓库越来越大,仓库中的jar包有60多万,各种group,各种构件,各种版 ...
- 国内好用的maven仓库,添加到本地nexus中
速度快的maven仓库真的难找,国外网站很多被封了.前天在网上找,有人说阿里有个公开的,速度很快.确实很快! 我添加到本地nexus中,结果不能更新索引,我是这么添加的,如下: 这个地址在浏览器中能够 ...
- Maven最佳实践:Maven仓库(转)
转自:http://juvenshun.iteye.com/blog/359256 什么是Maven仓库 在不用Maven的时候,比如说以前我们用Ant构建项目,在项目目录下,往往会看到一个名为/li ...
- maven仓库使用
maven镜像仓库 1.国内maven镜像仓库 阿里云镜像 <mirrors> <mirror> <id>aliyun</id> <name> ...
- maven 仓库地址:
maven 仓库地址: 共有的仓库 http://repo1.maven.org/maven2/http://repository.jboss.com/maven2/ http://repositor ...
- 配置maven仓库
1.安装完,配置好环境变量 mvn -v 检查是否成功 mvn install 会将项目生成的构件安装到本地maven仓库 2.settings.xml文件配置: 1)修改本地仓库位置 maven_h ...
- 收集的maven 仓库地址(maven repository)
maven 仓库地址: 共有的仓库http://repo1.maven.org/maven2/http://repository.jboss.com/maven2/http://repository. ...
- maven仓库介绍《本地仓库、远程仓库》
在Maven中,任何一个依赖.插件或者项目构建的输出,都可以称之为构件.Maven在某个统一的位置存储所有项目的共享的构件,这个统一的位置,我们就称之为仓库.(仓库就是存放依赖和插件的地方)任何的构件 ...
随机推荐
- struts2接收参数的5种方法
以下形式中最常用的是前两种 1. 使用Action的属性: 在action 里面定义要接收的参数,并提供相应的setter,getter,和提交参数的名称一致, 并不用做数据类型的转换相应提交方式可以 ...
- 用DotRas来连接VPN网络
最近要用程序来不断的连接VPN(为什么要这样就不讨论了),开始用的是如下代码: public static bool ADSL() { bool flag = true; do { Console.W ...
- Java中String类型的部分用法
1.如何将字符串转换为整型数值? int i = Integer.parseInt("20"); 2.如何用“==”还是equals比较两个字符串? “==”是用来比较俩引用是不是 ...
- 每天一个Linux命令(01)--ls命令
ls命令是Linux下最常用的命令.ls命令就是list的缩写,缺省下ls用来打印当前目录的清单,如果ls指定其他目录,那么就会显示指定目录里的文件及文件夹清单.通过ls命令不仅可以查看Linux文件 ...
- Hibernate 迫切连接和普通连接的区别
package com.baidu.test; import java.util.ArrayList;import java.util.LinkedHashSet;import java.util.L ...
- Hibernate一对一主键映射
Hibernate一对一主键映射 ------------------------------ -- ...
- Linux的常用基本命令。
Linux的常用基本命令. 首先启动Linux.启动完毕后需要进行用户的登录,选择登陆的用户不同自然权限也不一样,其中"系统管理员"拥有最高权限. 在启动Linux后屏幕出现如下界 ...
- 浅谈Java的集合体系
集合体系框架图 集合接口 Java集合类库将接口(interface)与实现(implementation)分离,如上图,Set是一个集合接口,而HashSet与TreeSet都是实现了Set接口的子 ...
- Android布局管理详解(1)—— LinearLayout 线性布局
Android的布局方式共有6种,分别是LinearLayout(线性布局).TableLayout(表格布局).FrameLayout(帧布局).RelativeLayout(相对布局).GridL ...
- DOM的内部插入和外部插入
/*****************返回值都是最前面调用这个方法的元素 ***************** */ //这是外部插入 $("div").insertBefore($( ...