Maven?繼承父工程時的relativePath標簽詳細解析
Maven 繼承父工程時的relativePath標簽解析
<parent> <groupId>com.ctrip.framework.apollo</groupId> <artifactId>apollo</artifactId> <version>1.6.1</version> <relativePath>../pom.xml</relativePath> </parent>
relativePath:
1)指定查找該父項目pom.xml的(相對)路徑。默認順序:relativePath > 本地倉庫 > 遠程倉庫
2)沒有relativePath標簽等同…/pom.xml, 即默認從當前pom文件的上一級目錄找
3)表示不從relativePath找, 直接從本地倉庫找,找不到再從遠程倉庫找
關于2)經過測試,似乎 沒有relativePath標簽時,它沒有從當前pom文件的上一級目錄找,子模塊繼承不到父模塊中dependencyManagement中包的version信息。
因此,強烈推薦,子模塊配置relativePath元素,指定 …/pom.xml。
maven 3.6.0環(huán)境下測試
發(fā)現子模塊 parent 如果你不配
…/pom.xml
發(fā)現,你dependency中,如果沒有指定版本,它好像不能從父dependencyManagement中定義的版本中,獲取版本。
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.ctrip.framework.apollo</groupId>
<artifactId>apollo-common</artifactId>
<version>${project.version}</version>
</dependency>因此,總結,子模塊想要用父模塊pom中的版本,請注意配置relativePath屬性!
到此這篇關于Maven 繼承父工程時的relativePath標簽解析的文章就介紹到這了,更多相關Maven 繼承父工程relativePath標簽內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
一文掌握Spring?中?@Component?和?@Bean?區(qū)別(最新推薦)
?@Component?用于標識一個普通的類,@Bean用于配置類里面,在方法上面聲明和配置?Bean?對象,這篇文章主要介紹了Spring?中?@Component?和?@Bean?區(qū)別(最新推薦),需要的朋友可以參考下2024-04-04
SpringBoot實現讀取YML,yaml,properties文件
yml,yaml,properties三種文件都是用來存放配置的文件,一些靜態(tài)數據,配置的數據都會存放到里邊。本文主要為大家整理了SpringBoot實現讀取YML,yaml,properties文件的方法,需要的可以參考一下2023-04-04

