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
\>