Nexus 3 搭建私有maven仓库(linux)
·
1. 安装必要依赖
Nexus 需要 Java 环境,先确保已安装 JDK 8 或更高版本:
bash
# 检查 Java 是否安装
java -version
# 如未安装,以 OpenJDK 11 为例
sudo apt update
sudo apt install openjdk-11-jdk # Debian/Ubuntu
# 或
sudo yum install java-11-openjdk # CentOS/RHEL
2. 下载并安装Nexus 3
bash
# 创建安装目录
sudo mkdir -p /opt/nexus
cd /opt/nexus
# 下载 Nexus 3(请替换为最新版本链接)
sudo wget https://download.sonatype.com/nexus/3/latest-unix.tar.gz
# 解压
sudo tar -zxvf latest-unix.tar.gz
# 重命名解压目录(方便后续操作)
sudo mv nexus-*/ nexus
sudo mv sonatype-work/ nexus-data
3. 配置 Nexus
bash
# 创建专用用户运行 Nexus(不建议用 root)
sudo useradd -r -s /sbin/nologin nexus
sudo chown -R nexus:nexus /opt/nexus/nexus
sudo chown -R nexus:nexus /opt/nexus/nexus-data
# 修改配置允许用 nexus 用户启动
sudo vi /opt/nexus/nexus/bin/nexus.rc
# 取消注释并修改为:run_as_user="nexus"
# 可选:修改默认端口(默认 8081)
sudo vi /opt/nexus/nexus/etc/nexus-default.properties
# 更改:application-port=8081
4. 配置系统服务
bash
# 创建系统服务文件
sudo vi /etc/systemd/system/nexus.service
添加以下内容:
ini
[Unit]
Description=nexus service
After=network.target
[Service]
Type=forking
LimitNOFILE=65536
User=nexus
Group=nexus
ExecStart=/opt/nexus/nexus/bin/nexus start
ExecStop=/opt/nexus/nexus/bin/nexus stop
Restart=on-abort
[Install]
WantedBy=multi-user.target
5. 启动并设置开机自启
bash
# 刷新系统服务
sudo systemctl daemon-reload
# 启动 Nexus
sudo systemctl start nexus
# 设置开机自启
sudo systemctl enable nexus
# 查看状态
sudo systemctl status nexus
6. 初始化 Nexus
- 访问 Nexus 控制台:
http://服务器IP:8081 - 点击右上角 "Sign in",默认用户名是
admin - 获取初始密码:
bash
sudo cat /opt/nexus/nexus-data/admin.password - 登录后按提示修改密码
- 选择 "Enable anonymous access" 方便后续使用
7. 创建 Maven 仓库
- 登录后,点击左侧菜单 "Repositories"
- 点击 "Create repository",选择
maven2(hosted)(宿主仓库,存储自己的包) - 填写仓库信息:
- Name:
maven-releases(发布版本仓库) - Version policy:
Release - Deployment policy:
Allow redeploy(允许重复部署,生产环境可改为Disable redeploy)
- Name:
- 点击 "Create repository" 完成创建
- 重复步骤 2-4 创建快照仓库:
- Name:
maven-snapshots - Version policy:
Snapshot
- Name:
8. 配置 Maven 使用私有仓库
在项目的 pom.xml 或 Maven 全局配置 settings.xml 中添加:
xml
<!-- settings.xml 中配置服务器认证 -->
<servers>
<server>
<id>maven-releases</id>
<username>admin</username>
<password>你的密码</password>
</server>
<server>
<id>maven-snapshots</id>
<username>admin</username>
<password>你的密码</password>
</server>
</servers>
<!-- 项目 pom.xml 中配置仓库 -->
<repositories>
<repository>
<id>maven-releases</id>
<url>http://服务器IP:8081/repository/maven-releases/</url>
</repository>
<repository>
<id>maven-snapshots</id>
<url>http://服务器IP:8081/repository/maven-snapshots/</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
<distributionManagement>
<repository>
<id>maven-releases</id>
<url>http://服务器IP:8081/repository/maven-releases/</url>
</repository>
<snapshotRepository>
<id>maven-snapshots</id>
<url>http://服务器IP:8081/repository/maven-snapshots/</url>
</snapshotRepository>
</distributionManagement>
9. 测试部署
使用 Maven 命令部署项目到私有仓库:
bash
mvn clean deploy
至此,Nexus 3 私有 Maven 仓库搭建完成。你可以通过 Nexus 控制台管理仓库、查看已上传的依赖包等。
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)