maven手动上传jar到私服仓库:mvn deploy:deploy-file命令

一、场景

现需要将公司内部的jar包上传到私服仓库,供其他同事使用,此时就需要用到mvn deploy:deploy-file命令。

二、 mvn deploy:deploy-file命令

举个栗子:

xml 复制代码
mvn deploy:deploy-file 
-DgroupId=org.pttsql 
-DartifactId=pttsql 
-Dversion=69.6.0 
-Dpackaging=jar -Dfile=C:\Users\lee\Desktop\112\pttsql -69.6.0.jar 
-Durl=http://122.31.6.0:8981/repository/maven-releases 
-DrepositoryId=hidss-releases

1、命令参数说明

  • -Dfile:
    说明:要部署的文件的路径。
    示例:-Dfile=mylib-1.0.jar
  • -DgroupId:
    说明:项目的groupId,用于唯一标识项目所属的组织或公司。通常,这会是一个反向域名,例如com.example。
    示例:-DgroupId=com.example
  • -DartifactId:
    说明:项目的artifactId,用于唯一标识项目本身。这通常是项目的名称。
    示例:-DartifactId=mylib
  • -Dversion:
    说明:项目的版本号,用于标识项目的特定版本。
    示例:-Dversion=1.0
  • -Dpackaging:
    说明:文件的打包类型,如jar、war、pom等。
    示例:-Dpackaging=jar
  • -Durl:
    说明:仓库的URL地址,即要部署到的远程仓库的位置。
    示例:-Durl=http://repo.example.com/maven2/
  • -DrepositoryId:
    说明:与Maven的settings.xml文件中配置的<server>标签的id相匹配的服务器ID,用于认证。确保settings.xml文件中配置的<server>元素的id与此参数相匹配。
    示例:-DrepositoryId=my-repo-id
  • -DpomFile(可选):
    说明:如果需要部署POM文件,并且该文件与-Dfile指定的文件不同,则可以使用此参数指定POM文件的路径。
    示例:-DpomFile=path/to/pom.xml(当需要时)

2、在使用mvn deploy:deploy-file命令时,需要注意以下几点:

确保Maven的settings.xml文件位于正确的位置(通常是Maven安装目录下的conf文件夹,或者用户的.m2文件夹中)。

在settings.xml文件中正确配置<server>元素,包含仓库的认证信息(如用户名和密码),并确保id与-DrepositoryId参数相匹配。

检查网络连接和防火墙设置,确保可以访问Maven仓库的URL。

确保-Dfile指定的文件路径是正确的,并且文件确实存在于该路径下。

如果远程仓库中已经存在相同groupId、artifactId和version的包,Maven会拒绝部署。因此,确保版本号唯一,或者更新版本号。

3、总结

综上所述,mvn deploy:deploy-file命令通过一系列参数指定了要部署的文件、项目信息、仓库信息等,是Maven中用于将文件部署到远程仓库的重要工具。

相关推荐
瑞克-桑切斯10 分钟前
7、MySQL 慢查询排查与优化实战指南
java·服务器·数据库
海的透彻5 小时前
dockerfile如何快速构建容器(java服务)
java·开发语言
code2cat5 小时前
Java工具篇之Gradle:用任务图组织构建与交付
java·开发语言·单元测试·gradle
后台模板学习5 小时前
大模型 Prompt 工程在电商订单系统中的踩坑记录
java·python·prompt
w_zero_one5 小时前
算法--构造
java·数据结构·算法
SL_staff6 小时前
制造业订单交付崩盘?用四层协同框架重建交付可信度(技术实践)
java·产品·全栈
SL_staff7 小时前
打破风控迭代死循环:用决策编排重构业务与技术协作链路
java·产品·全栈
Mikko77 小时前
Redis 连接数满了服务端有错误信息吗?连接数不增加却命令超时?6.2 实测连接池、超时与大 key 怎么判定
java·spring boot·redis·后端
.Bryce.7 小时前
从零到一开发技术名词大全:从需求分析到 AI Agent 工程
java·网络·人工智能·agent·需求分析·agent评测
SL_staff7 小时前
JVS-APS的7个刚性约束设计:从无限产能幻觉到可执行排产的工程实践
java·spring cloud·全栈