2012-10-18 113 views
15

我已經提取了一個示例Struts 2項目,它具有maven pom.xml文件。我已經安裝了用於eclipse的m2e插件。但是當我右鍵單擊pom.xml文件並選擇Maven Build時,它會給我以下錯誤。maven構建目標需要指定

未爲此構建指定目標。您必須以以下格式指定有效的 生命週期階段或目標:或 :[:] :. 可用生命週期階段是:驗證,初始化, 產生來源,流程源,產生資源, 處理資源,編譯,過程類,生成試驗源, 過程試驗源,產生測試 測試編譯,過程測試類,測試,準備包,包, 預集成測試,集成測試,後集成測試,驗證, 安裝,部署,站點前,站點,站點後,站點部署,預清理, 乾淨,後清理。 - > [Help 1]

當我點擊Maven構建時,我需要在m2e窗口中指定什麼目標?

回答

31

您可以通過右鍵單擊您的項目或.pom,選擇Run as然後Maven build...然後寫package到目標字段,然後單擊Run建立與M2E Maven項目。

相應的鍵盤快捷鍵是Alt+Ctrl+X,然後m - 它會讓你到同一個對話框。

結果可能是target項目子文件夾中的.war文件。

21

在你的Eclipse中,運行 - >運行配置 - >在左邊你會看到「Maven Build」.on,請在目標標籤中提及你的目標。 爲如:-Dmaven.tomcat.port = 8080 tomcat的:運行

+0

Upvoted:此目標在端口8080上啓動tomcat上的maven web應用程序,這正是我正在嘗試做的。 – fjxx

+2

這應該被標記爲答案,因爲這給出了OP所要求的正確解決方案。 – yeaske

+1

絕對應該是被接受的答案,因爲它直接解決了問題。 – tanou

11

在上Run Configurations對話框(Main選項卡)的goal字段,您可以輸入以下任何Maven的階段:

  1. 驗證 - 驗證項目是否正確,以及所有必要的信息,請
  2. 編譯 - 編譯項目的源代碼
  3. 測試 - 使用合適的單元測試框架測試已編譯的源代碼。這些測試不應該要求打包或部署代碼 包 - 獲取已編譯的代碼並將其打包爲可分發的格式,例如JAR。
  4. 集成測試 - 進程,並在必要部署包到集成測試可以運行
  5. 驗證的環境 - 運行任何檢查,驗證包是有效的,符合質量標準
  6. 安裝 - 將軟件包安裝到本地存儲庫中,作爲本地其他項目的依賴項
  7. deploy - 在集成或發行版環境中完成,將最終包複製到遠程存儲庫與其他開發人員和項目共享。

來源:http://www.javabeat.net/maven-lifecycle-phase-error/

0

測試上述解決方案後,我找到了正確的一個。

(1)確保在環境變量設定好(M2_HOME = C:\ Program Files文件\ Apache軟件基金會\ Apache的行家-3.3.3

M2 =%M2_HOME%\ bin中)(https://www.tutorialspoint.com/maven/maven_environment_setup.htm

(2)打開命令提示符作爲管理員

(3)目錄更改爲您的工作空間(CD /工作區/項目文件夾

(4)最後(定製)

mvn archetype:generate -DgroupId = fr.myGroupId -DartifactId = MyApplication -Dpackagename = fr.myGroupId -DarchetypeArtifactId = maven-archetype -startstart 。