在CentOS 7系统中部署Nexus作为Maven私有仓库,可以有效提升团队构建效率并管理依赖版本,以下是详细的实施步骤和注意事项。

环境准备
首先确保CentOS 7系统已安装Java环境,推荐使用OpenJDK 8或更高版本,执行以下命令检查Java安装情况:
java -version
若未安装,可通过yum命令快速部署:
sudo yum install java-1.8.0-openjdk-devel -y
Nexus安装与配置
下载Nexus安装包
访问Nexus官方仓库下载最新版本(如nexus-3.41.1-01-unix.tar.gz),或使用wget命令直接获取:wget https://download.sonatype.com/nexus/3/nexus-3.41.1-01-unix.tar.gz tar -zxvf nexus-3.41.1-01-unix.tar.gz -C /opt
创建服务用户
为安全起见,建议创建独立运行用户:sudo useradd -r -s /bin/false nexus sudo chown -R nexus:nexus /opt/nexus-3.41.1-01
配置系统服务
编辑/etc/systemd/system/nexus.service文件,添加以下内容:
[Unit] Description=Nexus Repository Manager After=network.target [Service] User=nexus Group=nexus ExecStart=/opt/nexus-3.41.1-01/bin/nexus run ExecStop=/opt/nexus-3.41.1-01/bin/nexus shutdown Restart=on-abort [Install] WantedBy=multi-user.target
启用并启动服务:
sudo systemctl daemon-reload sudo systemctl start nexus sudo systemctl enable nexus
访问Web界面
默认情况下,Nexus监听8081端口,通过浏览器访问http://服务器IP:8081,使用默认管理员账号(admin/admin123)登录后按提示修改密码。
Maven仓库配置
在Nexus Web界面中,可通过以下步骤创建Maven仓库:
- 进入”Repositories” → “Create repository” → “maven2 (hosted)”
- 配置仓库名称(如
team-maven-releases)和存储策略(Release/Snapshot) - 保存后记录仓库URL(如
http://服务器IP:8081/repository/team-maven-releases/)
Maven客户端配置
修改Maven的settings.xml文件,添加服务器认证信息:
<servers>
<server>
<id>team-releases</id>
<username>admin</username>
<password>your_password</password>
</server>
</servers> 在项目的pom.xml中配置远程仓库:

<distributionManagement>
<repository>
<id>team-releases</id>
<url>http://服务器IP:8081/repository/team-maven-releases/</url>
</repository>
</distributionManagement> 常见问题处理
| 问题现象 | 可能原因 | 解决方案 |
|---|---|---|
| Nexus启动失败 | 端口冲突 | 检查8081端口占用情况,修改nexus.properties中的端口配置 |
| 上传依赖超时 | 防火墙拦截 | 开放8081端口:sudo firewall-cmd --permanent --add-port=8081/tcp |
| 403认证错误 | 权限不足 | 确认settings.xml中的server ID与pom.xml中repository ID一致 |
FAQs
Q1: 如何备份Nexus数据?
A1: Nexus数据默认存储在/opt/sonatype-work/nexus3目录,可通过以下命令定期备份:
sudo tar -czf nexus-backup-$(date +%Y%m%d).tar.gz /opt/sonatype-work/nexus3
Q2: 如何配置Nexus支持HTTPS?
A2: 生成SSL证书后,编辑nexus.properties文件,添加以下配置:
nexus-args=-Xms512m -Xmx512m -XX:MaxDirectMemorySize=1G -XX:+UnlockExperimentalVMOptions -XX:+UseContainerSupport -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=${karaf.data}/../dump -Djava.util.logging.config.file=${karaf.data}/etc/java.util.logging.properties -Dkaraf.home=${karaf.home} -Dkaraf.data=${karaf.data} -Dkaraf.etc=${karaf.etc} -Djava.library.path=${karaf.home}/lib -Dorg.apache.karaf.features.bootFeature=wrap:mvn:org.apache.karaf.features/framework/4.3.3/xml/features
application-port-ssl=8443
application-host-ssl=0.0.0.0 然后重启Nexus服务并访问https://服务器IP:8443。
【版权声明】:本站所有内容均来自网络,若无意侵犯到您的权利,请及时与我们联系将尽快删除相关内容!
发表回复