Nexus简介
Nexus 是Maven仓库管理器,如果你使用Maven,你可以从Maven中央仓库 下载所需要的构件(artifact),但这通常不是一个好的做法,你应该在本地架设一个Maven仓库服务器,在代理远程仓库的同时维护本地仓库,以节省带宽和时间,Nexus就可以满足这样的需要。此外,他还提供了强大的仓库管理功能,构件搜索功能,它基于REST,友好的UI是一个extjs的REST客户端,它占用较少的内存,基于简单文件系统而非数据库。这些优点使其日趋成为最流行的Maven仓库管理器。
搭建Nexus私服
①下载nexus,下载安装地址:https://www.sonatype.com/download-oss-sonatype ,这里我们用的是nexus-3.14.0-04-unix.tar.gz版本
②上传至服务器路径下,解压
③调整nexus的maxfile,在/etc/security/limits.conf文件的最后添加一行
nexus - nofile 65536
③进入bin目录下,启动,并开放默认的8081端口
./nexus start
- 上面在启动过程中出现告警:不推荐使用root用户启动。这个告警不影响nexus的正常访问和使用。
去掉上面WARNING的办法:vim nexus,将RUN_AS_USER修改为root,保存之后,再次启动nexus。
- 查看nexus 控制台,命令:./nexus console
④我们访问http://192.168.37.152:8081/,使用amidn/admin123登录
⑤新建一个maven账户nexus/nexuspwd,赋予其nx-admin角色权限
⑥ 我们新建一个测试项目MavenDep,验证是否可以将其成功上传项目至私服
pom.xml文件中添加
<distributionManagement>
<repository>
<id>releases</id>
<name>Nexus Release Repositories</name>
<url>http://192.168.37.152:8081/repository/maven-releases/</url>
</repository>
<snapshotRepository>
<id>snapshots</id>
<name>Nexus Snapshots Repositories</name>
<url>http://192.168.37.152:8081/repository/maven-snapshot/</url>
</snapshotRepository>
</distributionManagement>
maven的配置文件setting.xml添加
<server>
<id>releases</id>
<username>nexus</username>
<password>nexuspwd</password>
</server>
<server>
<id>snapshots</id>
<username>nexus</username>
<password>nexuspwd</password>
</server>
这里的id对应的是上面pom.xml文件中配置的<repository>的<id>内的值
执行mvn命令deploy,可以在仓库中看到发布成功的项目
可以考虑使用Nginx来反向代理到Nexus