JDB - เบรกพอยต์
บทนี้จะอธิบายถึงแนวคิดของจุดพักและวิธีตั้งค่าจุดพักในโปรแกรม เบรกพอยต์จะแนะนำการหยุดอย่างชัดเจนหรือหยุดชั่วคราวในการดำเนินการของโปรแกรมที่บรรทัดรหัสเฉพาะขณะทำการดีบัก มีประโยชน์ในการรับความรู้เกี่ยวกับตัวแปรในโปรแกรมในการดำเนินการ
ไวยากรณ์
คำสั่งต่อไปนี้ตั้งค่าเบรกพอยต์ที่หมายเลขบรรทัดเฉพาะ:
> stop at <class name>:<Line no>
คำสั่งต่อไปนี้ตั้งค่าเบรกพอยต์สำหรับวิธีการเฉพาะหรือบนตัวแปรเฉพาะ:
> stop in <class name>:< Method name | Variable name>
ตัวอย่าง
ตัวอย่างต่อไปนี้แสดงวิธีตั้งค่าเบรกพอยต์ในคลาส
public class Add
{
public int addition( int x, int y)
{
int z = x + y;
return z;
}
public static void main( String ar[ ] )
{
int a = 5, b = 6;
Add ob = new Add();
int c = ob.addition(a,b);
System.out.println("Add: " + c);
}
}
บันทึกไฟล์ด้านบนเป็น Add.java คอมไพล์ไฟล์นี้โดยใช้คำสั่งต่อไปนี้:
\>javac Add.java
การแก้จุดบกพร่อง
ให้เราเป็นตัวอย่างสำหรับการดีบัก ที่นี่เราเริ่มกระบวนการดีบักโดยตั้งค่าเบรกพอยต์ที่ main () ด้านล่างนี้เป็นขั้นตอนที่ต้องปฏิบัติตามในกระบวนการดีบัก:
ขั้นตอนที่ 1: เริ่มเซสชัน JDB
คำสั่งต่อไปนี้เริ่มต้นเซสชัน JDB บนคลาสเพิ่มสำหรับการดีบัก:
\> jdb Add
ขั้นตอนที่ 2: ตั้งค่าเบรกพอยต์
คำสั่งต่อไปนี้ตั้งค่าเบรกพอยต์บนเมธอด main () ของ Add class
> stop in Add.main
หากตั้งเบรกพอยต์สำเร็จคุณจะเห็นผลลัพธ์ต่อไปนี้:
Deferring breakpoint Add.main.
It will set after the class is loaded.
>
ขั้นตอนที่ 3: เริ่มการดีบัก
คำสั่งต่อไปนี้เริ่มดำเนินการของคลาส Add:
> run Add
หากคุณรันคำสั่งนี้คุณจะเห็นผลลัพธ์ต่อไปนี้ ในผลลัพธ์นี้คุณจะพบว่าการดำเนินการหยุดที่ตำแหน่งเบรกพอยต์ซึ่งอยู่ที่ฟังก์ชัน main ()
การดำเนินการหยุดที่บรรทัดแรกของเมธอดหลักนั่นคือที่ "int a = 5, b = 6;" หรือหมายเลขบรรทัด: 11 ในรหัส คุณสามารถสังเกตข้อมูลนี้ได้ในผลลัพธ์
ขั้นตอนที่ 4: ดำเนินการต่อ
คำสั่งต่อไปนี้ดำเนินการโปรแกรมต่อไป:
cont
มันให้ส่วนการดำเนินการที่เหลือและผลลัพธ์ดังนี้:
> Add:11
The application exited
\>