ubuntu下使用Nexus搭建Maven私服
1、私服简介:
私服是架设在局域网的一种特殊的远程仓库,目的是代理远程仓库及部署第三方构件。有了私服之后,当 Maven 需要下载构件时,直接请求私服,私服上存在则下载到本地仓库;否则,私服请求外部的远程仓库,将构件下载到私服,再提供给本地仓库下载。
我们可以使用专门的 Maven 仓库管理软件来搭建私服,比如:Apache Archiva,Artifactory,Sonatype Nexus。这里我们使用 Sonatype Nexus。
2 . 安装Nexus
Nexus 专业版是需要付费的,这里我们下载开源版 Nexus OSS。
Nexus下载地址:
将下载好的压缩包放到目标服务器,进行解压
解压之后在目录里面会得到nexus-2.14.3-02和sonatype-work这两个文件夹,其中nexus-2.14.3-02是Nexus的系统文件,sonatype-work是Maven私服的工作目录,我们上传和下载的jar都在这里面;
接下来,我们要去改Nexus的运行端口,以免启动时端口冲突,进入nexus-2.14.3-02里面的conf目录,修改nexus.properties这个文件
因为Maven存放的是jar包,在上传时需要编译,所以需要配置jdk的路径
进入bin目录下的jsw中的conf,修改wrapper.conf这个文件
配置完jdk的路径后,可以使用bin目录下的nexus脚本(其实是使用同级目录下的nexus.bat操作nexus)启动nexus服务
执行时会有相应的提示;
Nexus运行时,日志会在logs目录下打印,出现问题是别忘了去看看日志;
服务开启之后,找个浏览器访问:8081/nexus IP输入你自己的,
3、简单的使用:
登陆Nexus,默认的用户名是:admin、密码是:admin123
介绍一下这些仓库都是什么:
3rd parth:第三方库,主要存放一些第三方的jar包;
Apached Snapshots:apache的开发版本的jar仓库;
Central:中央仓库,这里存放的是中央仓库的jar包;
Central M1 shadow: 这是中央仓库的一个虚拟仓库;
Releases:这是我们上传私服时的仓库,存放的是稳定版本的jar包;
Snapshots:这是存放开发版本的jar包;
Public repositories:这是一个仓库组,可以把上述的仓库添加到这个仓库组中;
接下来,就要下载索引了,没有索引,私服就没法去外网的Maven中央仓库中下载jar包了,需要跟新的有Central、Apached Snapshots这两个库
在页面上下载,我想你也看到这,下面有个update index的选项,一般来说,中央仓库的索引每周会更新一次,我们可以每个月更新一次就行了,第一次下载的时间比较长,比较目前的索引达到了2个多G、可以在Scheduler tasks页面上看更新任务的进度:
当然,也可以采取手动更新的方式更新索引
到中心仓库下载最新版本的索引文件
拉到最后下载nexus-maven-repository-index.gz
nexus-maven-repository-index.properties这两个文件