Maven 私服是企业级开发中用于管理和共享 JAR 包的重要工具。通过将 PIGX 项目构建并上传到私服,可以实现团队内部的依赖共享和版本管理。本文档介绍如何使用阿里云制品仓库作为 Maven 私服,完成 PIGX 项目的构建和上传。
适用于需要在团队内部共享 PIGX 自定义模块、进行版本控制或多环境部署的场景。
在上传私服之前,需要将 PIGX 项目的版本号统一修改为快照版本(SNAPSHOT),以便持续集成和开发迭代。
在 IDEA 中使用快捷键 Ctrl + Shift + R(Windows/Linux)或 Command + Shift + R(macOS)打开全局替换对话框,将当前版本号(如 5.11.1)替换为快照版本(如 5.11.1-SNAPSHOT)。
快照版本必须以 -SNAPSHOT 结尾,用于标识该版本为开发中的不稳定版本,可以被重复覆盖上传。
阿里云制品仓库(Packages)提供免费的 Maven 私服服务,支持快照版本和正式版本的管理。
打开浏览器访问 https://packages.aliyun.com,使用阿里云账号登录。
点击"创建仓库"按钮,选择仓库类型为"Maven",填写仓库名称和描述信息。
创建成功后,进入仓库详情页面,分别获取"发布版本仓库地址"和"快照版本仓库地址",后续配置时需要使用。
在 PIGX 项目的 POM 文件中配置私服仓库地址,使 Maven 能够将构建产物上传到指定仓库。
需要在以下两个 POM 文件中添加 <distributionManagement> 配置:
pigx/pom.xml(父 POM)pigx/pigx-common/pigx-common-bom/pom.xml(BOM 依赖管理)请将上述示例中的仓库地址替换为你在阿里云制品仓库中实际获取的地址,特别是快照仓库地址。
在 Maven 的 settings.xml 文件中配置阿里云制品仓库的账号密码,用于上传权限验证。
访问 https://packages.aliyun.com/system-settings 页面,在"访问凭证"或"用户信息"中获取用户名和密码。
在 Maven 安装目录的 conf/settings.xml 或用户目录的 .m2/settings.xml 文件中添加以下配置:
请删除 settings.xml 中的代理配置和其他无关配置,仅保留 <servers> 节点配置,避免上传时出现认证失败或网络问题。
<server> 中的 <id> 必须与 POM 文件中 <distributionManagement> 配置的 <id> 完全一致,Maven 通过 ID 匹配来获取认证信息。
完成上述配置后,在 PIGX 项目根目录执行以下命令进行构建和上传。
首先执行本地构建,确保项目编译成功:
该命令会清理旧的构建产物,编译所有模块,并将 JAR 包安装到本地 Maven 仓库(~/.m2/repository)。
本地构建成功后,执行以下命令将 JAR 包上传到私服:
命令执行成功后,可以在阿里云制品仓库的 Web 界面中查看已上传的 JAR 包及其版本信息。
当团队其他成员上传了新的快照版本时,需要强制更新本地依赖以获取最新版本。
-U 参数表示强制更新快照依赖,Maven 会检查私服上是否有更新的快照版本并下载到本地。
检查 settings.xml 中的用户名和密码是否正确,以及 <server> 的 <id> 是否与 POM 中的配置一致。
检查 POM 中的仓库地址是否正确,快照版本是否上传到了快照仓库(而非正式版本仓库)。
执行 mvn clean install -U 强制更新,或删除本地仓库中的快照缓存目录(~/.m2/repository/com/pig4cloud/pigx)后重新构建。