maven是個項目管理工具,集各種功能于一身,下面介紹maven web項目在eclipse種的配置,并于tomcat集成。配置成功后,可以跟一般的web項目一樣調(diào)試。
一、準(zhǔn)備條件
1、安裝下載jdk
這里以jdk1.6為例
2、安裝eclipse
到eclipse官網(wǎng)下載 Eclipse IDE for Java EE Developers版本的eclipse
http://www.eclipse.org/
3、安裝tomcat6
4、安裝maven
5、安裝eclipse maven插件
這里以在線安裝的方式,安裝地址為:http://m2eclipse.sonatype.org/sites/m2e
二、配置
1、在eclipse中配置jdk安裝位置,tomcat安裝位置,maven安裝位置,為tomcat指定jdk
在此不詳述
2、在eclipse中新建一個maven項目
2-1、新建一個maven項目,選擇create a simple project ...

2-2、
點擊Next,進(jìn)入下一個

在此窗口下填寫group id,artifact id,可以隨便寫一個,在Packaging中選擇war類型
點擊下一步,在以下步驟中一直next,直到最后點擊finish
2-3、
右擊項目,選擇properites,打開以下對話框

在此界面右邊導(dǎo)航欄選中 Project Facets,點擊超鏈接Convert Faceted from,進(jìn)入以下界面
2-4、

在Configuration中選擇custom
在下方的Project Facet的Dynamic Web Module中選擇2.5版本
在java中選擇1.6
注意:這些選擇可能根據(jù)tomcat版本變化而變化,就tomcat6來說選擇以上選項是可以的
此步驟非常重要,只有操作了此步驟,右側(cè)導(dǎo)航欄才會有Deployment Assembly 鏈接
2-5
接下來點擊右邊面板的Runtime面板

可以看到下方中有tomcat,如果沒有,則點擊下面的new,新建一個,新建后選中復(fù)選框,然后apply,ok
2-6、
在項目屬性面板中的作部導(dǎo)航欄選擇Deployment Assembly選項,在右邊Web Deployment Assembly
如果看到以下的圖示,那么配置就完成了

這里解釋一下以上文件夾
src/main/java
該文件夾是存放java源碼的,發(fā)布項目時會將該文件夾下的class文件復(fù)制到WEB-INF/classes目錄下
src/main/resources
該文件夾一般放置配置文件,如xml,properties文件等,其實也可以放置java文件,只是一種約定罷了,發(fā)布項目時
該文件夾的文件也會復(fù)制到WEB-INF/class中
至于test,有些類似,只不過這些是測試代碼,用過maven的應(yīng)該會知道這一點
src/main/webapp
maven中約定是把該文件夾當(dāng)成是普通web項目中的WebRoot目錄,看看右邊的deploy path,發(fā)布項目時
是發(fā)布到根目錄/了。該文件夾在建成的maven web項目中,在其內(nèi)尚沒有WEB-INF/classes,WEB-INF/lib文件夾
需要手工建立
注意:有時候由于某種原因,你打開的以上視圖可能是下面這樣的,

其實,這樣也是可以運行項目,調(diào)試項目的,但是,如果你運行該項目的pom.xml文件時就會報錯,為什么呢,
因為maven會把src/main/webapp文件當(dāng)成是普通web項目中的WebRoot,而該你的配置里面(上圖)卻
沒有配置,故而會報錯。
怎么辦呢,分2步
1、選中 WebContent,remove掉它
2、新建一個,Source文件夾為src/main/webapp,deploy path為 /
點擊apply,ok即可。
最后還必須將maven庫映射到WEB-INF/lib下,具體操作如下,點擊add按鈕,進(jìn)入下圖

選擇java build path entries,點擊next,進(jìn)入下圖

選擇Maven Dependencies,點擊finish,最終如下圖

如果不把Maven Dependencies映射到WEB-INF/lib,則在服務(wù)端如servlet中用到maven中的庫時,則會提示找不到類(雖然你在編寫代碼時沒有紅xx,但是運行程序時卻會找不到類)
三、運行
在eclipse的server視圖中添加你的項目,右鍵選擇的tomcat服務(wù)器,選擇add and remove,添加剛才新建的web工程,效果如下圖

在src/main/java中建立一個servlet,在src/main/webapp中建立一個jsp
啟動tomcat,訪問你的servlet和jsp,在servlet中你可以定斷點,可以調(diào)試。
http://zk1878.iteye.com/blog/1222330