首先来介绍一下nexus这个开发中会用到的服务,Nexus是一个强大的Maven仓库管理器,它极大地简化了自己内部仓库的维护和外部仓库的访问。利用Nexus你可以只在一个地方就能够完全控制访问 和部署在你所维护仓库中的每个Artifact。Nexus是一套“开箱即用”的系统不需要数据库,它使用文件系统加Lucene来组织数据。Nexus 使用ExtJS来开发界面,利用Restlet来提供完整的REST APIs,通过m2eclipse与Eclipse集成使用。Nexus支持WebDAV与LDAP安全身份认证。
在官方网站上提供了下载,其中Pro是专业版,收费的,OSS是免费版,用这个就足够了。如果官网下载比较慢,或者下载不下来,可私信【获取nexus】来获取nexus3版本。
解压nexus压缩包,会得到两个文件夹:
其中nexus-3.19.1-01文件夹是方nexus程序的,sonatype-work是放仓库类信息的。进入nexus-3.19.1-01文件夹:
bin文件夹里面放的是可执行文件,etc文件夹里放的是一些可配置文件,其中nexus-default.properties可配置nexus启动的一些参数:
这里把启动端口置为9081,默认是8081,操作nexus可通过bin文件夹里的nexus可执行文件执行,可执行命令如下:
我们使用./neuxs start启动nexus服务,第一次启动可能会比较慢,并且会生成一个临时的管理员的密码,在你第一次进入nexus管理后台时,会让你修改密码,然后这个临时密码文件也就消失了。输入ip:port会进入如下页面:
我们使用管理员登录一下,会多出来一个设置的面板:
仓库里类型说明:
hosted(宿主仓库库) :存放本公司开发的jar包(正式版本、测试版本)
proxy(代理仓库):代理中央仓库、Apache下测试版本的jar包
group(组仓库):使用时连接组仓库,包含Hosted(宿主仓库)和Proxy(代理仓库)
virtual (虚拟仓库) :基本用不到,重点关注上面三个仓库的使用
想要使用我们搭建的私服,首先要在本地Maven的配置文件中做相关配置,在Maven的conf/server.xml中配置server、mirror和profile:
如果我们工程中用到相关jar包,会首先查看本地仓库有没有相关jar包,如果没有就通过私服下载,私服上面没有,就会去中央仓库中寻找,找到后在私服上存一份,然后下载到本地使用:
下载的过程是有了,那么上传呢?就是一些常用的jar包,或者公司内部开发的jar包,想放到私服上,供其他同事来开发和使用,很简单,在工程中的pom.xml文件中加入如下配置:
这里的配置的id,要和maven中配置文件中配置的server标签中的id保持一致,然后我们使用mvn:deploy就可以把本地的jar包,推送到私服里了:
其他同事就可以连接到这个私服上,使用这个jar包了!