2017-04-25 63 views
0

我正在開發一個eclipse插件來進行自定義調試操作。 我的用例是,我將打開調試器並設置斷點,但是當我訪問我的UI時,調試器不應該停在我的斷點,而應該將該斷點處變量的值存儲到文件以及繼續恢復。 (我將運行一個硒測試用例,並且對於每個請求我需要將每個斷點中的值存儲在文件中進行測試)。自定義調試器作爲eclipse插件

據我瞭解,我添加了一個breakpointListener,它擴展了IJavaBreakPointListener並重寫了breakpointHit()方法

@Override 
    public int breakpointHit(IJavaThread thread, IJavaBreakpoint breakpoint) { 
     // TODO Auto-generated method stub 
     System.out.println("Breakpoint has been hit!!!!!!!!!!!!!!"); 

     /** 
      I need the value of the variable at this breakpoint 
     **/ 


     return 0; 
    } 

,我必須添加此監聽器JDIDebugModel ...

使用

JDIDebugModel.addJavaBreakpointListener(listener); 

但我不知道在哪個類我應該把addJavaBreakpointListener調用..這個傾聽者從來沒有被稱爲..

請幫助我堅持這一點。或者建議我的使用案例的替代解決方案

回答

0

您不必編寫Eclipse插件來實現這一點。您可以使用Breakpoint Properties。在右鍵單擊斷點並輸入像這樣的內容時,可以在上下文菜單中找到它。注意ConditionalSuspend when true

enter image description here

這將執行在斷點的每一擊和行追加到file.txt。你可以訪問代碼片段中的所有變量,這樣你就可以記錄你想要的東西。

+0

工作正常。謝謝 –