利用Nexus回构建企业级Maven仓库 (转)
利用Nexus来构建企业级Maven仓库 (转)利用Nexus来构建企业级Maven仓库Nexus简介?Nexus是Maven仓库管理器,
利用Nexus来构建企业级Maven仓库 (转)
利用Nexus来构建企业级Maven仓库
Nexus简介
?
Nexus是Maven仓库管理器,用来搭建一个本地仓库服务器,这样做的好处是便于管理,节省网络资源,速度快,还有一个非常有用的功能就是可以通过项目的SNAPSHOT版本管理,来进行模块间的高效依赖开发,下面会一一描述。
?
虽然你可以通过中央仓库来获取你所需要的jar包,但是现实往往是存在很多问题:
- 网速慢,你可能需要花很长的时间来下载你所需要的jar
- 如果你的公司很大,有几百甚至几千人再用Maven,那么这些人都去通过中央仓库来获取jar,那么这是一个很大的资源浪费
- 如果存在模块之间的依赖开发,你的snapshot版本是不能够被你的伙伴很方便的获取。
- 在实际开发过程中,有些jar的版本可能在中央仓库里面不存在,或者更新不及时,你是获取不到这个jar的。
所有以上问题,通过Nexus这个日益流行的仓库管理器可以轻松的解决。
?- 这个仓库是本地的,下载的速度是从远程下载不可比的。
- 可以为你公司所有的Maven使用者服务,可以进行统一管理
- 后面我会介绍如何通过nexus来进行存在模块依赖的项目的开发
- 你可以添加自己的第三方包。
配置中央仓库
?
先看一下界面:
在左边菜单栏里选择Repositories,然后会出现右边的画面,右边上半部分是列出来的repository,黑体字是类型为group的repository. 这里简单介绍下几种repository的类型:
hosted,本地仓库,通常我们会部署自己的构件到这一类型的仓库。比如公司的第二方库。proxy,代理仓库,它们被用来代理远程的公共仓库,如maven中央仓库。group,仓库组,用来合并多个hosted/proxy仓库,当你的项目希望在多个repository使用资源时就不需要多次引用了,只需要引用一个group即可。
Maven central是Maven的中央仓库,点击它并选择configuration标签栏,我们会看到下面的页面:
这里有几个项目是我们可能会经常用到的:
- Override local storage location: 在这个选项你可以配置你的Nexus本地仓库的存放地址,用来覆盖其默认的存放地址
- Remote storage location: 这里是远程仓库的地址,为了提高代理速度,你可以修改为国内的镜像地址。默认值是http://repo1.maven.org/maven2/
- Download remote indexes: 这里配置是否下载远程索引文件,模式是false, 建议配置为true,这样我们便可以通过索引文件来搜索我们需要的构件。