1 Nexus介绍
Nexus是Maven仓库管理器,如果你使用Maven,你可以从Maven中央仓库 下载所需要的构件(artifact),但这通常不是一个好的做法,你应该在本地架设一个Maven仓库服务器,在代理远程仓库的同时维护本地仓库,以节省带宽和时间,Nexus就可以满足这样的需要。此外,他还提供了强大的仓库管理功能,构件搜索功能,它基于REST,友好的UI是一个extjs的REST客户端,它占用较少的内存,基于简单文件系统而非数据库。这些优点使其日趋成为最流行的Maven仓库管理器。
2 下载地址
https://www.sonatype.com/download-oss-sonatype
3部署搭建
安装jdk环境和nexus
[root@nexus ~]#: rpm -ivh jdk-8u212-linux-x64.rpm
[root@nexus ~]#: tar xf nexus-3.16.1-02-unix.tar.gz
[root@nexus ~]#: mv nexus-3.16.1-02 /data/nexus
启动Nexus把整个硬盘作为存储空间,硬盘空间越大nexus启动越慢
[root@nexus ~]#: /data/nexus/bin/nexus start
[root@nexus ~]#: netstat -luntp
tcp 0 0 0.0.0.0:8081 0.0.0.0:* LISTEN 2282/java nexus的端口为8081启动成功
4 介绍
这只仓库,现在仓库里应该都没有东西
第一个是代理的性质的,它会去中央仓库下载
第二个公开的组
复制URL更改maven的配置文件
[root@jenkins ~]#: cd /usr/local/maven/conf/
[root@jenkins conf]#: vim settings.xml
找到 <servers> 标签,添加 Nexus 默认认证信息:
<server>
<id>my-nexus-releases</id>
<username>admin</username>
<password>admin123</password>
</server>
<server>
<id>my-nexus-snapshot</id>
<username>admin</username>
<password>admin123</password>
</server>
找到 <mirrors> 标签,添加镜像:
<mirror>
<!--This sends everything else to /public -->
<id>nexus</id>
<mirrorOf>*</mirrorOf>
<url>http://localhost:8081/nexus/content/groups/public/</url>
</mirror>
找到 <profiles> 标签,添加仓库信息:
<profile>
<id>nexus</id>
<!--Enable snapshots for the built in central repo to direct -->
<!--all requests to nexus via the mirror -->
<repositories>
<repository>
<id>central</id>
<url>http://central</url>
<releases><enabled>true</enabled></releases>
<snapshots><enabled>true</enabled></snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>central</id>
<url>http://central</url>
<releases><enabled>true</enabled></releases>
<snapshots><enabled>true</enabled></snapshots>
</pluginRepository>
</pluginRepositories>
</profile>
激活仓库:
<activeProfiles>
<!--make the profile active all the time -->
<activeProfile>nexus</activeProfile>
</activeProfiles>
配置完成后保存,并重启 nexus 服务
带 <url>http://central</url>的信息都要改成刚才复制的地址
<url>http://10.0.0.22:8081/repository/maven-public/</url>
以后在需要依赖包,在nexus私服里找,没有在会按照上面介绍的顺序查找