当前位置:首页 > 软件下载 > 编程开发

FindBugs(静态分析Eclipse插件)v3.0.1官方版

点此纠错

  • 平台:WinAll
  • 大小:8.8M
  • 语言:英文
  • 类别:编程开发
  • 授权:免费软件
  • 更新:2021-08-30
4.0
0% 0%

情介绍

FindBugs是一个静态分析Eclipse插件工具。 FindBugs可以帮助用户发现Java软件中可能存在的错误。直接查找可能的错误,例如空引用和冗余变量。

FindBugs是一个静态分析eclipse插件工具。 FindBugs可以帮助用户发现Java软件中可能存在的错误。直接查找可能的错误,例如空引用和冗余变量。

FindBugs(静态分析Eclipse插件)

特征

1. 查找哈希等于不匹配的情况

发现几个与equals()和hashCode()的实现相关的问题。这两个方法非常重要,因为几乎所有基于集合的类——List、Map、Set 等都会调用它们。

2.检测:忽略方法返回值

该检测器会查找代码中方法返回值被忽略但不应被忽略的位置。一个常见的例子是调用String 方法时。

这个错误很常见。在第2 行,程序员认为他已将字符串中的所有b 替换为p。确实如此,但他忘记了字符串是不可变的。所有此类方法都会返回一个新字符串,并且不会更改消息的收件人。

3. 检测:空指针到空解引用和冗余比较

该检测器查找两种类型的问题。它查找将或可能导致空指针异常的代码路径。它还查找与null 的冗余比较。例如,如果两个比较值都为空,则它们是多余的,并且可能指示代码错误。当FindBugs 可以确定一个值为null 而另一个值不为null 时,FindBugs 会检测到类似的错误。

4.检测:初始化前读取字段

该检测器查找在构造函数中初始化之前读取的字段。此错误通常是由于使用字段名而不是构造函数参数引起的,例如在构造函数中读取未初始化的字段。

5. 命名检查

标准Java命令规范的测试:变量名不宜太短;方法名不宜太长;类名应以小写字母开头;方法和字段名称应以小写字母等开头。

6. 未使用代码检查

查找从未使用过的私有字段和局部变量、无法执行的语句、从未调用过的私有方法等等。

7. 嵌套检查

例如:switch语句应该有default块,应该避免深度嵌套的if块,不应该重新分配参数,不应该比较double值是否相等。

8. 进口声明检查

检查import 语句是否有问题,例如同一个类被导入两次或导入到java.lang 类中。

9.JUnit测试检查

查找测试用例和测试方法的具体问题,例如方法名称的正确拼写以及suite() 方法是否是静态和公共的。

10. 字符串检查

了解使用字符串时遇到的常见问题,例如重复的字符串标量、调用String 构造函数以及对String 变量调用toString() 方法。

11. 支架检查

检查for、if、while 和else 语句中是否使用括号。

12. 代码大小检查

测试方法太长,类包含太多方法,以及重构时的类似问题。

13. 终止功能检查

因为finalize()方法在Java语言中并不是那么常见,虽然它们的使用规则很详细,但是人们对它们还是比较陌生。这种类型的检查会查找Finalize() 方法的各种问题,例如空终结器、从其他方法调用Finalize() 方法、显式调用Finalize() 等。

14. 克隆检查

clone() 方法的新规则。所有重写clone()方法的类都必须实现Cloneable。 clone()方法应该调用super.clone(),并且clone()方法应该声明抛出CloneNotSupportedException异常,即使实际上没有抛出异常。

15. 联轴器检查

寻找类之间过度耦合的迹象,例如导入过多;当超类型或接口就足够时使用子类类型;类中的字段、变量和返回类型过多。

16.异常检查

检查异常:不应声明此方法抛出java.lang.Exception,异常不应用于流程控制,不应捕获Throwable 等。

17. 日志检查

查找java.util.logging.Logger 的不当使用,包括非最终、非静态记录器以及类中的多个记录器。

18. 开闭检查

检查文件或通讯以查看是否忘记关闭。

19. 其他检查

其他缺陷列表请参见:缺陷列表。

20.建立你自己的规则集

可以建立自己的规则集。

指示

下载后,将解压后的文件复制到$ECLIPSE_HOME/plugins/目录下,重启eclipse即可完成安装。

1.插件设置:

安装后,可以通过“项目属性FindBugs”选项卡进行设置。设置方法可以根据您的需要进行调整。

另外,在问题(Proplems)列表窗口(Windows View Problems)的Filter设置中,勾选FindBugs的所有相关选项。

2.插件的执行:

选择项目,右键Find Bugs Find Bugs并执行