簡體   English   中英

編譯器抱怨多個異常處理

[英]Compiler complains with multiple Exception handling

嘗試使用時

catch( EntityExistsException | PersistenceException eeEx)

編譯器抱怨:

不能拋出 Object 類型的異常; 異常類型必須是 Throwable 的子類

我正在為項目使用 eclipse luna,編譯器設置為 java 8

我剛剛遇到了這個,這讓我發瘋了。
我通過將URISyntaxException添加到現有捕獲來創建多捕獲異常處理程序。
Eclipse 抱怨

不能拋出 Object 類型的異常; 異常類型必須是 Throwable 的子類

終於發現自己沒有添加對應的import語句,所以eclipse不知道新添加的異常的類型。
如果 eclipse 會抱怨,那就太好了

URISyntaxException 無法解析為類型

這就是當異常本身時所說的。
當它是多重捕獲的一部分時,您得到的錯誤是不直觀的。

聽起來像那些缺少的“擴展異常”之一。

我認為它與“多重異常處理”沒有任何關系,JDK8 肯定會編譯這樣的代碼。

這兩個實際上都擴展了異常/是 throwable 的子類嗎?

在 Eclipse 中,只需確保在 catch 子句中導入所有異常

catch(SomeException se | SomeException1 se1 | SomeException2 se2){
    doSomething();
}

缺少導入語句會顯示這樣的錯誤。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM