Findbugs contrib:方法从 catch 块中抛出替代异常,没有历史记录

2024-04-21

fb-contrib 抱怨

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

在我的 try/catch 块之一中。

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


原始异常被捕获,您的代码抛出另一个异常,而不将原始异常包含在java.lang.Throwable cause

发现了一些东西here https://svn.jenkins-ci.org/tags/violations-0.7.1/src/main/resources/hudson/plugins/violations/types/findbugs/fb-contrib-3.4.2.messages.xml:

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

FindBugs 贡献的精彩捕获! 所以传递原因,记录它,......用你捕获的东西做一些事情。 希望这对某人有帮助。

Example:

try {
  ...
} catch (final SomeException theOriginalCause) {
  // throw new SomeOtherException(); // Bad !
  throw new SomeOtherException(theOriginalCause); // Good.
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Findbugs contrib:方法从 catch 块中抛出替代异常,没有历史记录 的相关文章

随机推荐