Maven 继承父工程时的relativePath标签详细解析
Maven 继承父工程时的relativePath标签解析
<parent> <groupId>com.ctrip.framework.apollo&编程客栈lt;/groupId> <artifactId>apollo</artifactId> <version>1.6.1</version> <relativePath>../pom.XML</relativePath> &http://www.devze.comlt;/parent>
relativ编程客栈ePath:
1)指定查找该父项目pom.xml的(相对)路径。默认顺序:relativePath > 本地仓库 > 远程仓库2)没有relativePath标签等同…/pom.xml, 即默认从当前pom文件的上一级目录找3)表示不从relativePath找, 直接从本地仓库找,找不到再从远程仓库找关于2)经过测试,似乎 没有relativePath标签时,它没有从当前pom文件的上一级目录找,子模块继承不到父模块中dependencyManagement中包的version信息。
因此,强烈推荐,子模块配置relativePath元素,指定 …/pom.xml。
maven 3.6.0环境下测试
发现子模块 parent 如果你不配
…/pom.xml发现,你dependency中,如果没有指定版本,它好像不能从父dependencyManagement中定义的版本中,获取版本。<dependencyManagement> <dependencies> <dependency> <groupId>com.ctrip.framework.apollo</groupId> <artwww.devze.comifactId>apollo-common</artifactId> <version>${project.version}</version> </dependency>
因此,总结,子模块想要用父模块pom中的版本,请注意配置randroidelativePath属性!
到此这篇关于Maven 继承父工程时的relativePath标签解析的文章就介绍到这了,更多相关Maven 继承父工程relativePath标签内容请搜开发者_JS学习索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!
精彩评论