Tomcat配置遠程調試

===========方法1================================

tomcat7 :catalina.bat jpda start,調試端口默認爲8000

===========方法2================================ 
1.進入工程目錄,運行Ant命令編譯;
2.生成Eclipse工程所需的文件(.classpath和.project等);
3.antexpand發佈編譯生成的war包;
4.從外面啓動Tomcat(某些工程並非標準JavaEE工程,無法直接在Server視圖下集成服務器);
5.訪問自己的成果,汗,此時如不做特殊設置,效果是看到了,可是調試呢?
 
帶着問題學習了下遠程調試總結如下:
在做遠程調試時,在windows系統和非windows系統下的配置,Tomcat中會有所差別,具體如下:

第一步、配置tomcat
一、在windows系統中:
打開%CATALINE_HOME%/bin下的文件catalina.bat,加入下面這行:
set CATALINA_OPTS=-server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address= 8000

其中 address=8000是沒被使用的端口號。連接方式有兩種,爲dt_shmem和dt_socket,分別表示本機調試和遠程調試。

二、在非windows系統中:
還需要把% CATALINE_HOME %/bin/startup.sh中的最後一行exec "PRGDIR"/"PRGDIR"/"EXECUTABLE" start "$@" 中的start改成jpda start。由於默認的端口是8000,所以如果8000端口已有他用的話,還需在catalina.sh文件中設置:JPDA_ADDRESS=8000。
輸入命令startup.sh或者catalina.sh jpda start就可啓動tomcat。

第二步、配置eclipse
在Eclipse中選擇Run Debug,在彈出對話框中右擊Remote Java Application新建一個遠程調試項,如下所示:

在 “Name”輸入框中輸入遠程調試的名稱,在“Project”中選擇要調試的項目,在“Host”中輸入需要遠程調試項目的IP,也就是tomcat所在的IP,在“Port”中輸入設置的端口號,比如上面設置的8000,然後鉤選“Allow termination of remote VM”,點擊“Apply”即可。
設置完後就可以開始調試了,大概分一下幾步:
1、啓動tomcat(遠程),如在控制檯輸出“Listening for transport dt_socket at address: 8000”,即說明在tomcat中設置成功;
2、在本機設置斷點;
3、進入上圖界面,選擇要調試的項,點擊“Debug”即可進行遠程調試;
4、訪問你的測試頁面即可看到久違的調試界面。

但每次做上述操作非常煩,不如寫個批處理,如取名爲Tomcat debug.bat,在這個文件中加入下面幾行:

cd %CATALINE_HOME%/bin
set JPDA_ADDRESS=8000
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

將此腳本保存到tomcat/bin目錄下,然後發個快捷方式在桌面,歐啦~~~~
這樣需要遠程調試時,運行debug.bat即可;不需要遠程調試時,還是運行startup.bat文件

==========方法3================================

tomcat遠程調試

1.Linxu系統: apach/bin/startup.sh開始處中增加如下內容: 

  declare -x CATALINA_OPTS="-server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8788"   

2.Windows系統: apach/bin/startup.bat開始處中增加如下內容: 

SET CATALINA_OPTS=-server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8788

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章