【bugfix】maven deploy jar包到私服后,依赖没法传递

1.现象

deploy发布了一个新的jar包,引入到别的项目后,新jar包的依赖没有获取到,导致需要一一引入依赖

2.原因

maven在传递依赖时,是根据该jar包所在的仓库目录下的同名pom文件找到其依赖的。

上述问题就是在发布时,没有生成这样的同名.pom文件

3.解决方案

在deploy时,加一个选项指定pom文件 -DpomFile=pom.xml

mvn deploy:deploy-file 
-DgroupId={yourProject} \
-DartifactId={yourProject}\
-Dfile={yourFile}\ // jar 包路径
-Durl={URL} \// 私服URL
-DrepositoryId=releases\
-Dpackaging=jar\ // 指定格式,如果不写,一句 pom 文件中
-DpomFile=pom.xml // 指定该 jar 包的 pom 文件,如不指定,将生成一个默认的 pom——导致不可用

mvn deploy:deploy-file -DgroupId=com.xxx.xxx -DartifactId=xxx -Dversion=1.1-SNAPSHOT -Dpackaging=jar -DpomFile=pom.xml -Dmaven.test.skip=true -Dfile=target/xxx-1.1-SNAPSHOT.jar -Dsources=target/xxx-1.1-SNAPSHOT-sources.jar -Durl=http://xxx.xxx.xxx/nexus/content/repositories/${REPO}/ -DrepositoryId=${REPO}

详情请见 官方文档

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值