轉換基於Maven的Web應用程式支援Eclipse IDE


在上一節教學中,使用Maven建立了一個Web應用程式。這裡有一個指南,告訴你如何轉換Web應用程式到Eclipse IDE支援的形式。

注意,通過WTP工具Eclipse IDE支援Web應用程式,所以需要讓基於Maven的專案支援它。

1. mvn eclipse:eclipse -Dwtpversion=2.0

要轉換一個基於Maven的Java專案支援IDE,使用此命令:

mvn eclipse:eclipse

對於Web應用程式,需要額外的引數,使其支援 Eclipse WTP,應該使用這個命令:

mvn eclipse:eclipse -Dwtpversion=2.0

看看其輸出 …

C:\worksp> mvn archetype:generate -DgroupId=com.yiibai -DartifactId=yiibaiweb-core
C:\worksp\yiibaiweb-core>mvn eclipse:eclipse -Dwtpversion=2.0
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building yiibaiweb-core 1.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] >>> maven-eclipse-plugin:2.10:eclipse (default-cli) > generate-resources
@ yiibaiweb-core >>>
[INFO]
[INFO] <<< maven-eclipse-plugin:2.10:eclipse (default-cli) < generate-resources
@ yiibaiweb-core <<<
[INFO]
[INFO] --- maven-eclipse-plugin:2.10:eclipse (default-cli) @ yiibaiweb-core ---
[INFO] Adding support for WTP version 2.0.
[INFO] Using Eclipse Workspace: null
[INFO] Adding default classpath container: org.eclipse.jdt.launching.JRE_CONTAIN
ER
[INFO] Not writing settings - defaults suffice
[INFO] Wrote Eclipse project for "yiibaiweb-core" to C:\worksp\yiibaiweb-core.
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 2.038 s
[INFO] Finished at: 2015-11-02T20:30:36+08:00
[INFO] Final Memory: 13M/114M
[INFO] ------------------------------------------------------------------------

2. Eclipse WTP

標準Eclipse的「.classpath」和「.project」檔案被建立。你會發現建立一個新的 「.setting」 檔案夾,裡面包含兩個檔案「org.eclipse.wst.common.component」和「org.eclipse.wst.common.project.facet.core.xml」 都是WTP或Faces檔案用來支援Eclipse。

File : org.eclipse.wst.common.project.facet.core.xml

<faceted-project><fixed facet="jst.java"/><fixed facet="jst.web"/><installed facet="jst.web"version="2.4"/><installed facet="jst.java"version="1.4"/></faceted-project>
注意
使用JDK1.4 和 Maven2.X生成的 Web應用程式(見上文),這是相當過時,需要將其升級到最新的JDK版本。

File : org.eclipse.wst.common.component

<project-modules id="moduleCoreId"project-version="2.0"><wb-module deploy-name="mkyongweb-core"><property name="context-root"value="mkyongweb-core"/><wb-resource deploy-path="/"source-path="src/main/webapp"/><property name="java-output-path"value="/target/classes"/><wb-resource deploy-path="/WEB-INF/classes"source-path="src/main/resources"/></wb-module></project-modules>

3. 匯入到Eclipse IDE

現在,我們已經擁有了一個 Eclipse 的 Web應用程式需要組態和檔案,那麼,就可以開始匯入基於Maven構建Web應用程式到Eclipse IDE中去了。

步驟:
在Eclipse IDE 的選單欄, File -> Import… -> General -> Existing Projects into Workspace -> 選擇根目錄(選擇專案檔案夾中)-> 完成。

Convert Maven based web application to support Eclipse IDE

完事大吉!

參考

  1. http://maven.apache.org/plugins/maven-eclipse-plugin/eclipse-mojo.html
  2. http://maven.apache.org/plugins/maven-eclipse-plugin/wtp.html
  3. http://wiki.eclipse.org/WTP_FAQ
  4. Unsupported WTP version: 1.5. This plugin currently supports only the following versions: 1.0 R7