Maven本地仓库及远程仓库
转载自:http://blog.csdn.net/wanghantong/article/details/36427433
Maven 仓库的分类:
maven的仓库只有两大类:1.本地仓库 2.远程仓库,在远程仓库中又分成了3种:2.1 中央仓库 2.2 私服 2.3 其它公共库
maven本地仓库的默认位置:无论是Windows还是Linux,在用户的目录下都有一个.m2/repository/的仓库目录,这就是Maven仓库的默认位置
如何更改maven默认的本地仓库的位置:这里要引入一个新的元素:localRepository,它是存在于maven的settings.xml文件中
1.1 更改配置用户范围的本地仓库:先在/.m2/目录下创建settings.xml文件,然后在~/.m2/settings.xml,设置localRepository元素的值为想要的仓库地址
- <settings>
- <localRepository>D:\maven_new_repository</localRepository>
- </settings>
这时候,maven的本地仓库地址就变成了 D:\maven_new_repository ,注:此时配置的maven的本地仓库是属于用户范围的。
1.2 更改配置全局范围的本地仓库:在M2_HOME/conf/settings.xml中更改配置,更改配置的方法同上
注:此时更改后,所有的用户都会受到影响,而且如果maven进行升级,那么所有的配置都会被清除,所以要提前复制和备份M2_HOME/conf/settings.xml文件
故:一般情况下不推荐配置全局的settings.xml
2、远程仓库
所有的maven项目都会超级pom 包含了如下配置的pom就成为超级pom
- <repositories>
- <repository>
- <id>central</id>
- <name>Central Repository</name>
- <url>http://repo.maven.apache.org/maven2</url>
- <layout>default</layout>
- <snapshots>
- <enabled>false</enabled>
- </snapshots>
- </repository>
- </repositories>
2.2私服
私服是一种特殊的远程仓库 是假设在局域网上的 当maven需要下载时会从私服请求 如果私服中不存在资源则从外部远程仓库下载 并缓存在私服上 我们可能把一些容易被墙的资源上传到私服上
三、远程仓库配置
配置如下
- <repositories>
- <repository>
- <id>jboss</id>
- <name>JBoss Repository</name>
- <url>http://repository.jboss.com/maven2/</url>
- <releases>
- <updatePolicy>daily</updatePolicy> <!-- 表示更新频率 never always interval daily daily为默认值 -->
- <enabled>true</enabled>
- <checksumPolicy>warn</checksumPolicy><!-- 表示maven检查和查验文件的策略 -->
- </releases>
- <snapshots>
- <enabled>false</enabled>
- </snapshots>
- <layout>default</layout>
- </repository>
- </repositories>
出于安全考虑 我们要对主仓库进行认证
- <servers>
- <server>
- <id>same with repository id in pom</id>
- <username>username</username>
- <password>pwd</password>
- </server>
- </servers>
将生成的项目部署到远程仓库
<distributionManagement>
<repository>
<id></id>
<name></name>
<url></url>
</repository> <!-- 发布版本构件的仓库 -->
<snapshotRepository>
<id></id>
<name></name>
<url></url>
</snapshotRepository> <!-- 快照版本的仓库 -->
</distributionManagement>
运行:mvn clean deploy
Maven本地仓库及远程仓库的更多相关文章
- maven 本地仓库和远程仓库
在Maven中,任何一个依赖.插件或者项目构建的输出,都可以称之为构件. Maven在某个统一的位置存储所有项目的共享的构件,这个统一的位置,我们就称之为仓库.(仓库就是存放依赖和插件的地方) 任何的 ...
- maven仓库介绍《本地仓库、远程仓库》
在Maven中,任何一个依赖.插件或者项目构建的输出,都可以称之为构件.Maven在某个统一的位置存储所有项目的共享的构件,这个统一的位置,我们就称之为仓库.(仓库就是存放依赖和插件的地方)任何的构件 ...
- Maven详解之仓库------本地仓库、远程仓库
在Maven中,任何一个依赖.插件或者项目构建的输出,都可以称之为构件. Maven在某个统一的位置存储所有项目的共享的构件,这个统一的位置,我们就称之为仓库.(仓库就是存放依赖和插件的地方) 任何的 ...
- Maven 本地仓库,远程仓库,中央仓库,Nexus私服,镜像 详解
一. 本地仓库 本地仓库是远程仓库的一个缓冲和子集,当你构建Maven项目的时候,首先会从本地仓库查找资源,如果没有,那么Maven会从远程仓库下载到你本地仓库.这样在你下次使用的时候就不需要从远程下 ...
- maven修改本地仓库,远程仓库与中央仓库
什么是Maven仓库 在不用Maven的时候,比如说以前我们用Ant构建项目,在项目目录下,往往会看到一个名为/lib的子目录,那里存放着各类第三方依赖jar文件,如 log4j.jar,junit. ...
- Maven具体解释之仓库------本地仓库、远程仓库
在Maven中,不论什么一个依赖.插件或者项目构建的输出.都能够称之为构件. Maven在某个统一的位置存储全部项目的共享的构件.这个统一的位置.我们就称之为仓库.(仓库就是存放依赖和插件的地方) 不 ...
- [Maven实战](6)仓库(本地仓库,远程仓库,镜像)
1. 简单介绍 maven能够在某个位置统一存储全部maven项目共享的构件,这个统一的位置就是仓库.实际的Maven项目将不会各自存储其依赖文件,它们仅仅须要声明这些依赖的坐标,在须要的时候(比如. ...
- maven入门-- part5 本地仓库,远程仓库,私服
解读Maven在仓库中的存储路径: 1.基于groupId准备路径,将句点分隔符转成路径分隔符,就是将 "." 转换成 "/" ; example: org ...
- maven配置本地仓库和远程仓库
配置本地仓库 修改maven安装目录下conf/settings.xml,也可以在idea配置中覆盖 <localRepository>E:\maven\MavenRepository&l ...
随机推荐
- onreadystatechange()事件
onreadystatechange(): 存储函数(或函数名),当 readyState 改变时,就会触发 onreadystatechange() 事件. xmlhttp.onreadystat ...
- maven Error resolving version for plugin 'org.apache.maven.plugins:maven-eclipse-plugin' from the repositories 解决
报错:Error resolving version for plugin 'org.apache.maven.plugins:maven-eclipse-plugin' from the repos ...
- BigInger isProbablePrime
JAVA BigInteger 成员函数: isProbablePrime public boolean isProbablePrime(int certainty) 如果此 BigInteger 可 ...
- 搭建jms的步骤和过程
搭建jms 参考网摘: http://www.jianshu.com/p/98689164a041
- maven项目引用外部jar
问题描述: 有一个java maven web项目,需要引入一个第三方包gdal.jar,但是这个包是自己打包的,在maven中央库里面找不到该包,因此我采用传统的方式,将这个包拷贝到:项目名称\sr ...
- Windows下Python连接数据库(mysql, mongodb)
一 实验平台 1 os: win7 64位旗舰版sp1 2 python: 2.7.10 x64 二 连接数据库 1 连接 mysql数据库 (1)下载mysql(5.6.25-winx64) 建议下 ...
- 在Web中使用Windows控件
版权声明:本文为博主原创文章,未经博主允许不得转载. 目录(?)[+] 将Net控件转化为ActiveX控件 1GUID 2实现IObjectSafety接口 3程序集设定 制作安装程序 Web集 ...
- win8.1中EZDML输入中文显示问号问题
在win8.1下使用EZDML,发现无法输入中文,解决办法如下: 打开控制面板--语言 删除美式键盘 然后就可以正常输入中文了 其实就是win8.1把美式键盘默认放在中文语言中,导致的输入问题 ...
- messagePaneHost
Microsoft.Dynamics.Framework.UI.WinForms.Controls.MessageBarType messageBarType; super(); imageList ...
- ES6与ES5差别
1.ES6新增了let命令,用来声明变量.它的用法类似于var,但是所声明的变量,只在let命令所在的代码块内有效. { var a = 1; let b = 1; } a; b;/ let不像var ...