在做遠程調(diào)試時,在windows系統(tǒng)和非windows系統(tǒng)下的配置,Tomcat中會有所差別,具體如下:
第一步、配置tomcat
一、在windows系統(tǒng)中:
打開%CATALINE_HOME%/bin下的文件catalina.bat,加入下面這行:
set CATALINA_OPTS=-server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8787
其中address=8787是沒被使用的端口號。連接方式有兩種,為dt_shmem和dt_socket,分別表示本機調(diào)試和遠程調(diào)試。
二、在非windows系統(tǒng)中:
還需要把% CATALINE_HOME %/bin/startup.sh中的最后一行exec "$PRGDIR"/"$EXECUTABLE" start "$@" 中的start改成jpda start。由于默認的端口是8000,所以如果8000端口已有他用的話,還需在catalina.sh文件中設(shè)置:JPDA_ADDRESS=8787。
輸入命令startup.sh或者catalina.sh jpda start就可啟動tomcat。
第二步、配置eclipse
在Eclipse中選擇Run?Debug,在彈出的對話框中右擊Remote Java Application新建一個遠程調(diào)試項,如下如所示:
在“Name”輸入框中輸入遠程調(diào)試的名稱,在“Project”中選擇要調(diào)試的項目,在“Host”中輸入需要遠程調(diào)試項目的IP,也就是tomcat所在的IP,在“Port”中輸入設(shè)置的端口號,比如上面設(shè)置的8787,然后鉤選“Allow termination of remote VM”,點擊“Apply”即可。
設(shè)置完后就可以開始調(diào)試了,大概分一下幾步:
1、啟動tomcat(遠程),如在控制臺輸出“Listening for transport dt_socket at address: 8787”,即說明在tomcat中設(shè)置成功;
2、在本機設(shè)置斷點,即在需要監(jiān)視的代碼行前雙擊就會出現(xiàn)一個小圓點;
3、進入上圖界面,選擇要調(diào)試的項,點擊“Debug”即可進行遠程調(diào)試;
4、當運行到設(shè)置了斷點的代碼行處即可看到如下圖所示的淺綠條。
按鍵操作:
1、F5鍵與F6鍵均為單步調(diào)試,F(xiàn)5是進入本行代碼中執(zhí)行,F(xiàn)6是執(zhí)行本行代碼,跳到下一行;
2、F7是跳出函數(shù);
3、F8是執(zhí)行到最后。
當然,為了方便,可以新建一個批處理文件,假如取名為debug.bat,在這個文件中加入下面幾行:
cd %CATALINE_HOME%/bin
set JPDA_ADDRESS=8787
set JPDA_TRANSPORT=dt_socket
set CATALINA_OPTS=-server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8787
startup
這樣需要遠程調(diào)試時,運行debug.bat即可;不需要遠程調(diào)試時,還是運行startup.bat文件。
本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請
點擊舉報。