1. 程式人生 > >記pom配置中parent找不到的坑

記pom配置中parent找不到的坑

 用maven管理工程是常有的事情。稍微大一點的構建,依賴多了,一個pom檔案寫所有依賴肯定是不現實的。這時候就有了<parent/> 節點了。然後我的某個工程中的<parent/>是這樣配置的:

  <parent>
    <groupId>com.free4lab.openapi.basic</groupId>
    <artifactId>openapi</artifactId>
    <version>1.0.20151020-SNAPSHOT</version>
  </parent
>

 一切沒有問題了,結構構建的時候報錯:

Non-resolvable parent POM: Could not find artifact com.free4lab.openapi.basic:openapi:pom:1.0.20151020-SNAPSHOT and ‘parent.relativePath’ points at wrong local POM @ line 5, column 11 -> [Help 2]

 一臉懵,最後上網找部落格(這個部落格歸納得挺全的)才知道,當設定了<parent/>時,是需要有一個relative path來查詢父專案的pom.xml的,而如果沒有,那麼預設的父專案pom.xml就在該pom.xml的父附錄中。如果沒有,就會根據groupId和artifactId在本地和遠端maven倉庫中找。很不幸,這個父pom.xml對應的工程早已沒有了,所以我這裡就會報錯。

 找到了問題,解決方法也自然簡單,在這個工程的父目錄下載這個pom.xml即可。當然..將父pom.xml的內容copy過來再刪了<parent/>也是….可以的。