1:修改Linux上Tomcat的catalina.sh,第一行添加declare -x CATALINA_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=9528"
(windows修改類似 修改catalina.bat.寫法如下:
SET CATALINA_OPTS=-server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=9528
)
2:在eclipse中, 點 "Run->Debug...",選 "Remote Java Application",按提示新建,"Project"一項選擇需要調試代碼的項目,"Host"選擇遠程Linux主機IP地址,"Port"選擇上一行address配置的8000,注意這是一個獨立的未占用端口與應用的端口不一樣的。
3:運行Linux上的tomcatbincatalina.sh啟動tomcat,
命令如下:當前tomcatbin目錄下
輸入:./catalina.sh run (這樣可以看到Tomcat的信息運行信息)
或者 ./startup.sh
如果提示沒有權限,以root身份設置權限:chmod +x *.*
Listening for transport dt_socket at address: 9528"
這樣的信息,說明調試端口已經被監聽
4:在windows上的eclipse中點 "Run->Debug..."選中剛才新建的,點"Debug",如果一切正確就沒有提示。此后你在代碼中設置的斷點就會執行。
5:關於修改源代碼,由於java本身的JPDA機制,遠程代碼運行效果會被及時更新,但是並不能更新遠程服務器上的代碼,這一點要注意.