maven是個(gè)項(xiàng)目管理工具,集各種功能于一身,下面介紹maven web項(xiàng)目在eclipse種的配置,并于tomcat集成。配置成功后,可以跟一般的web項(xiàng)目一樣調(diào)試。
一、準(zhǔn)備條件
1、安裝下載jdk
這里以jdk1.6為例
2、安裝eclipse
到eclipse官網(wǎng)下載 Eclipse IDE for Java EE Developers版本的eclipse
3、安裝tomcat6
4、安裝maven
5、安裝eclipse maven插件
這里以在線安裝的方式,安裝地址為:http://m2eclipse.sonatype.org/sites/m2e
二、配置
1、在eclipse中配置jdk安裝位置,tomcat安裝位置,maven安裝位置,為tomcat指定jdk
在此不詳述
2、在eclipse中新建一個(gè)maven項(xiàng)目
2-1、新建一個(gè)maven項(xiàng)目,選擇create a simple project ...
2-2、
點(diǎn)擊Next,進(jìn)入下一個(gè)
在此窗口下填寫(xiě)group id,artifact id,可以隨便寫(xiě)一個(gè),在Packaging中選擇war類型
點(diǎn)擊下一步,在以下步驟中一直next,直到最后點(diǎn)擊finish
2-3、
右擊項(xiàng)目,選擇properites,打開(kāi)以下對(duì)話框
在此界面右邊導(dǎo)航欄選中 Project Facets,點(diǎn)擊超鏈接Convert Faceted from,進(jìn)入以下界面
2-4、
在Configuration中選擇custom
在下方的Project Facet的Dynamic Web Module中選擇2.5版本
在java中選擇1.6
注意:這些選擇可能根據(jù)tomcat版本變化而變化,就tomcat6來(lái)說(shuō)選擇以上選項(xiàng)是可以的
此步驟非常重要,只有操作了此步驟,右側(cè)導(dǎo)航欄才會(huì)有Deployment Assembly 鏈接
2-5
接下來(lái)點(diǎn)擊右邊面板的Runtime面板
可以看到下方中有tomcat,如果沒(méi)有,則點(diǎn)擊下面的new,新建一個(gè),新建后選中復(fù)選框,然后apply,ok
2-6、
在項(xiàng)目屬性面板中的作部導(dǎo)航欄選擇Deployment Assembly選項(xiàng),在右邊Web Deployment Assembly
如果看到以下的圖示,那么配置就完成了
這里解釋一下以上文件夾
src/main/java
該文件夾是存放java源碼的,發(fā)布項(xiàng)目時(shí)會(huì)將該文件夾下的class文件復(fù)制到WEB-INF/classes目錄下
src/main/resources
該文件夾一般放置配置文件,如xml,properties文件等,其實(shí)也可以放置java文件,只是一種約定罷了,發(fā)布項(xiàng)目時(shí)
該文件夾的文件也會(huì)復(fù)制到WEB-INF/class中
至于test,有些類似,只不過(guò)這些是測(cè)試代碼,用過(guò)maven的應(yīng)該會(huì)知道這一點(diǎn)
src/main/webapp
maven中約定是把該文件夾當(dāng)成是普通web項(xiàng)目中的WebRoot目錄,看看右邊的deploy path,發(fā)布項(xiàng)目時(shí)
是發(fā)布到根目錄/了。該文件夾在建成的maven web項(xiàng)目中,在其內(nèi)尚沒(méi)有WEB-INF/classes,WEB-INF/lib文件夾
需要手工建立
注意:有時(shí)候由于某種原因,你打開(kāi)的以上視圖可能是下面這樣的,
其實(shí),這樣也是可以運(yùn)行項(xiàng)目,調(diào)試項(xiàng)目的,但是,如果你運(yùn)行該項(xiàng)目的pom.xml文件時(shí)就會(huì)報(bào)錯(cuò),為什么呢,
因?yàn)閙aven會(huì)把src/main/webapp文件當(dāng)成是普通web項(xiàng)目中的WebRoot,而該你的配置里面(上圖)卻
沒(méi)有配置,故而會(huì)報(bào)錯(cuò)。
怎么辦呢,分2步
1、選中 WebContent,remove掉它
2、新建一個(gè),Source文件夾為src/main/webapp,deploy path為 /
點(diǎn)擊apply,ok即可。
最后還必須將maven庫(kù)映射到WEB-INF/lib下,具體操作如下,點(diǎn)擊add按鈕,進(jìn)入下圖
選擇java build path entries,點(diǎn)擊next,進(jìn)入下圖
選擇Maven Dependencies,點(diǎn)擊finish,最終如下圖
如果不把Maven Dependencies映射到WEB-INF/lib,則在服務(wù)端如servlet中用到maven中的庫(kù)時(shí),則會(huì)提示找不到類(雖然你在編寫(xiě)代碼時(shí)沒(méi)有紅xx,但是運(yùn)行程序時(shí)卻會(huì)找不到類)
三、運(yùn)行
在eclipse的server視圖中添加你的項(xiàng)目,右鍵選擇的tomcat服務(wù)器,選擇add and remove,添加剛才新建的web工程,效果如下圖
在src/main/java中建立一個(gè)servlet,在src/main/webapp中建立一個(gè)jsp
啟動(dòng)tomcat,訪問(wèn)你的servlet和jsp,在servlet中你可以定斷點(diǎn),可以調(diào)試。