java代碼調試過程 代碼的調試

如何用MyEclipse 調試Java程序代碼

在Eclipse中使用調試程序最基本的操作是:

在加查等地區(qū),都構建了全面的區(qū)域性戰(zhàn)略布局,加強發(fā)展的系統(tǒng)性、市場前瞻性、產品創(chuàng)新能力,以專注、極致的服務理念,為客戶提供網(wǎng)站建設、網(wǎng)站設計 網(wǎng)站設計制作按需定制網(wǎng)站,公司網(wǎng)站建設,企業(yè)網(wǎng)站建設,成都品牌網(wǎng)站建設,營銷型網(wǎng)站建設,外貿網(wǎng)站制作,加查網(wǎng)站建設費用合理。

1.首先在一個java文件中設斷點,然后debug as--open debug Dialog,然后在對話框中選類后-- Run

當程序走到斷點處就會轉到debug視圖下。

2.F5鍵與F6鍵均為單步調試,F(xiàn)5是step into,也就是進入本行代碼中執(zhí)行,F(xiàn)6是step over,

也就是執(zhí)行本行代碼,跳到下一行,

3.F7是跳出函數(shù)

4.F8是執(zhí)行到最后。

1.Step Into (also F5) 跳入

2.Step Over (also F6) 跳過

3.Step Return (also F7) 執(zhí)行完當前method,然后return跳出此method

4.step Filter 逐步過濾 一直執(zhí)行直到遇到未經(jīng)過濾的位置或斷點(設置Filter:window-preferences-java-Debug-step Filtering)

5.resume 重新開始執(zhí)行debug,一直運行直到遇到breakpoint

6.hit count 設置執(zhí)行次數(shù) 適合程序中的for循環(huán)(設置 breakpoint view-右鍵hit count)

7.inspect 檢查 運算。執(zhí)行一個表達式顯示執(zhí)行值

8.watch 實時地監(jiān)視變量的變化

9.我們常說的斷點(breakpoints)是指line breakpoints,除了line breakpoints,還有其他的斷點類型:field(watchpoint)breakpoint,method breakpoint,exception breakpoint.

10.field breakpoint 也叫watchpoint(監(jiān)視點) 當成員變量被讀取或修改時暫掛

11.添加method breakpoint 進入/離開此方法時暫掛(Run-method breakpoint)

12.添加Exception breakpoint 捕抓到Execption時暫掛(待續(xù)...)

斷點屬性:

1.hit count 執(zhí)行多少次數(shù)后暫掛 用于循環(huán)

2.enable condition 遇到符合你輸入條件(為ture\改變時)就暫掛

3.suspend thread 多線程時暫掛此線程

4.suspend VM 暫掛虛擬機

13.variables 視圖里的變量可以改變變量值,在variables 視圖選擇變量點擊右鍵--change value.一次來進行快速調試。

14.debug 過程中修改了某些code后--〉savebuild--resume--重新暫掛于斷點?JSP的調試:1.將tomcat以debug的模式啟動。(java web servers)

2.選擇要調試的jsp,open with jsp editor

3.選擇jsp文件,debug。出現(xiàn)ajax插件,直接點就行了

如何在Eclipse中Debug調試Java代碼

步驟

首先打開eclipse,打開java源文件 如圖:

在需要測試的代碼行左側行號列上雙擊,生成斷點 ,再次雙擊可以取消斷點 如圖:

然后右鍵,選擇Debug As-Java Application,(注意,不是選擇Run As)

開始調試java程序 如圖

有可能會彈出提示框(表示是否進入調試視圖)點擊確定就可以了

然后會進行調試視圖,如圖:

左側上部是整個正常線程執(zhí)行情況,右側上部是剛才設置斷點的行號列表.

在左側上部有幾個按鈕需要注意如圖:

這些按鈕就是我們調試時的控制按鈕 分別表示:

step into(快捷鍵F5)進入當前行的方法內部,一步一步執(zhí)行

step return (快捷鍵F7)返回上一步執(zhí)行的方法(相對應F5)

step over(快捷鍵F6)執(zhí)行當前行,但不進入執(zhí)行細節(jié)

resume (快捷鍵F8)恢復執(zhí)行,表示接著執(zhí)行代碼,直接跳到下一個斷點

terminate 停止調試

常用調試方法:按F8跳到下一個斷點執(zhí)行 如果需要查詢執(zhí)行細節(jié)F5F6F7等

取消斷點的話:在右側上部的斷點列表區(qū)取消選擇或刪除當前斷點即可

java程序調試的5種方法

1.debug。斷點調試。

2.輸出消息。system.out.println();來調試。

3.動態(tài)代理(Dynamic

Proxy)。動態(tài)代理是一個特定的Java特性,它允許開發(fā)者引入proxy類,加進某一給定類之前,并通過某一給定接口截獲所有調用。你可以在很短時間內用一個普通代理設置一個虛擬事件處理器,來查看事件發(fā)生順序。當需要理解事件處理器時這是最簡單和快捷的方法。

4.運行時剖析器(Run-time

Profiler)。剖析器是通過特定的JVM

hooks在系統(tǒng)中跟蹤所有調用的強大工具。但是用它來跟蹤執(zhí)行過程是大才小用。

5.Aspects。面向方面編程。它是截獲你的代碼執(zhí)行既快速又容易的方法。你可以圍繞方法、構造器、屬性訪問等等有選擇地設置hook,而不需要修改原始代碼。在這些hook中,你可以打印調試消息。

1.2常用的。3.4.5網(wǎng)上找的。

如何調試java進程

Java程序員必須知道的10個調試技巧

調試可以幫助識解決應用程序缺陷,在本文中,作者將使用大家常用的的開發(fā)工具Eclipse來調試Java應用程序。但這里介紹的調試方法基本都是通用的,也適用于NetBeans IDE,我們會把重點放在運行時上面。

在本文中使用的是Eclipse Juno版(Eclipse 4.2),在開始前給大家提3點建議!

不要使用System.out.println作為調試工具

把所有涉及到的組件日志級別激活并使用

使用日志分析器來讀取日志

1.條件斷點

如果你不知道如何添加斷點,只需點擊左邊面板(行號前面)斷點即被創(chuàng)建。在調試界面中,"斷點"視圖會把所有被創(chuàng)建的斷點列出來。我們可以給它加一個布爾條件,也就是說,該斷點會被激活并且如果布爾條件為真,就會執(zhí)行該斷點,否則將會跳過往下執(zhí)行。

2.異常斷點

在斷點視圖中,有一個J!標記按鈕!我們可以使用該按鈕來添加一個Java異常斷點。例如,我們想讓程序在遇到空指針異常(NullPointerException)時,仍然能繼續(xù)調試,那么我們可以使用該按鈕來添加一個異常斷點!

3.監(jiān)視點

這是一個非常好的功能,當選定的屬性訪問或修改程序時,程序會停止執(zhí)行并允許進行調試。在Outline視圖中選擇一個類變量并從上下文菜單中選擇切換監(jiān)視點,屬性監(jiān)視點將會被創(chuàng)建,在斷點(Breakpoints)視圖中會把所有監(jiān)視點用列表的形式顯示出來。

4.評估/檢查

按Ctrl+Shift+D或者Ctrl+Shift+I來顯示選定變量或者表達式的值。我們也可以給一個變量或表達式添加永久觀察點,當程序在調試時,這些觀察點就會在表達式視圖(Expression view)中顯示出來。

5.修改變量值

在調試過程中,我們可以修改變量值。先選好一個變量然后進入變量視圖(Variables view),根據(jù)變量類型在其對應的Value列里輸入值即可。

6.在Main函數(shù)里面停止執(zhí)行

在運行/調試設置中,編輯配置對話框中有"Main"這個選項卡,我們可以勾選"Stop in main"這個復選框。如果選中,那么在調試一個基于main方法的Java程序時,程序會在main方法第一行位置便停止執(zhí)行。

7.環(huán)境變量

并不是在系統(tǒng)屬性中添加環(huán)境變量,我們可以在編輯配置對話框中很方便地進行添加。

8.Drop to Frame

這也是我最喜歡的一個功能。調試期間,可以重新跳到調用堆棧框架的開始處執(zhí)行,并且變量值也會回到最初。根據(jù)回檔調整堆棧的深度,這個功能的主要用途是所有變量狀態(tài)可以快速回到方法開始執(zhí)行時候的樣子,然后你可以重新進行一遍一遍執(zhí)行,這樣就可以在你關注的地方進行多次調試,但是在執(zhí)行過程中也會產生一些副作用,比如插入到數(shù)據(jù)庫里面的數(shù)據(jù)是無法刪除的!

9.分布過濾

當我們進入(F5)方法的時候,我們還可以訪問其外部庫(比如java.*),我們可能不需要這個庫,就可以在Perference選項卡頁面添加一個過濾器來排除這個包。

10.進入、跳出和返回

我把這個放在最后一點,在調試過程中,這些是必須要了解(最好掌握)的東西:

F5——進入:移動到下一個步驟,如果當前行有一個方法調用,該控件將會跳轉到被調用方法的第一行執(zhí)行。

F6——跳出:移動到下一行。如果在當前行有方法調用,那么會直接移動到下一行執(zhí)行。不會進入被調用方法體里面。

F7——返回:從當前方法中跳出,繼續(xù)往下執(zhí)行。

F8——移動到下一個斷點處執(zhí)行。

網(wǎng)頁標題:java代碼調試過程 代碼的調試
標題URL:http://muchs.cn/article6/hjdoog.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站內鏈、網(wǎng)站改版網(wǎng)站設計、網(wǎng)站收錄、品牌網(wǎng)站設計

廣告

聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站網(wǎng)頁設計