mac搭建nexus私服日记

之前一直用别人搭好的nexus私服,今天心血来潮想自己搭建玩玩,捣鼓了一番觉得还是得记录下来。

系统环境:macOS High Sierra(10.13.1)
nexus:nexus OSS 2.14.5

nexus的私服原理就不多说了,直接上一幅网图吧。

以下是步骤:

1. 下载安装
一开始下载的是最新版3.x的,但下载下来解压后,运行不起来,看sonatype-work里面的logs报的是缺某个jar包,折腾了好久也搞不清楚,后来怀疑是该版本与系统不兼容,于是下载2.x版本的,运行成功了。

luoshaolongdeMacBook-Pro:bin luoshaolong$ ./nexus start
Starting Nexus OSS...
Started Nexus OSS.
luoshaolongdeMacBook-Pro:bin luoshaolong$ ./nexus status
Nexus OSS is running (15475).
luoshaolongdeMacBook-Pro:bin luoshaolong$

服务启动后,本机可以访问http://localhost:8081/nexus,端口默认配置在nexus.properties,可以用admin/admin123登录,效果如下图:

2.nexus仓库介绍

nexus的仓库类型分为以下四种:
group: 仓库组
hosted:宿主
proxy:代理
virtual:虚拟

刚登录看到以下几个仓库:
PublicRepositories:仓库组
3rd party:无法从公共仓库获得的第三方发布版本的构件仓库
Apache Snapshots:用了代理ApacheMaven仓库快照版本的构件仓库
Central:用来代理maven中央仓库中发布版本构件的仓库
Central M1 shadow:用于提供中央仓库中M1格式的发布版本的构件镜像仓库
Releases:用来部署管理内部的发布版本构件的宿主类型仓库
Snapshots:用来部署管理内部的快照版本构件的宿主类型仓库

3. 配置nexus

  • 开启远程索引

对proxy类型的仓库开启远程索引,在设置项Configuration中把Download Remote Indexes设置为True。

然后在该仓库列表右键repair远程索引目录,nexus就会去下载。

  • 创建宿主仓库

  • 把远程和宿主仓库纳入组

Nexus 中仓库组的概念是Maven没有的,在Maven看来,不管你是hosted也好,proxy也好,或者group也好,对我都是一样的,我只管根据 groupId,artifactId,version等信息向你要构件。为了方便Maven的配置,Nexus能够将多个仓库,hosted或者 proxy合并成一个group,这样,Maven只需要依赖于一个group,便能使用所有该group包含的仓库的内容。

到目前为止,nexus私服配置就完成了,可以在maven中引用。

相关文章

相关标签/搜索