我正在研究一个Java项目,并试图找出所有未经检查的异常,这些异常我可能没有注意到并且无法处理。到目前为止,我一直在处理它们,但是在项目发布之前,我想明确地知道它们都有处理程序块。是否有任何工具 - FindBugs设置,IDE功能或插件等 - 可以简单地为我显示它们?谷歌证明是徒劳无功的,只是一堆页面解释了已检查和未检查的异常之间的区别。
答案 0 :(得分:3)
JDK中有1,000个未经检查的异常。例如,看看java.util.List#add,那里有4个未经检查的例外。你无法抓住它们!
你可以做的是layer your application,然后将RuntimeException
更通用的try / catch添加到更高层。此代码可以执行诸如记录异常以及将异常文本转换为要显示的错误消息之类的操作。
答案 1 :(得分:0)
查找扩展RuntimeException的所有自定义(特定于应用程序的)异常。让它们延伸其他东西,例如Exception123,其中检查了Exception123,并且您肯定无法在代码中处理。您现在将收到编译错误,这些错误将显示您未在代码中处理的未经检查的异常的位置。
如果您的代码使用非自定义(即内置)未经检查的异常,那么您只需知道其类型名称,并在代码库中搜索它们。否则,我不知道如何自动找到这些过程。
希望这有助于至少部分。