maven pom relativePath属性的作用

搭建maven项目,子模块指定父模块试,经常会在parent下面出现relativePath类似下面:

<parent>
	<groupId>net.itxw</groupId>
	<artifactId>test</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	<relativePath/>
</parent>

 

这个<parent>下面的<relativePath>属性是什么意思?

其实很明显,就是parent的路径,具体来说就是你引用这个parent项目,那parent项目的pom在哪里?

1.默认值:

默认我们不用写<relativePath>,那默认值就是 ../pom.xml,会从本地路径中获取parent的pom

我们建多模块的项目就是这个情况

 

2.<relativePath/>:

这样写,也就是说我指定了relativePath,但值是空的,设定一个空值将始终从仓库中获取,不从本地路径获取.

很常见的场景就是使用springboot的时候

<parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.2.0.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>

 

3.<relativePath>一个pom路径<relativePath/>:

这种也很显然,指定一个本地的路径,从本地路径获取parent的pom。

登录后即可回复 登录 | 注册
    
关注编程学问公众号