1. 程式人生 > >MyEclipse&Maven專案管理教程:Maven依賴關係管理

MyEclipse&Maven專案管理教程:Maven依賴關係管理

1. Maven支援唯一依賴關係

Apache Maven是一個軟體專案管理的綜合工具。根據專案物件模型(POM)的概念,Maven可以管理一個專案的依賴關係、構建、報表以及資訊中心的部分文件。

依賴關係管理是Maven最知名的功能之一,也是Maven最擅長的領域之一,但是通常只利用這個功能是不可能的。幾乎所有的方式都需要您去配置一個基於Maven的專案、新增和配置Maven外掛、處理檔案和goals。同時MyEclipse完全支援最先進的Maven功能,如果您只想對依賴關係進行管理,那麼建立一個完整的Maven專案會產生不必要的專案複雜性,這就是唯一依賴關係模式產生的原因。

2015 CI 7

版本開始,MyEclipse支援使用Maven依賴關係解析,而不需要使用完整的Maven構建管理。

2. Maven支援——Dependencies Only Facet

在MyEclipse 2015 CI 7以及更高的版本中,您可以找到兩個Maven-related project facets。Maven支援Java EE Projects facet併為您的專案提供完整的Maven功能。Maven支援——Dependencies Only facet為您的專案提供了唯一依賴關係管理的功能。

MyEclipse Maven依賴關係管理 Maven Support – Dependencies Only facet

在安裝Dependencies Only facet時,將在pom.xml

中指定所有Maven依賴關係的一個Maven依賴關係類路徑容器新增到您的專案中。當您部署這個專案時此容器也會被部署,如果pom.xml檔案不存在則會生成一個。

您可以對pom.xml做任何更改,然而依賴關係資訊是不能更改的,Maven依賴關係容器會對其進行相應的更新。所有其他的專案配置元資料會被忽略,沒必要費心思在附件的Maven設定上。

注意: Maven支援Java EE Projects facet和Maven支援——Dependencies Only facet是相互排斥的。對於全面的Maven支援,您必須使用前者。

3. 使用案例

下面的部分提供了在幾種情況下使用Maven Dependencies Only facet的步驟。

3.1 為一個新專案新增唯一依賴關係模式
  1. 建立一個新的Web/ EJB專案;不要選擇Add maven support複選框。
  2. 右鍵單擊該專案,並選擇屬性。
  3. 展開MyEclipse,然後選擇Project Facets。
  4. 選擇Maven Support – Dependencies Only facet
  5. 單擊確定或應用。
3.2 在現有的Maven專案中使用依賴關係唯一模式
  1. 右鍵單擊該專案,並選擇屬性。
  2. 展開MyEclipse,然後選擇Project Facets。
  3. 取消Maven Support for Java EE Projects來解除安裝full Maven support facet。
  4. 選擇Maven Support – Dependencies Only facet
  5. 單擊確定或應用。
3.3 從MyEclipse 10.x或更低版本中遷移Maven專案

MyEclipse 10.x或更低版本中主要處理Maven支援唯一依賴關係不夠完善,如果您的專案中沒有一個正確配置的pom.xml檔案,當專案遷移到MyEclipse 2013或更高版本時,可能會在部署過程中出現問題。請重置您的專案狀態並遷移到MyEclipse 2015中,然後在遷移之前執行以下步驟。

  1. 在主選單欄上開啟專案,並禁用自動構建(確保不被選中)。
  2. 匯入/檢出您的專案執行到MyEclipse 2015工作區間中。
  3. 當提示遷移的專案時,取消該程序或取消受影響的專案。
  4. 如上所述,為您的專案新增Maven Support – Dependencies Only facet。
  5. 啟用自動構建
  6. 選擇MyEclipse>Migrate Workspace來完整這些Maven專案的遷移。

部署現在應該類似於在MyEclipse 10.x中的部署。

注意:此程序將會繼續在未來的MyEclipse版本中被精簡。

當您準備好切換到完整的基於Maven配置,只需解除安裝此facet然後安裝Maven Support for Java EE Projectsfacet。