2009-07-08 56 views
9

請參閱this question關於如何打破任何異常。打破你自己的例外IntelliJ

我在啓動時遇到了100萬個異常。我已經試過忽略ClassNotFoundException,但它並不好,但IDE似乎仍然在這些(和其他)異常中斷裂。

那麼..這是什麼體面的配置,只捕獲從用戶代碼捕獲的實際異常? (忽略jUnit中的任何異常,如果適用的話)

+0

不明白。爲什麼不能將用戶異常類本身添加爲斷點? – amit 2009-07-09 07:28:58

+0

我添加了它,但它並沒有工作 - IntelliJ仍然沒有打破這個異常(至少在某些情況下)。 – ripper234 2009-07-09 11:04:55

回答

8

正如其他海報所提到的,類過濾器是要做到這一點。

具體來說,您可以將您認爲是「您的代碼」的軟件包名稱添加爲類過濾器。語法是有點不透明的,但使用簡單的通配符過濾器,如:。

com.whatever.package *

聽起來就像是它會爲你工作。 IntelliJ將打破這裏任何包中的任何類的任何異常。如果你的代碼位於多個地方,你當然可以定義多個通配符過濾器。

0

我檢查了IJ,我看到了很多選項。也許類過濾器是你的選擇?

1

我剛纔在搞這個。兩種方法:

1)將其配置爲顯式捕獲您的異常,而不是「任何異常」 - 如果它是類似於RuntimeException的,這可能不夠過濾器。 2)使用類結果過濾器 - 這出於任何原因不適合我。永遠。

0

請參閱these instructions to create a specific exception breakpoint。總之:

  1. 在主菜單上,選擇運行|查看斷點,或按⇧⌘F8。
  2. 在打開的斷點對話框中,單擊添加。
  3. 從下拉列表中選擇異常斷點。 enter image description here
  4. 在選擇異常類對話框,從庫中指定所需的異常類,或從項目,然後單擊確定。
0

我添加了這個答案,因爲我很難找到serg10接受的答案中提到的類過濾器子對話框。要查看子對話框執行以下操作:使用下面的鍵盤快捷鍵

1)打開查看斷點對話框(按Ctrl + Shift + F8),假設你沒有改變該快捷方式的結合。

2)檢查在題爲」‘Java異常斷點’左欄中的條目。這應該自動檢查標題爲‘任何異常’屬於該頂級元素的子項。

3)直接點擊在標題爲「任何例外」的子項目上。您現在應該看到右側的「類過濾器」下拉框。

4)選中「類過濾器」旁邊的複選框。該查看斷點對話框現在應該是這樣的:

enter image description here

5)點擊旁邊級過濾器下拉框中的省略號。您現在應該看到類別篩選器對話框。

enter image description here