Maven繼承父工程時的relativePath標簽解析用法小結(jié)
relativePath 的作用是為了找到父級工程的pom.xml;因為子工程需要繼承父工程的pom.xml文件中的內(nèi)容。然后relativePath 標簽內(nèi)的值使用相對路徑定位到父工程的pom.xml。
父項目的pom.xml文件的相對路徑。相對路徑允許你選擇一個不同的路徑。默認值是…/pom.xml。Maven首先在構(gòu)建當前項目的地方尋找父項 目的pom,其次在文件系統(tǒng)的這個位置(relativePath位置),然后在本地倉庫,最后在遠程倉庫尋找父項目的pom。
<parent> <groupId>com.ctrip.framework.apollo</groupId> <artifactId>apollo</artifactId> <version>1.6.1</version> <relativePath>../pom.xml</relativePath> </parent>
relativePath:
- 1)默認我們不用寫<relativePath>,等同…/pom.xml, 即默認從當前pom文件的上一級目錄找,會從上級目錄中獲取parent的pom,我們建多模塊的項目就是這個情況。
<relativePath/> 設(shè)定一個空值將始終從倉庫中獲取,表示不從relativePath找, 直接從本地倉庫找,找不到再從遠程倉庫找,很常見的場景就是使用springboot的時候
- 3.xxxxxx 這種也很顯然,指定一個xxxx本地的路徑,從xxxx本地路徑獲取parent的 pom。
- 4)指定查找該父項目pom.xml的(相對)路徑。默認順序:relativePath > 本地倉庫 > 遠程倉庫。沒有relativePath標簽等同…/pom.xml, 即默認從當前pom文件的上一級目錄找。
關(guān)于2)經(jīng)過測試,似乎 沒有relativePath標簽時,它沒有從當前pom文件的上一級目錄找,子模塊繼承不到父模塊中dependencyManagement中包的version信息。因此,強烈推薦,子模塊配置relativePath元素,指定 …/pom.xml。
maven 定位父pom的順序如下:
- 首先在當前構(gòu)建項目的反應器中查找父pom
- 然后在 relativePath 定義的位置查找文件系統(tǒng)
- 然后是本地存儲庫
- 最后是遠程repo
到此這篇關(guān)于Maven繼承父工程時的relativePath標簽解析用法小結(jié)的文章就介紹到這了,更多相關(guān)Maven relativePath標簽內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Windows下Java+MyBatis框架+MySQL的開發(fā)環(huán)境搭建教程
這篇文章主要介紹了Windows下Java+MyBatis框架+MySQL的開發(fā)環(huán)境搭建教程,Mybatis對普通SQL語句的支持非常好,需要的朋友可以參考下2016-04-04
Spring如何基于Proxy及cglib實現(xiàn)動態(tài)代理
這篇文章主要介紹了Spring如何基于Proxy及cglib實現(xiàn)動態(tài)代理,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2020-06-06

