標籤:style class blog code java http
轉自:http://b-l-east.iteye.com/blog/1246482
好久沒做Web方面的開發,今天突然想弄弄SpringMVC,因為不久前又學了點Maven覺得非常好,所以在弄SpringMVC這個Web架構時想使用Maven來做,但是問題又來了,我一直是在Eclipse中使用Maven,而我以前一直用MyEclipse做Web開發(在Eclipse中做web開發個人認為一點都沒MyEclipse方便,在MyEclipse中可以直接使用Tomcat調試,很是方便),那麼怎樣才能既使用MyEclipse又能使用Maven呢,今天作了一翻"搗鼓",寫了這篇文章。
就一步一步寫來吧:
1. 使用Maven建立webapp工程----原因是使用Maven時一般需要遵循一定的目錄結構,雖然也可以使用不同的目錄結構,但目前還不熟悉如何修改pom.xml檔案達到目的,而且修改太多預設配置對maven來說也不好。
建立方法,在一個目錄下使用命令:mvn archetype:generate -DarchetypeArtifactId=maven-archetype-webapp。按照提示輸入相應的參數,中間過程如下:
C代碼
- D:\study\workspace4>mvn archetype:generate -DarchetypeArtifactId=maven-archetype-webapp
- [INFO] Scanning for projects...
- ....
- [INFO] Generating project in Interactive mode
- Define value for property ‘groupId‘: : com.xjd
- Define value for property ‘artifactId‘: : mywebapp
- Define value for property ‘version‘: 1.0-SNAPSHOT: :
- Define value for property ‘package‘: com.xjd: :
- Confirm properties configuration:
- groupId: com.xjd
- artifactId: mywebapp
- version: 1.0-SNAPSHOT
- package: com.xjd
- Y: : Y
- ....
- [INFO] BUILD SUCCESS
- [INFO] -----------------------------------------
- [INFO] Total time: 1:46.199s
- [INFO] Finished at: Wed Nov 09 15:02:18 CST 2011
- [INFO] Final Memory: 6M/15M
D:\study\workspace4>mvn archetype:generate -DarchetypeArtifactId=maven-archetype-webapp[INFO] Scanning for projects.......[INFO] Generating project in Interactive modeDefine value for property ‘groupId‘: : com.xjdDefine value for property ‘artifactId‘: : mywebappDefine value for property ‘version‘: 1.0-SNAPSHOT: :Define value for property ‘package‘: com.xjd: :Confirm properties configuration:groupId: com.xjdartifactId: mywebappversion: 1.0-SNAPSHOTpackage: com.xjd Y: : Y....[INFO] BUILD SUCCESS[INFO] -----------------------------------------[INFO] Total time: 1:46.199s[INFO] Finished at: Wed Nov 09 15:02:18 CST 2011[INFO] Final Memory: 6M/15M
最後在檔案夾下建立了一個Maven的webapp工程,該工程的檔案夾根目錄下"mywebapp"(請查看上面的過程),該目錄的結構為
Java代碼
- mywebapp
- +---pom.xml
- +---src
- +---main
- +---resources
- +---webapp
- +---index.jsp
- +---WEB-INF
- +---web.xml
-
-
mywebapp +---pom.xml +---src +---main +---resources +---webapp +---index.jsp +---WEB-INF +---web.xml
2. 啟用配置MyEclipse的Maven外掛程式---我使用的是MyEclipse8.5,它本身就帶有一個叫Maven4MyEclipse的外掛程式,只需要啟用和配置一下即可。
啟用方法:window-->preference-->MyEclipse-->Maven4MyEclipse, 勾選複選框(Enable Mave4MyEclipse features)。
配置方法:就在啟用方法開啟的節點下,有一個Maven節點,展開這個節點,主要配置其下的兩個節點,如下:
Installations: 這一個節點預設使用內建的maven,我們需要使用我們安裝的maven,點"add",添加一個我們外部安裝的maven即可,注意添加後就勾選上。
User Settings: 預設的是C盤使用者目錄下的.m2/settings.xml檔案,這裡要配置外部安裝的maven使用的設定檔,如我使用的就是maven安裝目錄下的conf/settings.xml檔案,選擇之後別忘了點擊一下,下方的"Update Settings"按鈕。
3. 用MyEclipse匯入Maven建立的工程:
匯入有兩種方法這裡分步講解:
1) 使用MyEclipse的普通工程匯入,步驟如下:
1> 先開啟dos,在工程根目錄下(mywebapp)運行: mvn eclipse:eclipse---運行完後會發現在工程目錄下多出了兩個檔案.classpath和.project,這是eclipse的工程檔案,當然myeclipse也識別
2> 在MyEclipse中使用匯入功能,選擇File-->Import...-->Existing Projects into workspace,選擇工程目錄,匯入即可
3> 關聯Maven,匯入後的工程只是一個普通java的工程,並不會與maven外掛程式相關連,此時在工程上點擊右鍵-->Maven4MyEclipse-->Enable Dependency Management,這樣,這個工程就與Maven外掛程式關聯了(關聯後工程根節點左上方上會有一個M的標識)。
2)使用MyEclipse中的Maven工程匯入,步驟如下:
1> 在MyEclipse中使用匯入功能,選擇File-->Import...-->Existing Maven Projects(這裡不同),選擇工程目錄,匯入即可。---這裡匯入進,MyEclipse可能會連網更新索引,很慢,我們可以取消(在Progress面板中點那個大紅框),這時工程導進來了,但是沒有執行該有的操作,比如maven的dependcy檢查等,此時進行一下第2步操作。
2> 更新一下工程配置,右鍵工程-->Maven4MyEclipse-->Update Project Configuration
4. 補全工程的目錄結構,第1步中產生的maven工程目錄是不全的,比如我們的java代碼,我們的測試目錄等,現手動建立,和補全為如下:
C代碼
- mywebapp
- +---pom.xml
- +---src
- +---main
- +---resources
- +---java <<添加
- +---webapp
- +---index.jsp
- +---WEB-INF
- +---web.xml
- +---test <<添加
- +---resources <<添加
- +---java <<添加
- +---target <<eclipse自動添加
- +---classes <<eclipse自動添加
- +---test-classes <<eclipse自動添加
mywebapp +---pom.xml +---src +---main +---resources +---java <<添加 +---webapp +---index.jsp +---WEB-INF +---web.xml +---test <<添加 +---resources <<添加 +---java <<添加 +---target <<eclipse自動添加 +---classes <<eclipse自動添加 +---test-classes <<eclipse自動添加
:
5. 增加MyEclipse的Web Project功能
到目前為止,我們僅僅是把一個Maven的webapp匯入到了MyEclipse中,然而在MyEclipse中,這還僅僅是一個Java普通的Maven工程,這一步我們就要為其添加MyEclipse的web project特性。
選擇工程-->MyEclipse-->Project Capabilities-->Add Web Project Capabilites,快顯視窗中設定參數如下,再接下來的快顯視窗中選擇yes。這樣我們的工程就是web工程了(注意工程表徵圖有變化,而且MyEclipse自動依賴了JEE的包)。
6. 配置工程屬性,開啟工程屬性面板---這一步很重要,都是些細節配置,缺一不可啊
1) Java Build Path
1> Source
添加src/main/java, src/test/java, src/test/resources為source folder, 這裡就不需要詳述了吧,點"add folder"就行。
最小面的"default output folder"修改為"mywebapp/src/main/webapp/WEB-INF/classes"---這點很重要
修改這些source folder的輸出目錄,其中main/java和main/resources輸出到default output folder, 而test/java和test/resources輸出到target/test-classes中,(如何修改---點擊各節點下的Output Folder, 再點右邊的edit按鈕就行了)最後設定結果如下:
2> Order And Export
為了顯示好看,調整一下顯示順序,不細說了,很簡單,看:
2)Java Compiler
注意到上面的圖片中,我的工程顯示jdk為1.4,所以要修改成我們想要的版本,這裡就不詳述了,應該都會改。
3) Myeclipse-->Web這一個是用來修改設定工程的web特性的,如:
好了,一個MyEclipse的Web Project + Maven webapp的工程就建好了。剩下的就是在myeclipse中開發和調試web最後用maven打包,當然一定要使用maven的依賴特性(把要依賴的jar包直接在pom.xml中加入,然後重新整理工程就會自動匯入)。 附件為一個建立好的springmvc的helloworld,可以作為一個模板。-------OK-------
- springmvc.rar (11 KB)
- 下載次數: 1306