成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁技術(shù)文章
文章詳情頁

配置Eclipse進(jìn)行遠(yuǎn)程調(diào)試

瀏覽:184日期:2024-07-19 11:31:01
內(nèi)容: 配置Eclipse進(jìn)行遠(yuǎn)程調(diào)試作者:Deepak Vohra2005年8月31日翻譯:observer版權(quán)聲明:可以任意轉(zhuǎn)載,轉(zhuǎn)載時請務(wù)必以超鏈接形式標(biāo)明文章原始出處和作者信息及本聲明作者:Deepak Vohra ;observer原文地址:http://www.onjava.com/pub/a/onjava/2005/08/31/eclipse-jboss-remote-debug.html中文地址:http://www.matrix.org.cn/resource/article/43/43843_Eclipse_Remote_Debug.html關(guān)鍵詞: Eclipse Remote Debug如果J2EE開發(fā)者在應(yīng)用服務(wù)器上部署了應(yīng)用,想在Eclipse的IDE(集成開發(fā)環(huán)境)下調(diào)試該應(yīng)用,他可以利用Eclipse IDE的遠(yuǎn)程調(diào)試器連接到應(yīng)用服務(wù)器上進(jìn)行調(diào)試。如果沒有這個調(diào)試器,出錯信息就只能從應(yīng)用服務(wù)器的錯誤日志里獲取。借助于Eclipse的遠(yuǎn)程調(diào)試器,你可以在應(yīng)用程序中設(shè)置斷點(diǎn),然后在Eclipse里調(diào)試應(yīng)用。當(dāng)應(yīng)用在諸如JBoss之類的服務(wù)器端運(yùn)行出錯時,應(yīng)用就被掛起,Eclipse IDE的Debug視圖顯示產(chǎn)生錯誤的那一行。在下面的演示里我們將在Eclipse中對JBoss服務(wù)器上的應(yīng)用進(jìn)行調(diào)試。開始測試之前我們要做以下工作:1.啟動JBoss服務(wù)器。2.將Eclipse的遠(yuǎn)程調(diào)試器連接到JBoss服務(wù)器上。3.在Eclipse的圖形界面下進(jìn)行調(diào)試。我們將編寫一個servlet應(yīng)用示例并將其部署到JBoss服務(wù)器上。起初該servlet以無錯方式運(yùn)行,接著我們引入錯誤以演示Eclipse的遠(yuǎn)程調(diào)試功能。安裝準(zhǔn)備工作1.下載jboss-4.0.2.zip文件。2.將該zip文件解壓到安裝目錄完成JBoss 4.02應(yīng)用服務(wù)器的安裝。3.下載Eclipse 3.0 或 Eclipse 3.02的zip安裝文件eclipse-SDK-3.0-win32.zip。4.安裝Eclipse 3/3.02的IDE開發(fā)環(huán)境用Eclipse開發(fā)一個JBoss應(yīng)用安裝完JBoss服務(wù)器和Eclipse IDE之后,我們開發(fā)一個servlet應(yīng)用以便在JBoss服務(wù)器上運(yùn)行和調(diào)試。servlet應(yīng)用示例由一個doGet方法組成,它能在瀏覽器里輸出字符串信息。JBossServlet.java示例的代碼如下:package servlets;import java.io.*;import javax.servlet.*;import javax.servlet.http.*;public class JBossServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { PrintWriter out = response.getWriter(); out.println('Eclipse Remote Debugging'); }}為web應(yīng)用創(chuàng)建目錄結(jié)構(gòu)。先創(chuàng)建WEB-INF目錄,然后在該目錄下創(chuàng)建classes目錄。為servlet示例創(chuàng)建名為servlets的java包目錄,并將JBossServlet.java文件拷貝到該目錄。為web應(yīng)用創(chuàng)建部署描述文件web.xml并拷貝到WEB-INF目錄中,該文件如下:<?xml version='1.0' encoding='UTF-8'?> JBossServlet JBossServlet servlets.JBossServlet JBossServlet /catalog servlet示例映射的URL路徑為/catalog。web應(yīng)用的目錄結(jié)構(gòu)如下: /WEB-INF | | web.xml classes | servlets | JBossServlet.class用Ant編譯和部署Web應(yīng)用的編譯、打包和部署是在Eclipse IDE中根據(jù)Ant build.xml文件完成的。我們用一個由若干個target(目標(biāo))元素組成的Ant build.xml文件來編譯JBossServlet.java,然后以webapp.war的文件格式打包、部署web應(yīng)用。build.xml文件如下: build.xml文件中的屬性如下表所示:build.xml文件中還有以下幾個目標(biāo)元素:把編譯目標(biāo)中javac任務(wù)的debug屬性設(shè)為true意味著以debug模式進(jìn)行編譯。對于采用debug模式編譯的應(yīng)用,如果它在JBoss服務(wù)器上運(yùn)行時出現(xiàn)異常,產(chǎn)生異常的代碼行號將會在Eclipse的Debug視圖中被顯示出來。回到Eclipse在Eclipse IDE中創(chuàng)建一個新項(xiàng)目,選擇File -> New -> Project,如圖1所示。 圖1 新項(xiàng)目圖中顯示的是New Project屏。在New Project向?qū)е校x擇Java -> Java Project,點(diǎn)擊Next按鈕進(jìn)入New Java Project屏。在該屏中指定項(xiàng)目名稱(比如EclipseJBoss),然后點(diǎn)擊Next按鈕,如圖2所示。圖2 創(chuàng)建一個Java項(xiàng)目在Java Settings屏中,點(diǎn)擊Add Folder按鈕為項(xiàng)目添加源程序文件夾,如圖3所示。圖3 添加源程序文件夾接下來出現(xiàn)的是New Source Folde屏。在該屏中指定文件夾名稱(比如src)并將文件夾添加到項(xiàng)目中。此時會出現(xiàn)一個提示信息,詢問是否更新源程序文件夾和輸出文件夾。在New Java Project屏中點(diǎn)擊Finish按鈕完成項(xiàng)目創(chuàng)建,如圖4所示。 圖4 Java編譯設(shè)置新項(xiàng)目被添加到Eclipse IDE中,如圖5所示。圖5 Eclipse JBoss項(xiàng)目接下來,選擇File -> Import將servlet示例源程序文件夾導(dǎo)入到項(xiàng)目中。如果src文件夾和build.xml文件不是在Eclipse IDE中創(chuàng)建的,這時就需要將它們導(dǎo)入到項(xiàng)目中。在Import Select屏中選擇File System并點(diǎn)擊Next按鈕,在Import File System屏中選中src文件夾和build.xml文件,然后點(diǎn)擊Finish按鈕,如圖6所示。圖6 導(dǎo)入文件系統(tǒng)這樣就將servlet源程序文件導(dǎo)入到項(xiàng)目中,如圖7所示。 圖7 servlet源程序文件用build.xml文件將servlet web應(yīng)用程序編譯、打包并部署到JBoss服務(wù)器上。右擊build.xml文件,選擇Run -> Ant Build,如圖8所示。 圖8 執(zhí)行Ant BuildAnt對web應(yīng)用程序進(jìn)行編譯,生成.war格式的webapp.war文件并部署到JBoss應(yīng)用服務(wù)器的部署目錄。Ant的輸出如圖9所示。圖9 Ant的輸出接下來執(zhí)行bin/run腳本啟動JBoss服務(wù)器。在瀏覽器中通過訪問http://localhost:8080/webapp/catalog來激活servlet示例,JBossServlet在JBoss服務(wù)器上運(yùn)行并在瀏覽器中輸出信息,如圖10所示: 圖10 JBossServlet在JBoss服務(wù)器上運(yùn)行配置Eclipse進(jìn)行遠(yuǎn)程調(diào)試為了能在Eclipse中遠(yuǎn)程調(diào)試JBoss應(yīng)用,需要以debug模式啟動JBoss服務(wù)器,這可以通過在批命令腳本文件bin/run中設(shè)置debug選項(xiàng)來實(shí)現(xiàn)。JBoss提供的調(diào)試機(jī)制是基于Java平臺調(diào)試架構(gòu)(JPDA)的。按以下方式設(shè)置JAVA_OPTS變量:set JAVA_OPTS= -Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,address=8787, server=y, suspend=n %JAVA_OPTS%這些debug參數(shù)有:有關(guān)debug參數(shù)設(shè)置的詳細(xì)說明參見JPDA文檔。為了演示Eclipse的遠(yuǎn)程調(diào)試功能,需要在JBossServlet中拋出異常。為此我們在JBossServlet.java中引入NullPointerException(空指針異常),把原先的代碼:out.println('Eclipse JBoss Debugging');改為:String str=null;out.println(str.toString());接下來,為該Eclipse項(xiàng)目的遠(yuǎn)程調(diào)試進(jìn)行設(shè)置。在Debug選項(xiàng)下拉條中選擇Debug選項(xiàng),如圖11所示。 圖11 Debug選項(xiàng)圖中顯示的是Debug屏。在該屏中選中Remote Java Application節(jié)點(diǎn),右擊節(jié)點(diǎn)選擇New,如圖12所示。圖12 新的debug設(shè)置在Debug Configuration屏中為Debug設(shè)置指定名字。選中要調(diào)試的項(xiàng)目,也就是此前在Eclipse IDE中創(chuàng)建的EclipseJBoss項(xiàng)目。為Connection Type(連接類型)選擇默認(rèn)值,在Connection Properties(連接屬性)中將Host指定為localhost,將Port(端口)指定為8787(JBoss服務(wù)器批命令腳本run中的端口設(shè)定值)。點(diǎn)擊Apply按鈕將此遠(yuǎn)程Java應(yīng)用調(diào)試設(shè)置加入,如圖13所示。圖13 JBoss調(diào)試設(shè)置接下來,在JBossServlet.java文件中加入異常斷點(diǎn)。此前我們已在JBossServlet中引入了NullPointerException異常。選擇Run -> Add Java Exception Breakpoint在該servlet類中加入斷點(diǎn),如圖14所示。圖14 加入Java異常斷點(diǎn)在Add Java Exception Breakpoint屏中選擇NullPointerException,如圖15所示。NullPointerException斷點(diǎn)被加入到servlet類中。圖15 NullPointerException斷點(diǎn)如果servlet應(yīng)用在JBoss服務(wù)器上運(yùn)行時產(chǎn)生了NullPointerException異常,該應(yīng)用就會被掛起,同時Eclipse IDE的Debug視圖中會顯示出該異常。遠(yuǎn)程調(diào)試JBoss應(yīng)用為部署在JBoss服務(wù)器上的servlet示例應(yīng)用配置好debug設(shè)置后,我們就可以在Eclipse IDE中調(diào)試servlet應(yīng)用了。參照“用Eclipse開發(fā)一個JBoss應(yīng)用一節(jié)所說的方法,用build.xml文件對修改后(引入了NullPointerException異常)的JBossServlet.class重新編譯,為web應(yīng)用生成新的webapp.war文件。在run批命令腳本中設(shè)定調(diào)試選項(xiàng),以debug模式啟動JBoss服務(wù)器。接下來,在Debug屏中選擇EclipseDebug作為調(diào)試設(shè)置。點(diǎn)擊Debug按鈕將遠(yuǎn)程調(diào)試器與JBoss服務(wù)器連接,如圖16所示。圖16 將遠(yuǎn)程調(diào)試器連接到JBoss服務(wù)器上這樣Eclipse的遠(yuǎn)程調(diào)試器就連接到了JBoss服務(wù)器上。選擇Debug Perspective按鈕切換到Eclipse的Debug視圖,在該視圖中顯示出遠(yuǎn)程調(diào)試器已連接到本機(jī)的JBoss服務(wù)器上,端口號為8787,如圖17所示。 圖17 遠(yuǎn)程調(diào)試器已連接到JBoss服務(wù)器上在瀏覽器中輸入URL地址http://localhost:8080/webapp/catalog來訪問JBoss服務(wù)器上的JBossServlet,就像我們在Debug視圖中看到的那樣,servlet因拋出NullPointerException異常而被掛起。產(chǎn)生了異常的那一行代碼被顯示出來,如圖18所示。 圖18 JBoss服務(wù)器在產(chǎn)生NullPointerException處被掛起拋出異常的那一行是out.println(str.toString());。我們可以在Eclipse IDE的Run菜單中選擇不同的調(diào)試選項(xiàng)對該servlet應(yīng)用進(jìn)行調(diào)試。小結(jié)我們在Eclipse IDE中以遠(yuǎn)程的方式調(diào)試了部署在JBoss服務(wù)器上的一個應(yīng)用。只要將服務(wù)器設(shè)置成以debug模式啟動,我們就可以用這個方法調(diào)試部署在其它類型應(yīng)用服務(wù)器(如Weblogic)上的應(yīng)用。資源Eclipse IDEJBoss服務(wù)器Java平臺調(diào)試架構(gòu)Deepak Vohra是NuBean公司的咨詢顧問和Web開發(fā)人員。 Java, java, J2SE, j2se, J2EE, j2ee, J2ME, j2me, ejb, ejb3, JBOSS, jboss, spring, hibernate, jdo, struts, webwork, ajax, AJAX, mysql, MySQL, Oracle, Weblogic, Websphere, scjp, scjd
相關(guān)文章:
成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久
久久综合中文色婷婷| 日本成人在线网站| 日本欧美一区二区在线观看| 91小视频在线| 日韩欧美国产综合一区| 国产资源精品在线观看| 色妞www精品视频| 无吗不卡中文字幕| 午夜在线a亚洲v天堂网2018| 亚洲欧美乱综合| 日韩一级欧洲| 亚洲人被黑人高潮完整版| 欧美日本亚洲韩国国产| 久久亚洲精品国产精品紫薇| 亚洲国产裸拍裸体视频在线观看乱了| 99精品热6080yy久久| 一区二区三区在线视频观看58| 99国产精品视频免费观看一公开| 亚洲国产激情av| 国产精品国色综合久久| 中文字幕在线观看一区二区| 欧美日韩精品免费观看视一区二区| 久久免费看少妇高潮| 97se亚洲国产综合自在线观| 久久精品网站免费观看| 国产精品theporn| 亚洲欧洲精品天堂一级| 精品福利av| 亚洲精品国产精华液| 99精品欧美一区二区三区| 亚洲国产精品自拍| 久久黄色小说| 蜜桃视频一区二区三区在线观看| 久久亚洲影院| 日韩av不卡在线观看| 欧美在线视频不卡| 国产主播一区二区三区| 欧美一级夜夜爽| 成人激情图片网| 久久久久国产精品麻豆ai换脸| 欧美视频四区| 一区二区在线观看视频| 久久国产日韩| 久久国产精品99精品国产| 欧美精品第1页| 成人黄色a**站在线观看| 久久久精品日韩欧美| 激情六月综合| 亚洲一区二区偷拍精品| 美日韩免费视频| 久久草av在线| 久久美女艺术照精彩视频福利播放| 欧美日韩三级| 亚洲一区二区影院| 欧美色窝79yyyycom| www.亚洲色图.com| 亚洲丝袜美腿综合| 欧美在线视频你懂得| 99免费精品在线| 曰韩精品一区二区| 欧美日韩欧美一区二区| 日本女人一区二区三区| 精品1区2区在线观看| 精品不卡一区二区三区| 日韩电影在线观看网站| 欧美成人高清电影在线| 一区二区欧美日韩| 国产一区二区电影| 国产日韩欧美亚洲| 久久在线91| 97成人超碰视| 日韩综合小视频| 精品国产一区二区在线观看| 国产欧美日韩伦理| 国产麻豆精品久久一二三| 欧美国产禁国产网站cc| 久久久久中文| 99国产精品久久久久久久久久 | 欧美xfplay| 99视频日韩| 国产98色在线|日韩| 亚洲蜜臀av乱码久久精品| 欧美日韩日日摸| 精品电影一区| 国产麻豆欧美日韩一区| 亚洲人成网站色在线观看| 欧美久久久久久久久| 亚洲精品乱码久久久久久蜜桃麻豆| 国产乱一区二区| 亚洲美女在线国产| 日韩一级免费一区| 亚洲一卡久久| 97久久超碰国产精品| 日本成人在线不卡视频| 国产精品久久久爽爽爽麻豆色哟哟| 欧美日韩一级片在线观看| 一区二区亚洲精品| 成人美女视频在线观看18| 五月天精品一区二区三区| 国产欧美日韩在线视频| 欧美精品v国产精品v日韩精品| 99精品视频免费全部在线| 丰满少妇在线播放bd日韩电影| 亚洲一区二区三区四区中文字幕| 欧美精品一区二区久久婷婷| 一本大道久久a久久精品综合| 欧美精选在线| 久久精品国产精品青草| 亚洲精品视频免费看| 亚洲精品在线观| 午夜一区不卡| 国产精品swag| 成人少妇影院yyyy| 久久精品国产亚洲高清剧情介绍| 亚洲黄色小视频| 久久久国产精品不卡| 欧美区在线观看| 久久国产精品99国产| 国产一区激情| bt欧美亚洲午夜电影天堂| 久久99精品国产麻豆婷婷洗澡| 亚洲欧美一区二区三区国产精品| 欧美成人三级电影在线| 欧美色涩在线第一页| 国产精品一区二区你懂得| 国语自产精品视频在线看抢先版结局 | 一区二区自拍| 国产99久久久精品| 日本va欧美va欧美va精品| 亚洲欧美一区二区久久| 久久久国际精品| 精品奇米国产一区二区三区| 欧美三级日韩在线| 色吊一区二区三区| 亚洲欧美日韩精品综合在线观看| 亚洲国产第一| 欧美日韩在线播放一区二区| 99麻豆久久久国产精品免费| 国产黄色精品网站| 极品少妇一区二区三区精品视频| 日韩高清不卡一区二区三区| 一区二区三区视频在线看| 中文在线一区二区| wwwwxxxxx欧美| 日韩视频一区二区三区| 欧美精品少妇一区二区三区| 欧美无人高清视频在线观看| 久久久久综合一区二区三区| 亚洲一区三区电影在线观看| 亚洲麻豆av| 欧美日韩精品久久| 欧美不卡福利| 91亚洲精品久久久蜜桃网站| 成人一区在线看| 国产精品亚洲一区二区三区妖精 | 狠狠v欧美v日韩v亚洲ⅴ| 亚洲视频一区二区在线观看| 中文字幕第一区二区| 国产农村妇女精品| 久久九九国产精品| 国产亚洲精品7777| 国产女同互慰高潮91漫画| 久久久久高清精品| 久久男人中文字幕资源站| 久久久精品tv| 国产三级欧美三级| 国产欧美精品在线观看| 国产精品妹子av| 中文字幕一区二区在线播放| 中文字幕在线观看不卡视频| 亚洲欧美日韩国产综合| 一区二区三区四区蜜桃| 亚洲无人区一区| 亚洲bt欧美bt精品777| 日韩激情av在线| 久久国产人妖系列| 国产黑丝在线一区二区三区| 丁香亚洲综合激情啪啪综合| 成人永久aaa| 欧美成人亚洲| 亚洲三级电影在线观看| 亚洲影院一区| 欧美影视一区在线| 日韩三级av在线播放| 久久精品水蜜桃av综合天堂| 亚洲欧洲成人精品av97| 亚洲国产aⅴ成人精品无吗| 亚洲成av人在线观看| 人禽交欧美网站| 国产在线一区二区| 成人免费av网站| 黑丝一区二区| 亚洲一区二区三区精品在线观看| 色婷婷综合久久| 欧美精品v日韩精品v韩国精品v| 精品久久久久香蕉网| 国产精品美女久久久久aⅴ| 一区二区久久久| 蜜臂av日日欢夜夜爽一区| 国产成人在线视频免费播放|