1. 程式人生 > >怎樣用Eclipse進行遠端debug

怎樣用Eclipse進行遠端debug

       什麼是遠端除錯,就是在A機器上利用Eclipse單步跟蹤除錯B機器上的Web應用,當然除錯A機器上Web應用也是沒有問題的,90%我都是除錯本機的Web應用,遠端除錯的意義我想我不用說了,大家都會想到它的好處,你可以在本地除錯非本地測試環境上的應用,這是件多麼美妙的事,所以我就不說它的好處了,那麼本地除錯呢,我喜歡本地除錯也採用下面要介紹的方法,為什麼不用myeclipse,WTP,TomcatPlugin等。          下面我闡述下在eclipse中啟動Web應用的缺陷: 我本身是非常喜歡使用Myeclipse 做WEB部署的,但是我不喜歡使用Myeclipse啟動tomcat,當然WTP,TomcatPlugin等也不喜歡,使用Myeclipse做部署的好處就是非常靈活,不僅可以部署到Web應用裡面還可以任意部署到某一指定路徑下。但是使用Myeclipse啟動tomcat的話,有如下問題:          a.卡,比較慢,尤其是同時啟動多個應用.          b.如果斷點比較多的時候例如100多個,必須把每個不需要使用的斷點先禁用掉或乾脆刪掉,也就是說web應用啟動的時候就已經決定了是debug模式還是run模式。中間不可以切換。 c.一旦eclipse死掉了,web應用也就斷掉了。 d.對於程式來說相對路徑,類載入路徑都是和系統正式執行的情況下完全不同的(要視具體外掛而論,每個外掛的部署方式都不太一樣),即和Web應用獨立執行的相對路徑和類載入環境有差異,當然熟練的老手可以輕鬆搞定,但是就目前國內情況看,很多初學者在這個問題上還是很苦惱的。 e.順便說一句和本話題無關的,eclipse的console並不能完全模擬cmd控制檯,一些流操作會有問題。例如:PushbackInputStream 那麼使用遠端除錯的方法做本地除錯有什麼好處呢? a.執行速度比較好。 b.執行期間可以使用eclipse連線web應用做除錯,除錯完成後可以斷開連線,需要除錯的時候可以再重新進行連線,斷點的禁用功能可能就很少派上用場了,因為相對於在debug模式和run模式間自由切換。 c.Web應用是獨立執行的,不用擔心eclipse死掉即玩完了。 d.從開發到上線執行,環境一直可以保持一致。 說了半天,沒有使用過的人可能還是不瞭解,沒關係,可以看完下面的,再回過頭看上面的。 下面我舉一個小例子介紹如何進行遠端除錯. 環境:tomcat,Eclipse,做遠端除錯不需要任何外掛。當然可以使用MyEclipse把Web應用部署到tomcat上面,注意只是部署,一般來講使用遠端除錯就不需要配置MyEclipse的Web Server了,MyEclipse在這裡只起到一個copy檔案的作用,好在現在Myeclipse可以隨意指定目錄copy了。即 Deployment 對話方塊中的Custom Location,在這裡推薦大家一個copy檔案的小外掛,有了這個外掛就不需要Myeclipse部署了。        這次例子的原始碼很簡單: Jsp 原始碼如下index.jsp <%com.syj.test.DebugTest.test("sunyujia test");%> Hello Remote Debug DebugTest類的test方法中做個斷點既可測試 下面按步驟進行講解 1.web應用部署到Tomcatwebapp目錄下 2.修改Tomcat/bin/startup.bat檔案,在最前面加上如下程式碼 SET CATALINA_OPTS=-server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8000
注意上面命令必須寫成一行中間不能有換行,-前是空格-後是非空格,由於顯示器解析度不同,該文章在顯示的時候可能會有換行的情況。 更多Web伺服器遠端除錯引數可參見 3.必須先啟動Tomcat啟動tomcat/bin/startup.bat參下圖 4.在com.syj.test.DebugTest.test方法中設定斷點 5在eclipse中配置debug,配置完成後點選debug按鈕。如圖: 6.開啟瀏覽器訪問在第1步部署的web應用,訪問index.jsp 7.當瀏覽器訪問index.jsp時,由於呼叫了com.syj.test.DebugTest.test,又因在
test方法中設定了斷點,所以程式會被斷點攔截,如圖: 8.不需要除錯的時候點選斷開,需要除錯的時候再點選debug,非常方便,當除錯過程中出現引用非本project的原始碼時(例如跟蹤到tomcat裡面或spring,hibernate裡面),會提示找不到原始碼,點選相應提示的按鈕(到時候editor區只有一個按鈕,所以大家就不要問哪個按鈕了)可以新增原始碼繼續除錯,或在配置debug前就把需要的原始碼都新增上,在source選項卡里面,因為具體的基本除錯這方面知識不屬於本話題討論範圍內,就不過多介紹了。

相關推薦

怎樣Eclipse進行遠端debug

       什麼是遠端除錯,就是在A機器上利用Eclipse單步跟蹤除錯B機器上的Web應用,當然除錯A機器上Web應用也是沒有問題的,90%我都是除錯本機的Web應用,遠端除錯的意義我想我不用說了,大家都會想到它的好處,你可以在本地除錯非本地測試環境上的應用,這是

IDEA進行遠端Debug除錯

一、目的 用debug模式進行遠端除錯,方便開發人員對非本地(公共開發環境/測試環境/聯調環境等)程式碼的問題進行定位,提高定位、修復問題的效率 二、除錯步驟 1、相關命令講解: -Xdebug -Xrunjdwp:transport=dt_socket,s

Eclipse進行遠端Debug程式碼

首先你本地Eclipse上要有和部署在遠端伺服器一至的專案,否則debug的時候會出現程式碼行錯位,難以達到debug的效果。例如:如果你本地的程式碼加了行,修改了,或減了一行。而遠端伺服器上的專案沒有變化,則debug的時候會發現行號不對,或debug出來的值有偏差等。 1.開啟Eclipse,點選左上角

Eclipse 進行Vue開發

參考文件http://www.cnblogs.com/windy-love/p/9522312.html eclipse安裝codeminx 外掛 之後eclipse提示要安裝eslint,在工程目錄下D:\workspace\lajifenlei\garcol_wx\ 下執行npm i

Eclipse 如何遠端DEBUG (Ubuntu+tomcat8)

我們很多專案都需要放到伺服器上執行,但是伺服器上又無法在執行時進行除錯,因此遠端DEBUG就出來了,它是JVM就提供瞭如下的的錯誤處理方式: 1.JVMTI定義了虛擬機器應該提供的除錯服務,包括除錯資訊(Information譬如棧資訊)、除錯行為(Action譬如客戶端設定一個

RMI進行遠端方法呼叫(2006-10-26 09:48:08)

用RMI進行遠端方法呼叫 (2006-10-26 09:48:08)        遠端方法呼叫(RMI)機制可以把面向物件的思想進一步擴充套件,因為你可以呼叫的物件不僅可以在本機上,也可以在別的主

IDEA進行遠端debug的除錯

由於我們一些專案,無法使我們像tomcat可以直接在Eclipse中進行除錯,類似於jetty,或是zeppelin的程式碼除錯, 這個時候我們就需要遠端debug,這次我們採用的是IDEA的講解,其實這個操作流程和Eclipse,下次如果有機會 可以進行介紹Eclipse

Eclipse進行遠端除錯linux 環境的tomcat配置 更新maven web專案

在網上找了找關於遠端除錯的配置,記錄在這裡以備後續查詢! 平常我們都是用windows開發,但是有時候需要將tomcat部署到linux下去執行,比如執行shell指令碼。這個時候我們就需要在linux環境下進行除錯。我們可以利用myeclipse的遠端除錯功能,來進行操

Idea進行遠端Debug

    問題定位,資料追蹤?離不開遠端Debug,下面讓我們來看看那怎麼實現遠端Debug    第一步、在Idea中建立Remote    點選Edit Configurations--建立Remote   第二步、在伺服器中啟動專案 原先啟動命令:$ java -jar

intellij ideatomcat進行遠端除錯

1.  首先在IDEA中check out出來你要除錯的工程的程式碼,然後在IDEA開啟這個工程。 2.  因為我們用的是Tomcat,所以在IDEA中點選右上角那個“Edit Configurations”按鈕,然後在彈出的介面中點選左上角的加號,選擇tomcat ser

首次Eclipse進行android開發,能夠提高效率的配置

<=:abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789 二、解決Eclipse中android新增過載函式時引數為arg0,arg1的問題 解壓sources-19_r02.zip後,會得到包含了對應(android-19,

eclipse呼叫遠端webservice生成客戶端程式碼

以前在呼叫webservice的時候都是自己老老實實用axis寫程式碼,今天在網上看到在myeclipse裡面可以根據wsdl介面地址自動生成介面呼叫客戶端程式碼,於是我就想到在eclipse裡面是不是也可以根據wsdl介面地址自動生成介面客戶端呼叫程式碼呢?答案是肯定的,

最新ffmpeg編譯和eclipse進行原始碼除錯(linux)

轉自:http://blog.csdn.net/huangkangying/article/details/6434683   最近由於專案需要,必須修改ffmpeg的原始碼進行修改才能滿足專案的需求,但以前我從來沒有自己去編譯和使用ffmpeg的原始碼,一直都是用別人

Eclipse 進行遠端除錯Windows Tomcat配置

以前看到別人使用除錯遠端程式碼感覺好牛逼的樣子,前一段時間想學來著,但是由於實際工作中暫時沒有用上最終沒學會,好悲傷!今天終於需要用了,Google+Baidu了一堆,終於將Windows Tomcat遠端除錯給學會了,不吹牛逼了,進入正題。 1. 配置windows to

Eclipse進行視覺化Java介面設計

下載後的VE是一個zip檔案,請將其壓縮包中plugins和features目錄下的內容解壓到eclipse安裝目錄的相應目錄中即可。如果你的eclipse是執行著的,請關閉並重新啟動eclipse。開始一個設計任務現在,所有程式安裝完成,筆者將用一個例子,來講解Visual Editor的使用。在這個例子中

Eclipse遠端除錯(Remote debug)Tomcat

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

Git在遠端服務上拉下來的maven專案,在eclipse中右鍵沒有maven按鈕

今天從遠端服務上拉下來的maven專案,pom檔案都有,就是右鍵沒有maven按鈕 刪了,重新拉還是不行。 最終百度出來了,點選檢視原文 方法如下: 1:右鍵專案; 2:點選“Configure”; 3:點選“Convert to maven project” 即可。

【原】IDEA遠端Debug Tomcat服務

【環境引數】 Web容器:Tomcat 8.0 IDE:IDEA 2018.1.5   【具體步驟】 1、配置Tomcat容器引數 編輯$CATALINA_HOME/bin/catalina.sh指令碼,加入如下引數: -agentlib:jdwp=transport=dt_s

[Reomting Debug] 巧VS 的remote debug 功能遠端除錯程式

前言:  有時候我們Dev(開發人員)需要debug tester(測試人員)或者customer(客戶)的環境,可tester的機器上沒有Code,是不是有點著急? 而且是多版本應用且tester 發現了問題需要我們去檢視的時候, 這個時候怎樣能夠第一時間幫助teste

eclipse生成maven專案,在本地生成.git檔案,把倉庫檔案推送到gitlub遠端

1. 滑鼠右擊專案名---Team---share project 2.出現share project---Git---next 3.勾上use or create repository in parent folder of project---單擊create reposit