了解Maven的<relativePath/>标签用法
了解Maven的 relativePath标签
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.4.3</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
从父级仓库查找依赖版本
MAVEN构建jar包时候查找顺序:relativePath元素中的地址>本地仓库>远程仓库
举例
父模块配置
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.12</version>
</dependency>
子模块 <parent> 没有配置 `<relativePath/>`
如果`<dependencies>`中依赖没有指定版本,编译时不能获取父`<dependencyManagement>`中定义的版本。
Maven继承父工程时的relativePath标签解析
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.9.RELEASE</version>
<relativePath/>
</parent>
relativePath
1)指定查找该父项目pom.xml的(相对)路径。默认顺序:relativePath > 本地仓库 > 远程仓库
2)没有relativePath标签等同<relativePath>../pom.xml</relativePath>, 即默认从当前pom文件的上一级目录找
3)<relativePath/>表示不从relativePath找, 直接从本地仓库找,找不到再从远程仓库找
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持。
相关文章