Posted on 2007-01-17 17:09
itspy 閱讀(9479)
評論(3) 編輯 收藏 所屬分類:
JAVA技術(shù)
??????在Tomcat下開發(fā)一些項目時,不可避免的會用到針對Tomcat的插件來進行調(diào)試,目前我接觸到的插件有如下三種,雖然它們都能對工程進行調(diào)試,它在一些其它功能上面卻有其區(qū)別
????? Myeclipse:這個是最強大的Eclipse插件,差不多什么都有,是一個一站式的解決插件。
????? WTP(Web Tools Platform):是由Eclipse自己開發(fā)的插件。
????? TomcatPlugin(sysdeo):最老牌的Tomcat插件,也是最好用的。
?
- Myeclipse插件對Tomcat的支持看起來應(yīng)該是最好的,特點是熱部署。不管是對Servlet的修改,還是對web.xml的修改都可以。卻可以做到,哪個變了,就加載哪個。它可以很方便的把你的工程直接發(fā)布到Tomcat中去,或者是以war的形式發(fā)布過去。
- WTP(Web Tools Platform)
:相對MyEclipse于,WTP則實現(xiàn)了部署的透明化,Myeclipse在啟動Tomcat后,要你通過myEclipse把工程部署到Tomcat下,它會對你的Tomcat目錄下添加一些文件。但是WTP則對你的Tomcat不會有任何修改。
但我也發(fā)現(xiàn)了使用WTP 部署Web工程時的一個問題,對web.xml文件的修改不會自動的被重新加載,但更改Servlet會重新加載Servlet,并且同時重新加載web.xml。
也就是你想重新加載web.xml,你只有佯裝修改一個Servlet,才能觸發(fā)重新加載web.xml。不知道以后的版本會不會修改這點。
- TomcatPlugin(sysdeo):最老牌的tomcat插件了,相對來說在Tomcat調(diào)試領(lǐng)域也是最好用的了,不過它有點與WTP一樣,無法自動加載web.xml變化。但它也有它的絕招,是另外兩個插件不能比的。它有兩種支持調(diào)試的方式:
- 建立Tomcat工程,這時可以使用熱部署,tomcatPlugin(sysdeo)由于它并不真正的部署工程,使用TomcatPlugin(sysdeo)添加一個工程時,實際上在Tomcat\conf\Catalina\localhost目錄下添加了一個文件,當(dāng)Tomcat啟動時就會加載這個工程,這時當(dāng)然也可以調(diào)試。
- 另外一種支持調(diào)試的功能是其它兩個插件沒有的,比如你的工程是通過ANT布置到Tomcat下去的,你的目錄結(jié)構(gòu)無法滿足WTP與Myeclipse的要求,這時你沒有辦法來使用這兩個插件來進行調(diào)度,但是使用TomcatPlugin卻可以。你只要在設(shè)置window->preferences->tomcat->soure path即可。
個人Blog:? http://m.tkk7.com/itspy
插件的適應(yīng)環(huán)境:
???如果沒有特別的原因,應(yīng)該盡量選擇TomcatPlugin(sysdeo)。
- 如果是一個全新的項目,上級完全放權(quán)了,你可以使用myEclipse與WTP,因為它能實現(xiàn)熱部署,調(diào)度修改代碼十分方便。但它們相對Tomcat來說,一個是侵入式的,一個卻是無侵入的。你可以針對這個特點來在兩者之間進行選擇。
- 如果是一個已經(jīng)有一定歷史積累的工程,或者是無法對目錄結(jié)構(gòu)進行控制的工作,這時推薦使用使用TomcatPlugin(sysdeo)。
因為myEclipse與WTP對工程對目錄結(jié)構(gòu)都有一定的要求,因為它們要把工程部署到Tomcat上去,所以對工程目錄結(jié)構(gòu)上都有自己的要求。比如在哪放置WEB-INFO,在哪個目錄放置源文件,并且兩個插件之間的工程無法形成兼容與共享。
但是TomcatPlugin(sysdeo)只是充當(dāng)一個外掛來啟動Tomcat,并把指定的源代碼與Tomcat里面運行的項目關(guān)聯(lián)起來,進行調(diào)試。所以它對目錄結(jié)構(gòu)沒有要求,比較適應(yīng)于無法對目錄結(jié)構(gòu)進行控制的項目,一個普通的Java工程即可以。
?個人Blog:? http://m.tkk7.com/itspy