2013-10-03 21 views
1

在調試過程中,如果按F6您將從一行移動到下一行。這通常是一件好事。 當下一步是在反編譯的類中(我正在使用JD-Eclipse來反編譯類)時,問題就到了。那個類的代碼有時如下防止日食在調試時轉移到代碼行

(686) /*  */  } 
(687) /* 967 */  boolean recordDeleted = false; 
(688) /* 968 */  for (String guid : guidLst) 
(689) /*  */  { 

調試器知道你上線687和綠色光標放在那裏,但不是類的實際線;在這種情況下,它將是967.然後,我必須一直滾動到真正的線路,有時需要花費很多時間。

有沒有一種方法來防止日食移動我的代碼?

+0

AFAIK調試反編譯的類可以變得很棘手。我認爲你的源代碼與字節碼不同步。 – GGrec

+0

由於它們不同步,我怎麼能告訴eclipse不要在調試時通過代碼行?無論如何,我如何在沒有源代碼的情況下同步它們? – iberbeu

+0

請參閱:http://stackoverflow.com/a/21730971/3082272 – bobbel

回答

2

你可以反編譯的選項中添加行號的類文件的評論和 你將能夠與JD-Eclipse的重新調整了代碼,請參閱:http://mchr3k.github.io/jdeclipse-realign/

您將無法行號反編譯如果類文件與標誌-g:none編譯:

-g:無
待辦事項不會產生任何調試信息。

另見:Eclipse skipping lines while debugging

+1

這個工程!作爲一個評論:在這個項目的sourceforge網站有人說,它不適用於java7,我有java7,它工作正常。 – iberbeu