Findbugs contrib:Method从没有历史记录的catch块抛出替代异常

时间:2016-01-20 14:59:35

标签: java findbugs

fb-contrib抱怨

  

方法从没有历史记录的catch块抛出替代异常

在我的一个try / catch块中。

如何解决这个问题?是否有关于如何解决这个问题的详细解释?

1 个答案:

答案 0 :(得分:3)

发现原始异常,您的代码会抛出另一个异常,而不会在java.lang.Throwable cause

中包含原始异常

发现了一些here

  

此方法捕获异常,并抛出一个不同的异常,而不包含                   原始例外。这样做会隐藏异常的原始来源,从而进行调试和修复                   这些问题很难。最好使用这个新异常的构造函数                   原始异常,以便可以将此详细信息传递给用户。

FindBugs contrib很好听! 因此,通过原因,记录它,...用你抓到的东西做点什么。 希望这有助于某人。

示例:

try {
  ...
} catch (final SomeException theOriginalCause) {
  // throw new SomeOtherException(); // Bad !
  throw new SomeOtherException(theOriginalCause); // Good.
}