天天看點

eclipse調試web項目

Eclipse上的Web項目調試

     在Eclipse中開發Web項目的首要難題就是如何進行代碼調試。本文簡要說明一下在Eclipse中使用Tomcat和Jetty調試Java Web項目的方法。

     Tomcat插件方式。Eclipse自身可以通過下載下傳安裝Tomcat插件的方式進行調試,由于插件中內建了tomcat的運作環境,是以不需要獨立安裝Tomcat伺服器。該插件網址http://www.eclipsetotale.com/tomcatPlugin.html,插件下載下傳位址:http://www.eclipsetotale.com/tomcatPlugin/tomcatPluginV321.zip,下載下傳以後以普通插件的方式安裝到Eclipse中(拷貝方式或link方式)即可。但這種方式的調試環境和真實運作環境還是有一些差别,而且運作目錄預設是在Eclipse的插件目錄中,運作環境不太直覺,是以這裡不推薦此方式。

    Tomcat Server方式。首先下載下傳安裝Tomcat(位址http://tomcat.apache.org/)。然後打開Eclipse,在Eclipse中添加Tomcat Server。步驟如下:

    Window->Preferences->Server->Runtime Environments->Add->選擇Apache Tomcat v6.0->next->選擇Tomcat的安裝目錄->finish。

當Tomcat被添加到Eclipse的 Server以後,Eclipse會自動建立一個名稱為“Servers”的項目,其中包含了context.xml、server.xml、 tomcat-users.xml、web.xml等基本配置檔案。下面開始配置web項目調試選項:

    在web項目上右鍵->Debug As->Debug Configurations->在Apache Tomcat上右鍵->New,建立調試器,然後使用預設配置選項即可。接下來就可以在項目上右鍵->Debug On Server開始調試web項目了。

   Jetty Server方式。該配置與Tomcat大同小異。首先還是下載下傳安裝Jetty(位址:http://jetty.codehaus.org/jetty/)。然後打開Eclipse,在Eclipse中添加Jetty Server。步驟如下:

    Window->Preferences->Server->Runtime Environments->Add->選擇Jetty 6->next->選擇Jetty的安裝目錄->next->設定端口->finish。

    下面開始配置web項目調試選項:

    在web項目上右鍵->Debug As->Debug Configurations->在Generic Server上右鍵->New,建立調試器,然後使用預設配置選項即可。(配置資訊中的jre一般選擇預設jre)。接下來就可以在項目上右鍵 ->Debug On Server開始調試web項目了。

    Jetty調試多個web項目。當 項目比較龐大時,經常會把web項目分解成多個子web項目,分别開發,然後聚合成一個完整的web系統。由于子web項目不能獨立運作,這樣分解開發帶 來的一個問題是開發過程中的調試問題,Jetty支援以指定的配置檔案啟動web伺服器,并且支援多檔案夾聚合web站點,是以可以配置Jetty來解決 這個問題,在調試時Jetty把分布于不同位置的各個子項目在邏輯上自動合并成一個完整項目。配置方法:

   首先建立包含Jetty包的User Library:Window->Preferences->User Libraries->New(輸入名稱Jetty)->Add Jars->在Jetty的安裝目錄下選擇要包含的Jetty包,這些jar包包括:{Jetty目錄}/lib/ext/*.jar;: {Jetty目錄}/lib/jsp-2.1/*.jar。

   在項目分解時,web項目被分解為一個主Java Web項目和若幹個普通Java項目,其中的主Web項目用來做配合檔案維護管理和啟動項目。

   1.在主web項目上點選右鍵,選擇Debug As->Debug Configurations->在Java Application上右鍵->New, 然後開始配置該調試器:

   2.在頁籤“Main”中,設定Project選項為主Web項目;Main Class設定為org.mortbay.xml.XmlConfiguration;

   3.在“Arguments”頁籤中,設定Program arguments為${workspace_loc:xxxx}/jetty.xml,其中的xxxx為主web項目名稱,Working Directory中的“other”選項設定為${workspace_loc};

   4.Classpath頁籤,Bootstrap Entries中首先添加上面建立的包含Jetty的jar包的User Library,然後添加項目所用到的其它User Library,User Entries中添加主web項目和其他所有的子java項目;

<?xml version="1.0" encoding="ISO-8859-1"?> <!DOCTYPE Configure PUBLIC "-//Mort Bay Consulting//DTD Configure//EN" "http://jetty.mortbay.org/configure.dtd"> <Configureclass="org.mortbay.jetty.webapp.WebAppContext"> <Set name="baseResource"><Newclass="org.mortbay.resource.ResourceCollection"> <Arg> <Array type="java.lang.String"><Item>MainProject/WebContent</Item> <Item>SubProject1/WebContent</Item><Item>SubProject2/WebContent</Item> </Array> </Arg> </New> </Set> <Setname="contextPath">/vpath</Set> </Configure>