我們有第三方Java代碼拋出無頭異常。我們可以在我們的代碼中看到它嗎?問題在於我們如何知道哪些第三方代碼(以jar文件形式出現)會拋出異常。我們沒有第三方API文檔。抓住別人的例外
Q
抓住別人的例外
0
A
回答
1
通過在try
/catch
區塊中包裝這些第三方調用,您絕對可以在代碼中捕獲到它。
據瞭解,沒有文檔的異常類型,這是更加困難。通過在開發過程中打印出異常類型進行試錯。或開發非常緊密的try
/catch
塊開放Exception
。
0
嗯,
在理想的情況下,您應該停止使用該第三方API。既然你已經在使用它,如果你編寫包裝並使用它,會更好。
- 構造的中間層
- 定義自定義異常清晰
- 試析第三方API主要方法,看看你感到異常可能會出現
- 薄弱環節及時把他們儘可能
0
我不清楚你是什麼意思的無頭的例外。
面臨的挑戰是,如果您不知道哪些方法可能存在異常,則每次調用該第三方API時都必須捕獲這些異常。您可能希望在該API上擁有一些抽象層,並僅將其委託給每個呼叫並將其打包,並用try{call()} catch(Exception e){...}
0
您是否在談論java.awt.HeadlessException
?根據文檔:
代碼時,被依賴於鍵盤,顯示器,鼠標或調用中不支持鍵盤,顯示器,或鼠標的環境拋出。
當然,你可以嘗試去捕捉它,但它會如何幫助你?該第三方庫可能無法工作,例如沒有鍵盤,顯示器或鼠標的服務器。
相關問題
- 1. 例外不被抓住
- 2. 例外不被抓住
- 3. 抓住所有WordPress的例外?
- 4. 抓住程序的每一個例外?
- 5. 爲什麼我的例外沒有抓住?
- 6. VS2010和預防某些例外是由IDE抓住
- 7. 聲明式授權 - 抓住「授權::未授權」例外
- 8. 抓廚師例外
- 9. 嘗試抓住裏面還是外面?
- 10. php preg_match抓住
- 11. 如何抓住你抓住的元素內部的元素?
- 12. SQLiteException不被抓住
- 13. 無法抓住protractor.promise.defer.reject
- 14. 抓住lat和lng
- 15. 抓住固定的標題
- 16. .htaccess抓住我的css/js
- 17. 爲什麼試着抓住不抓住Sql語法錯誤
- 18. 抓住所有網站抓住所有重新渲染css
- 19. 正確的方式抓創建例外
- 20. 如何抓住作者/個人畫廊的圖像
- 21. 輸入如果再次例外逮住
- 22. 嘗試抓住 - 不捕捉
- 23. 抓住從視頻Android上
- 24. 抓住php文件寫入
- 25. 如何抓住robots.txt禁止?
- 26. 抓住並繼續? C#
- 27. 嘗試在iPhone中抓住?
- 28. 抓住對象引用
- 29. 從javascript中抓住window.open
- 30. 抓住鼠標移動
你的意思是說,它是從字面上拋出一個[HeadlessException](http://java.sun.com/j2se/1.5.0/docs/api/java/awt/HeadlessException.html)?我問,因爲這是一個[RuntimeException](http://java.sun.com/j2se/1.5.0/docs/api/java/lang/RuntimeException.html),不需要聲明。 – 2010-07-01 18:41:54