2009-11-03 80 views
16

我正在用Eclipse 3.4.2調試一些Java代碼。我禁用了所有的斷點,但調試器仍停在特定的行。這一點是在null pointer exception被觸發之前的幾行。奇怪的是,當我運行相同的代碼/運行配置,但沒有在調試器中時,空指針異常不會發生。Eclipse調試 - 停止沒有斷點

此外,如果我從方法的開始處通過導致null pointer exception的代碼,使用完全相同的輸入,則沒有問題。它只發生在我刪除所有斷點時,但Eclipse決定不管在那裏停止。

爲什麼會發生這種情況?

回答

16

Eclipse還支持異常中斷點(在拋出某個異常時停止程序)。您可以在調試器的「斷點」面板中看到它們。就你而言,例如,這可能是一個ClassCastException。

如果該面板爲空,那麼它可能是Java VM中的一個錯誤,或者您可能在調試器中打開了兩個進程。如果一切都失敗了,試着在Eclipse 3.5.1中調試它。

+0

非常感謝!這是我的情況 – 2017-09-29 10:51:29

4

我也遇到過這個問題,還沒有找到滿意的答案。嘗試進行工作區刷新,完全重建並重新啓動Eclipse。

其中至少有一條建議會有所幫助。

做不到這一點 - 重建或恢復您的工作空間(我始終保持一個備份)

+0

我刪除了我的工作區,它的工作原理,希望它不會復出 – 2014-01-28 20:20:39

+2

另請嘗試運行 - >刪除所有斷點根據http://stackoverflow.com/questions/7178096/eclipse-stops-at-non-存在 - 斷點 – KCD 2015-03-05 03:06:01

36

我有同樣的問題,終於找到了以下配置選項: 窗口 - >首選項 - >爪哇 - >調試 - >暫停執行未捕獲的異常 我未選中它,問題消失。 但是,瞭解未捕獲的異常可能是件好事。我只是禁用它,因爲問題出現在Spring框架中,而不是我的代碼中,因此我無法糾正任何錯誤... 希望它有幫助:)

+0

感謝您的答案 - 我有完全相同的問題,但你的答案已爲我工作。 – 2012-07-03 13:10:47