1. 程式人生 > >用Eclipse遠端除錯(Remote debug)Tomcat

用Eclipse遠端除錯(Remote debug)Tomcat

1. 配置Tomcat支援remote debugging

給JVM加上如下的啟動引數:

-Xdebug -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n

2. Eclipse裡新建一個Remote Java Applications的debug

“Run->Debug…”, then “Remote Java Applications”, “New”,port添8000。

適合不想或沒必要用任何外掛的情形。

在做遠端除錯時,在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=8787 

其中address=8787是沒被使用的埠號。連線方式有兩種,為dt_shmem和dt_socket,分別表示本機除錯和遠端除錯。 

二、在非windows系統中: 

還需要把% CATALINE_HOME %/bin/startup.sh中的最後一行exec "$PRGDIR"/"$EXECUTABLE" start "

[email protected]" 中的start改成jpda start。由於預設的埠是8000,所以如果8000埠已有他用的話,還需在catalina.sh檔案中設定:JPDA_ADDRESS=8787。 

輸入命令startup.sh或者catalina.sh jpda start就可啟動tomcat。 

第二步、配置eclipse 

在Eclipse中選擇RunDebug,在彈出的對話方塊中右擊Remote Java Application新建一個遠端除錯項,如下如所示: 

在 “Name”輸入框中輸入遠端除錯的名稱,在“Project”中選擇要除錯的專案,在“Host”中輸入需要遠端除錯專案的IP,也就是tomcat所在的IP,在“Port”中輸入設定的埠號,比如上面設定的8787,然後鉤選“Allow termination of remote VM”,點選“Apply”即可。 

設定完後就可以開始除錯了,大概分一下幾步: 

1、啟動tomcat(遠端),如在控制檯輸出“Listening for transport dt_socket at address: 8787”,即說明在tomcat中設定成功; 

2、在本機設定斷點,即在需要監視的程式碼行前雙擊就會出現一個小圓點; 

3、進入上圖介面,選擇要除錯的項,點選“Debug”即可進行遠端除錯; 

4、當執行到設定了斷點的程式碼行處即可看到如下圖所示的淺綠條。 

按鍵操作: 

1、F5鍵與F6鍵均為單步除錯,F5是進入本行程式碼中執行,F6是執行本行程式碼,跳到下一行; 

2、F7是跳出函式; 

3、F8是執行到最後。 

當然,為了方便,可以新建一個批處理檔案,假如取名為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 

這樣需要遠端除錯時,執行debug.bat即可;不需要遠端除錯時,還是執行startup.bat檔案。

相關推薦

Eclipse遠端除錯(Remote debug)Tomcat

1. 配置Tomcat支援remote debugging 給JVM加上如下的啟動引數: -Xdebug -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n 2. Eclipse裡新建一個Remote J

eclipse遠端除錯Linux下tomcat

步驟如下: 1.進入tomcat安裝路徑,進入bin目錄         2.開啟目錄下的catalina.sh檔案,找到JPDA_ADDRESS="8000",8000代表遠端除錯埠,可以更改成其他沒有被佔用的埠。如下所示               3.以debug模

使用Eclipse遠端除錯Linux伺服器Tomcat專案

工作這些年,經常會出現這樣的情況,程式執行在本機是正常的,但是放到伺服器上就出現各種bug,且伺服器通用都是linux伺服器,不方便除錯,很難排查問題,這時候就需要 用到Eclipse的遠端除錯功能。說來慚愧,博主也是最近才知道這個功能,因此整理出這個帖子,以供大家分享。

eclipse遠端除錯Java程式

最近用Java做專案時一個功能在本機除錯好好的,一部署到伺服器上就不行了,百思不得其解,於是請教老大。 “遠端debug一下”,老大雲淡風輕。 “程式碼部署到伺服器上了還能遠端debug?”,而我一臉懵逼。 老大稍作鼓搗,果然遠端除錯上了!

eclipse遠端除錯伺服器上tomcat的應用

我看到網上都說的是點run->debug configurations下面就有Romote Java Application。昨晚一直沒有找見,今天又看了看,原來是先在eclipse中的右上角選Debug檢視後,再點run->debug configurations,下面就有了Remote Jav

Tomcat: 開啟遠端除錯Remote Debugging模式

2018.11.01 文章目錄 前言 方法 方法一:`JPDA_OPTS` 方法二(建議):`CATALINA_OPTS` Old-fashioned方法 前言 Tomcat的遠端除錯

eclipse遠端除錯時出現:Failed to connect to remote VM. Connection refused. Connection refused: connect

如圖: 以下都是在網路中找的解決方案: 解決方案1:服務是在root 賬戶下啟動的,關掉服務殺掉程序,然後用普通使用者登入重啟服務!(對我無效,因為我的服務不可以用普通使用者啟動) 解決方案2:在Eclipse中找到Run-Debug Configur

關於開啟tomcat遠端除錯Debug的步驟

一、配置記憶體 在/tomcat/bin/catalina.sh 中新增: JAVA_OPTS='-server -Xms2048m -Xmx2048m -XX:NewSize=768m -XX:MaxPermSize=256m -XX:MaxDirectMemorySize=256m -XX:+UseCo

Eclipse 遠端除錯 “Failed to connect to remote VM. Connection timed out ” error,

最近發現在 Eclipse 中進行遠端除錯別的主機上的應用的時候,總是連線不上除錯埠,報 “Failed to connect to remote vm”, 如下圖所示: 因為以前都是可以的,所以百思不得其解,Google了半天,能找到的問題一般也都是因為對方沒有開啟遠端

eclipse遠端除錯Tomcat方法(測試成功並且說說遇到的坑)

PS:文中容易引起歧義的地方已經做了修改;另外,本人蔘照以下步驟操作,結果無法除錯,後來發現是breakpoints的設定。。,如圖是不跳過斷點,如果點選了就是跳過斷點。。 1、如果要除錯遠端Linux下tomcat應用,配置tomcat在catalina.sh中新增

eclipse遠端除錯Tomcat方法

1、Linux中配置tomcat在catalina.sh中新增如下 CATALINA_OPTS="-Xdebug  -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n"(不要換行,要在同一行) 2、W

Eclipse遠端除錯Tomcat

最近,一直在研究Tomcat的工作內幕,主要的方法就是參考《How Tomcat Works》 這本書和Tomcat 5.5.26的原始碼。 Tomcat的程式碼結構還是比較清晰的,註釋也比較全。但是程式碼畢竟是靜態的,難以徹底弄清類與類之間的協作關係,以及執行時物件的互動關係。 如果能對Tomcat的

移動端Web開發除錯之Chrome遠端除錯(Remote Debugging)

在智慧手機還未普及時,移動裝置的除錯處處是alert的,這估計是最常用的辦法了。以前很多時候為了預覽頁面在移動裝置上的效果,需要先將頁面上傳到測試伺服器,再將url輸入到裝置瀏覽器,或者使用第三方二維碼掃碼應用,通過移動裝置訪問開啟瀏覽實際效果,每次換裝置都要重複這些操作,

eclipse遠端除錯命令列執行的maven執行程式

有的時候,我們需要除錯命令列執行的maven執行程式。該怎麼辦呢? 我們知道eclipse本身可以執行遠端除錯,具體做法網上都有不少文章, 這裡不再多說。 現在的問題就是在maven在執行時,如何能讓eclipse遠端除錯正在執行的maven程式 maven在本身也是java程式,所以只

Weinre遠端除錯移動網頁

提醒:本文最後更新於 2493 天前,文中所描述的資訊可能已發生改變,請謹慎使用。 今天Miller兄分享了一個很好的工具Weinre(WEb INspector REmote),可以在一個Webkit下遠端除錯另一個Webkit裡的網頁,典型應用就是在桌面瀏覽器裡除錯iPhone、iPad等移動裝

eclipse遠端除錯連線超時問題

連線時提示連線超時,然後用命令lsof -i :8888檢視埠號已被佔用,再次連線直接報錯 上網檢視原因,只需將連線時間設定變長就OK啦,如下圖: 參考連結:http://blog.sina.com.cn/s/blog_72ef7bea01015al3.html

實戰 windows7 下 eclipse 遠端除錯 linux hadoop

恩,之所以有這篇部落格,是因為最近又有童鞋諮詢怎麼在 windows 7 下用eclipse遠端除錯部署在linux下的hadoop,其實我自己不這麼混搭的,既然有童鞋這麼問了,那我就索性隨著折騰一把了。 首先說明幾點: 遠端除錯對於本地hadoop版本、遠端hadoop版本、eclipse版本都有極

使用Eclipse遠端除錯雲伺服器上的微信公眾專案

雲伺服器系統:centos 7.3如何在Eclipse上除錯我們在雲伺服器上的專案呢,下面介紹一下步驟:1.因為root賬號不支援遠端除錯,首先需要在linux上建立一個新的使用者,然後用該使用者裝一個tomcat 並將專案部署上。2.該使用者的tomcat的server.x

windowseclipse遠端連線Ubuntu下hadoop

1.在windows下安裝好eclipse 2.解壓hadoop-1.2.1.tar.gz到windows下的一個指定目錄 3.下載hadoop-eclipse-plugin-1.2.1.jar包 4

遠端除錯Linux下tomcat應用

1.找到linux下的tomcat檔案路徑,修改bin下面的catalina.sh,找到jpda配置處 Shell程式碼   if [ "$1" = "jpda" ] ; then    if [ -z "$JPDA_TRANSPORT" ]; then      J