Non-resolvable parent POM for Could not find artifact and ‘parent.relativePath‘ points at wrong loca

一、问题解决

在这里插入图片描述

在使用maven打包的时候,报了上面这个错,简单来说就是找不到某个依赖,这是因为我们在构建子父工程的时候,子类打包找不到父类的依赖。

一般我们只需要重新打开父类,然后执行 mvn install ,再去子类里面重新依赖一下就好了。

但是我这个父类是依赖的远程仓库,我通过maven也把它拉到了本地仓库,但是依旧不行,最后发现原因是因为,我本地安装了两个maven,M1和M2,我在配置环境变量的时候配置的是M1地址。

以前我打包都是使用下面这个地方
在这里插入图片描述
这里最后的打包结果都是在本地的target目录下面创建一个 xxxx.jar,拿到这个jar丢到服务器上面就行了。都是打包的单体项目,不存在子父的依赖所以不存在问题。

但是现在需要在本地打包然后把打包结果推送到远程的仓库 mvn clean package -DskipTests -Ptest,这个时候就必须要使用你的环境变量的maven


二、relativePath

在解决问题的过程中,认识到了下面这个标签,它是用来指定父类pom的地址,

<parent>
    <groupId>cn.ideamake</groupId>
    <artifactId>parent-starter</artifactId>
    <version>1.2.1.1-SNAPSHOT</version>
    <relativePath>../pom.xml</relativePath>
</parent>

默认顺序:relativePath > 本地仓库 > 远程仓库

一般我们可以不用配置它,它会先去上一级去找,找不到就去本地仓库,本地仓库找不到就会去远程仓库

但这里有个意外,如果我们本次仓库里面有这个文件,那就说明最后不会读取本地,而是去读取远程仓库
在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值