Maven 私服Nexus 上传pom文件 okhttp3 5.3.0版本
我给你最简单、最直接、不用写代码、不用 Maven的方法,专门用来下载 okhttp3 5.3.0 的 jar + pom,你照着点就能拿到。
https://repo1.maven.org/maven2/
https://repo1.maven.org/maven2/
https://repo1.maven.org/maven2/
一、直接打开中央仓库地址(最稳)
okhttp3 5.3.0 下载页:
https://repo1.maven.org/maven2/com/squareup/okhttp3/okhttp/5.3.0/
打开后你会看到这些文件:
- okhttp-5.3.0.pom
- okhttp-5.3.0.jar
- okhttp-5.3.0-javadoc.jar
- okhttp-5.3.0-sources.jar
- ……
下载方法:
- 右键点击文件 → 另存为
- 保存到本地即可
二、如果你要完整一套(推荐上传 Nexus 用)
你需要下载这 2 个文件就够:
- okhttp-5.3.0.pom
- okhttp-5.3.0.jar
下载地址我直接给你:
- POM:
https://repo1.maven.org/maven2/com/squareup/okhttp3/okhttp/5.3.0/okhttp-5.3.0.pom
- JAR:
https://repo1.maven.org/maven2/com/squareup/okhttp3/okhttp/5.3.0/okhttp-5.3.0.jar
三、下载完怎么上传到 Nexus(极简版)
- 进入你的 Nexus 仓库(maven-releases)
- 点 Upload component
- GAV Definition → From POM
- 选择你下载的 okhttp-5.3.0.pom
- 下面 Artifact 里选择 okhttp-5.3.0.jar
- 点 Upload component 完成
----------------------------------------------------------------------------------------------------
https://repo1.maven.org/maven2/
一、Maven 私服(Nexus/Artifactory)上传 Jar/Pom
1. 浏览器手动上传(适合单个文件)
- 登录 Nexus 后台(默认
http://ip:8081)。 - 进入目标仓库(如
releases/snapshots/3rd-party)。 - 点击 Upload → 选择 Artifact Upload。
- 填写 GAV(GroupId/ArtifactId/Version),或选择 From POM 自动读取。
- 选择本地 Jar/Pom 文件 → 点击 Upload 完成。
2. Maven 命令行上传(适合批量 / 脚本)
bash
运行
mvn deploy:deploy-file \
-DgroupId=com.example \
-DartifactId=demo \
-Dversion=1.0.0 \
-Dpackaging=jar \
-Dfile=./demo.jar \
-DpomFile=./demo.pom \
-Durl=http://nexus-host:8081/repository/maven-releases/ \
-DrepositoryId=nexus-releases
- 需在
~/.m2/settings.xml配置私服账号密码:
xml
<server>
<id>nexus-releases</id>
<username>admin</username>
<password>admin123</password>
</server>
3. IDE 集成上传(IDEA/Eclipse)
- 在项目
pom.xml配置distributionManagement指向私服。 - 执行
mvn deploy或 IDE 菜单 Deploy 即可自动上传。
二、游戏 / 自建服务器上传文件 / 存档
1. SFTP 上传(推荐,适合大文件 / 批量)
- 获取服务器 SFTP 地址、端口、账号、密码(通常在面板
System > SFTP Details)。 - 用 FileZilla/WinSCP 连接:
- Host:SFTP 地址
- Port:22 或面板指定(如 2022)
- 用户名 / 密码:面板登录账号
- 本地文件(左侧)→ 拖拽到服务器目标目录(右侧)。
2. 面板网页上传(适合小文件)
- 登录游戏面板 → 进入 File Manager / 文件管理。
- 进入目标目录 → 点击 Upload 或直接拖拽文件上传。
3. 远程桌面 / 共享上传(Windows 服务器)
- 打开 远程桌面连接(mstsc) → 输入服务器 IP。
- 选项 → 本地资源 → 详细信息 → 勾选本地磁盘。
- 连接后,在服务器 “我的电脑” 中访问本地磁盘,复制粘贴文件。
三、常见问题
- 权限不足:确认账号有仓库 Write 权限。
- 上传失败:检查网络、端口是否开放、文件是否损坏。
- 索引不更新:Nexus 批量上传后需手动重建索引,或用
mvn deploy自动生成。
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
你想要在 Nexus 网页端上传 okhttp3 5.3.0 版本的 POM 文件,我会基于 okhttp3 的真实 GAV 信息,给你一步到位的详细操作步骤,包括 POM 文件准备、网页端上传全流程、校验方法,确保你能精准上传成功。
一、先明确 okhttp3 5.3.0 的核心信息(关键,不能错)
上传前必须确认 GAV(GroupId/ArtifactId/Version)与官方一致,否则依赖无法解析:
- GroupId:
com.squareup.okhttp3 - ArtifactId:
okhttp - Version:
5.3.0 - Packaging:
pom
二、准备 okhttp 5.3.0 的 POM 文件(2 种方式)
方式 1:手动创建最简 POM 文件(直接复制)
新建
okhttp-5.3.0.pom文件,内容如下(核心 GAV 与官方一致):xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<!-- 核心GAV,必须与上传时一致 -->
<groupId>com.squareup.okhttp3</groupId>
<artifactId>okhttp</artifactId>
<version>5.3.0</version>
<packaging>pom</packaging>
<!-- 可选:补充基础信息,不影响上传 -->
<name>OkHttp</name>
<description>An HTTP+HTTP/2 client for Android and Java applications</description>
<url>https://square.github.io/okhttp/</url>
</project>
方式 2:从 Maven 中央仓库下载官方 POM(推荐,更完整)
三、Nexus 网页端上传 okhttp 5.3.0 POM(详细步骤)
步骤 1:登录 Nexus
打开浏览器访问
http://你的NexusIP:8081 → 右上角「Sign in」→ 输入有上传权限的账号密码(如 admin)。步骤 2:进入目标仓库
左侧导航栏点击「Repositories」→ 找到并点击你要上传的仓库(如
maven-releases,因为 5.3.0 是正式版,非 SNAPSHOT)。步骤 3:进入上传界面
在仓库详情页顶部,点击「Upload component」(上传组件)。
步骤 4:配置上传参数(核心)
- GAV Definition:选择「From POM」(自动读取 POM 里的 GAV,避免手动输入错误)。
- Select POM File:点击「Choose file」→ 选择本地准备好的
okhttp-5.3.0.pom文件。- 选择后,Nexus 会自动解析并填充以下字段,核对是否与下方一致:
- Group ID:
com.squareup.okhttp3 - Artifact ID:
okhttp - Version:
5.3.0 - Packaging:
pom(自动识别,无需修改)。
- Group ID:
- 选择后,Nexus 会自动解析并填充以下字段,核对是否与下方一致:
- 其他选项:保持默认(仅上传 POM 时,无需添加额外 Artifact)。
步骤 5:提交上传
确认所有参数无误后,点击页面底部的「Upload component」按钮。
✅ 成功提示:页面顶部会显示「Component uploaded successfully」。
四、上传后校验(必做,确保可用)
步骤 1:查看上传的 POM 文件
- 回到仓库详情页 → 点击「Browse」标签。
- 按路径查找:
com → squareup → okhttp3 → okhttp → 5.3.0。 - 能看到
okhttp-5.3.0.pom文件,说明上传成功。
步骤 2:测试 Maven 依赖拉取
在本地 Maven 项目的
pom.xml中添加依赖:xml
<dependency>
<groupId>com.squareup.okhttp3</groupId>
<artifactId>okhttp</artifactId>
<version>5.3.0</version>
</dependency>
执行命令
mvn clean compile,若能正常从 Nexus 拉取依赖(无报错),说明 POM 文件可用。五、常见问题与解决
-
上传失败(400 Bad Request):
- 原因:
maven-releases仓库不允许重复上传相同版本(若之前传过 5.3.0)。 - 解决:要么删除 Nexus 中已有的 5.3.0 版本,要么改用
maven-snapshots仓库(需将版本改为5.3.0-SNAPSHOT)。
- 原因:
-
权限不足(401 Unauthorized):
- 原因:登录账号没有目标仓库的「Write」权限。
- 解决:联系 Nexus 管理员,给账号分配
nx-repository-view-maven-releases-edit权限。
-
依赖拉取不到:
- 原因:POM 文件的 GAV 与上传时的路径不一致,或本地 Maven 未配置 Nexus 仓库地址。
- 解决:核对 GAV 是否为
com.squareup.okhttp3:okhttp:5.3.0;检查本地settings.xml是否配置了 Nexus 仓库的镜像 / 仓库地址。
总结
- 上传 okhttp3 5.3.0 POM 的核心是GAV 必须准确(com.squareup.okhttp3:okhttp:5.3.0),推荐用「From POM」模式避免手动错误;
- 正式版需上传到
maven-releases仓库,且确保账号有上传权限; - 上传后通过「Browse」查文件、「mvn compile」测依赖,验证可用性。
----------------------------------------------------------------------------------------------------
你现在想把之前的通用命令改成适配 okhttp3 5.3.0 的可直接执行版本,并且要理解命令中每个参数的作用和注意事项,我会给你完整的、可复制的命令,同时解释关键细节,避免踩坑。
一、适配 okhttp3 5.3.0 的完整命令(直接复制使用)
先替换成 okhttp3 的真实 GAV 和文件路径,确保命令能直接执行:
bash
运行
mvn deploy:deploy-file \
-DgroupId=com.squareup.okhttp3 \
-DartifactId=okhttp \
-Dversion=5.3.0 \
-Dpackaging=pom \
-Dfile=./okhttp-5.3.0.pom \ # 替换成你本地POM文件的实际路径
-Durl=http://nexus-ip:8081/repository/maven-releases/ \ # 替换成你的Nexus仓库地址
-DrepositoryId=nexus-releases # 必须和settings.xml里的server.id一致
二、命令参数逐行解释(新手必看)
表格
| 参数 | 取值(okhttp3 5.3.0) | 作用说明 |
|---|---|---|
-DgroupId |
com.squareup.okhttp3 |
构件的组 ID,必须和 okhttp 官方一致,否则依赖解析失败 |
-DartifactId |
okhttp |
构件的项目 ID,注意不是 okhttp3(官方 artifactId 是 okhttp) |
-Dversion |
5.3.0 |
版本号,正式版不带 - SNAPSHOT,需上传到 maven-releases 仓库 |
-Dpackaging |
pom |
固定为 pom,表示本次上传的是 POM 文件(上传 Jar 时改为 jar) |
-Dfile |
./okhttp-5.3.0.pom |
本地 POM 文件路径:
/Users/xxx/Downloads/okhttp-5.3.0.pom |
-Durl |
http://nexus-ip:8081/repository/maven-releases/ |
Nexus 目标仓库地址:
|
-DrepositoryId |
nexus-releases |
对应~/.m2/settings.xml中<server>的<id>,用于匹配账号密码 |
三、前置条件(必须配置,否则报错)
1. 配置 settings.xml(账号密码)
打开
~/.m2/settings.xml(没有则新建),添加以下内容:xml
<settings>
<servers>
<!-- id必须和命令中的repositoryId一致 -->
<server>
<id>nexus-releases</id>
<username>admin</username> <!-- 你的Nexus账号 -->
<password>admin123</password> <!-- 你的Nexus密码 -->
</server>
</servers>
</settings>
2. 检查本地文件
确保
-Dfile指定的路径下有okhttp-5.3.0.pom文件,可执行ls ./okhttp-5.3.0.pom(Linux/Mac)或dir okhttp-5.3.0.pom(Windows)验证文件存在。四、执行命令的注意事项
- 终端路径:建议在 POM 文件所在目录执行命令,避免路径错误;
- 换行符问题:Windows 系统下如果复制命令报错,去掉换行符改成一行:
bash运行
mvn deploy:deploy-file -DgroupId=com.squareup.okhttp3 -DartifactId=okhttp -Dversion=5.3.0 -Dpackaging=pom -Dfile=./okhttp-5.3.0.pom -Durl=http://nexus-ip:8081/repository/maven-releases/ -DrepositoryId=nexus-releases - 权限问题:若报
401 Unauthorized,检查账号密码是否正确,或账号是否有 maven-releases 仓库的写权限; - 重复上传:若报
400 Bad Request,说明 5.3.0 版本已存在,可删除 Nexus 中已有版本,或改用快照版(版本改为 5.3.0-SNAPSHOT,仓库改为 maven-snapshots)。
五、上传成功的验证
执行命令后,终端输出
BUILD SUCCESS即上传成功,也可登录 Nexus 验证:- 进入 maven-releases 仓库 → 点击 Browse;
- 路径:
com → squareup → okhttp3 → okhttp → 5.3.0; - 能看到
okhttp-5.3.0.pom文件,说明上传完成。
总结
- 核心是替换命令中的GAV(com.squareup.okhttp3:okhttp:5.3.0) 和文件路径 / 仓库地址,确保和实际一致;
repositoryId必须和settings.xml中的server.id匹配,否则权限验证失败;- 正式版上传到 maven-releases,快照版上传到 maven-snapshots,版本号需对应规则。
----------------------------------------------------------------------------------------------------
你想知道使用
mvn deploy:deploy-file上传 POM 和 Jar 包时,是需要执行两次命令还是一次就能完成,答案是:一次命令就能同时上传 POM 和 Jar 包,不需要分开执行两次,这也是最推荐的方式(更高效且能保证 GAV 一致性)。
一、一次命令同时上传 POM+Jar(推荐)
核心是在命令中通过
-DpomFile指定 POM 文件,-Dfile指定 Jar 文件,Maven 会自动将两者关联上传,且共用一套 GAV 信息。适配 okhttp3 5.3.0 的完整命令(直接复制使用)
bash
运行
mvn deploy:deploy-file \
-DgroupId=com.squareup.okhttp3 \
-DartifactId=okhttp \
-Dversion=5.3.0 \
-Dpackaging=jar \ # 主构件是Jar,POM会自动关联
-Dfile=./okhttp-5.3.0.jar \ # 本地Jar文件路径
-DpomFile=./okhttp-5.3.0.pom \ # 本地POM文件路径(关键:指定pomFile参数)
-Durl=http://nexus-ip:8081/repository/maven-releases/ \
-DrepositoryId=nexus-releases
二、关键参数说明(为什么一次就行)
表格
| 参数 | 作用 | 注意事项 |
|---|---|---|
-Dfile |
指定主构件文件(这里是 Jar) | 必须填写,对应 packaging 类型(jar/war 等) |
-DpomFile |
指定关联的 POM 文件 | 核心参数!加了这个,Maven 会同时上传 POM,无需单独执行 |
-Dpackaging |
主构件的打包类型 | 填jar(因为主文件是 Jar),不是pom |
三、如果分开执行两次(不推荐,仅作说明)
如果你非要分开上传(比如先传 POM,再传 Jar),也是可以的,但容易出现 GAV 不一致、版本冲突等问题:
第一步:上传 POM(之前的命令)
bash
运行
mvn deploy:deploy-file \
-DgroupId=com.squareup.okhttp3 \
-DartifactId=okhttp \
-Dversion=5.3.0 \
-Dpackaging=pom \
-Dfile=./okhttp-5.3.0.pom \
-Durl=http://nexus-ip:8081/repository/maven-releases/ \
-DrepositoryId=nexus-releases
第二步:上传 Jar(需确保 GAV 和 POM 完全一致)
bash
运行
mvn deploy:deploy-file \
-DgroupId=com.squareup.okhttp3 \
-DartifactId=okhttp \
-Dversion=5.3.0 \
-Dpackaging=jar \
-Dfile=./okhttp-5.3.0.jar \
-Durl=http://nexus-ip:8081/repository/maven-releases/ \
-DrepositoryId=nexus-releases
❌ 缺点:两次输入容易手滑输错 GAV(比如版本号多写个 0),导致 POM 和 Jar 关联失败。
四、执行命令的前置条件(和之前一致)
~/.m2/settings.xml已配置 Nexus 账号密码(repositoryId匹配);- 本地有
okhttp-5.3.0.jar和okhttp-5.3.0.pom文件,路径填写正确; - 账号有 maven-releases 仓库的写权限。
五、上传成功验证
执行命令后,登录 Nexus 查看:
路径:
能同时看到
com → squareup → okhttp3 → okhttp → 5.3.0
okhttp-5.3.0.jar和okhttp-5.3.0.pom,说明上传成功。总结
- 推荐一次命令同时上传 POM+Jar,通过
-Dfile指定 Jar、-DpomFile指定 POM 即可,高效且避免 GAV 不一致; - 分开执行两次虽然可行,但易出错,仅适合特殊场景(如只补传某一个文件);
- 核心是
-DpomFile参数,它是关联 POM 和 Jar 的关键,缺一不可。
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------

浙公网安备 33010602011771号