Nexus上传jar包到私有Maven仓库的方法: 页面Upload 和命令

文章讲述了在Nexus中上传jar包时,手动Upload和mvndeploy命令的适用场景。手动Upload适合上传工具类jar包,而复杂依赖的jar包需用mvndeploy并伴随pom文件上传。未勾选生成pom文件会导致编译错误,而生成的pom文件包含了项目的基本信息如GroupID和version。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Uploadmvn deploy命令两种上传方式的应用场景不同,手动上传适用于工具类的jar包,比如项目需要引入的lib文件,这种可以选择手动上传。复杂的、有较多依赖的jar包则需要连同pom文件一起上传,此时需要使用mvn deploy

 登录Nexus,选择Upload,选择要上传的目标仓库,选择 File 填写 Group ID 等,最重要的是要点选Generate a POM file with these coordinates如下图:在这里插入图片描述

正常上传后会有jarpom文件,这用1.0版本的截图:

在这里插入图片描述

不勾选,上传成功后没有pom相关文件:

在这里插入图片描述没有pom文件编译时会报错:

Could not find artifact com.xxxx:gpss-nonetty:pom:3.0 in nexus (http://localhost:8081/repository/maven-public/) 

 勾选后生成的pom文件内容如下:

<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.xinan</groupId>
    <artifactId>gpss-nonetty</artifactId>
    <version>3.0</version>
    <packaging>jar</packaging>
</project>

删除的方法如下:

在这里插入图片描述

 

### 如何使用 Nexus Repository Manager 上传 JAR #### 使用 Maven 命令行工具上传 JAR 可以通过 `mvn` 工具来完成 JAR 文件的上传操作。以下是具体方法: 1. **准备必要的参数** 需要提供以下信息以便执行命令: - groupId:项目的唯一标识符。 - artifactId:模块名称或组件名称。 - version:版本号。 - packaging:打类型(通常为 jar)。 - file:本地 JAR 文件路径。 - url:Nexus 私服仓库 URL 地址。 - repositoryId:远程仓库 ID。 2. **运行 Maven 命令** 执行如下命令即可将指定的 JAR 文件部署到 Nexus 中: ```bash mvn deploy:deploy-file \ -DgroupId=cn.senseinfo.external \ -DartifactId=senseinfo-external-sdk \ -Dversion=1.0 \ -Dpackaging=jar \ -Dfile=C:\\Users\\liquan\\git\\liquan_message\\jar\\senseinfo-external-sdk-1.0.jar \ -Durl=http://nexus.xianjinxia.com:8081/repository/maven-releases/ \ -DrepositoryId=nexus-releases \ -DgeneratePom=true ``` 上述命令会将位于 C:\Users\liquan\git\liquan_message\jar\senseinfo-external-sdk-1.0.jar 的文件上传至 http://nexus.xianjinxia.com:8081/repository/maven-releases/ 路径下的 releases 库中[^3]。 3. **验证上传成功与否** 登录到 Nexus Repository Manager Web 控制台,导航至目标仓库并确认新上传JAR 是否可见。如果一切正常,则说明已成功完成上传过程。 #### 直接通过 Nexus UI 进行手动上传 对于某些场景下无法借助脚本自动化实现的情况,也可以采用图形界面的方式来进行单次的手动导入工作流: 1. 访问 Nexus 官方网站登录页面后进入管理后台; 2. 寻找对应的目标存储库位置点击浏览按钮查看其目录结构; 3. 利用界面上提供的功能选项卡选择“Upload Items”,按照提示逐步填写所需字段值直至提交完毕为止[^2]。 以上两种途径均能有效达成向私有 Maven 服务器推送自定义编译产物的目的,并且各有优劣之处需视实际需求而定选用合适的方法实施操作。 ```python # 示例 Python 脚本用于模拟调用外部程序执行上述命令 import subprocess command = [ 'mvn', 'deploy:deploy-file', '-DgroupId=cn.example.group', '-DartifactId=my-artifact-id', '-Dversion=1.0-SNAPSHOT', '-Dpackaging=jar', '-Dfile=path/to/my-jar-with-dependencies.jar', '-Durl=http://your-nexus-server/repository/maven-snapshots/', '-DrepositoryId=nexus' ] subprocess.run(command, check=True) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值