FindBugs is an open-source static code analyser created by Bill Pugh and David Hovemeyer which detects possible bugs in Java programs.[2][3] Potential errors are classified in four ranks: (i) scariest, (ii) scary, (iii) troubling and (iv) of concern. This is a hint to the developer about their possible impact or severity.[4] FindBugs operates on Java bytecode, rather than source code. The software is distributed as a stand-alone GUI application. There are also plug-ins available for Eclipse,[5] NetBeans,[6] IntelliJ IDEA,[7][8][9] Gradle, Hudson,[10] Maven,[11] Bamboo[12] and Jenkins.[13]

FindBugs
Developer(s)Bill Pugh and David Hovemeyer
Initial release10 June 2006; 18 years ago (2006-06-10)[1]
Stable release
3.0.1 / March 6, 2015; 9 years ago (2015-03-06)
Repository
Written inJava
Operating systemCross-platform
TypeStatic code analysis
LicenseGNU Lesser General Public License
Websitefindbugs.sourceforge.net Edit this at Wikidata

Additional rule sets can be plugged in FindBugs to increase the set of checks performed.[14]

See also

edit
edit

SpotBugs

edit
SpotBugs
Developer(s)SpotBugs team
Initial release23 October 2017; 7 years ago (2017-10-23)[15]
Stable release
4.6.0 / March 7, 2022; 2 years ago (2022-03-07)
RepositoryGitHub
Written inJava
Operating systemCross-platform
PredecessorFindBugs
LicenseGNU Lesser General Public License
WebsiteHomepage, Manual

SpotBugs is the spiritual successor of FindBugs, carrying on from the point where it left off with support of its community.

In 2016, the project lead of FindBugs was inactive but there are many issues in its community so Andrey Loskutov gave an announcement [16] to its community, and some volunteers tried creating a project with support for modern Java platform and better maintainability. On September 21, 2017, Andrey Loskutov again gave an announcement [17] about the status of new community, then released SpotBugs 3.1.0 [18] with support for Java 11 the new LTS, especially Java Platform Module System and invokedynamic instruction.

There are also plug-ins available for Eclipse,[19] IntelliJ IDEA,[20] Gradle,[21] Maven[22] and SonarQube.[23] SpotBugs also supports all of existing FindBugs plugins such as sb-contrib,[24] find-security-bugs,[25] with several minor changes.[26]

Applications

edit

SpotBugs have numerous areas of applications:

  1. Testing during a Continuous Integration or Delivery Cycle.
  2. Locating faults in an application.
  3. During a code review.
edit

References

edit
  1. ^ "FindBugs 1.0.0 release date".
  2. ^ "FindBugs, Part 1: Improve the quality of your code". IBM.
  3. ^ "FindBugs, Part 2: Writing custom detectors". IBM.
  4. ^ Markus, Sprunck. "Findbugs – Static Code Analysis of Java". Retrieved April 24, 2013.
  5. ^ "FindBugs Downloads".
  6. ^ "Static Code Analysis in the NetBeans IDE Java Editor".
  7. ^ idea-findbugs plug-in
  8. ^ "Google Project Hosting".
  9. ^ "QAPlug – quality assurance plugin".
  10. ^ "FindBugs Plugin". Archived from the original on 2013-01-29. Retrieved 2010-03-22.
  11. ^ "FindBugs Maven Plugin – Introduction".
  12. ^ View FindBugs
  13. ^ "Findbugs".
  14. ^ "fb-contrib™: A FindBugs™ auxiliary detector plugin".
  15. ^ "SpotBugs 3.1.0 release date". GitHub. 17 November 2021.
  16. ^ Loskutov, Andrey (November 2, 2016). "[FB-Discuss] Project status". Retrieved 2021-06-24.
  17. ^ Loskutov, Andrey (September 21, 2017). "[FB-Discuss] Announcing SpotBugs as FindBugs successor". Retrieved 2021-06-24.
  18. ^ "Release SpotBugs 3.1.0 · spotbugs/spotbugs". GitHub. Retrieved 2021-06-24.
  19. ^ "SpotBugs Eclipse Plugin Update Site".
  20. ^ "SpotBugs-IDEA".
  21. ^ "SpotBugs Gradle Plugin".
  22. ^ "SpotBugs Maven Plugin".
  23. ^ "sonar-findbugs". GitHub. 15 November 2021.
  24. ^ "'spotbugs' branch in fb-contrib repo". GitHub.
  25. ^ "Find Security Bugs".
  26. ^ "Migration guide for Plugin Developers".