BT

InfoQ Homepage News Current Status of Java Static Analysis Tools

Current Status of Java Static Analysis Tools

Bookmarks

Static analysis tools help developers locate potential problems in their code. Static analysis is an inspection of code without executing it, looking for problems as varied as misunderstood APIs to use of the wrong boolean operators. This post summarizes the six of the leading tools and discusses the current trends in static analysis tools.

Gregg Sporar gives an overview of FindBugs, Checkstyle, PMD, Intellij IDEA's Inspections, Eclipse Testing and Performance Tools Platform, and Netbeans Project Jackpot. He summarizes his findings in this table:

Name Free? Examines Scriptable? Automatically Apply Fixes? Java API? Other extensions
FindBugs Yes Byte code Yes No Yes No
Checkstyle Yes Source Yes No Yes No
PMD Yes Source Yes No Yes XPath
IntelliJ IDEA No Source Yes Yes Yes No
Eclipse TPTP Yes Source No? Yes Yes Templates
NetBeans Project Jackpot Yes Source Planned Yes Yes Rule language

He sees three trends coming in the world of static analysis tools. The first is that these tools are increasing being integrated into IDEs. Intellij IDEA has had these tools for awhile, but recently Eclipse and Netbeans have picked them up with Eclipse TPTP and Project Jackpot. The second is that the tools within the IDEs are gaining the ability to automatically fix the discovered problems. The last trend, is that the tools are becoming scriptable, in the sense that you can create your own definitions for bugs.

Rate this Article

Adoption
Style

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Community comments

  • Hammurapi

    by Nikolay Kolev /

    Your message is awaiting moderation. Thank you for participating in the discussion.

    Another tool worth mentioning is Hammurapi.

  • Eclipse TPTP

    by paul browne /

    Your message is awaiting moderation. Thank you for participating in the discussion.

    While there is a good intro to the Eclipse Test and Performance Project here , does anybody know of an article outlining how to use TPTP for Enterprise Java apps?

    Paul , Technology in Plain English

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

BT

Is your profile up-to-date? Please take a moment to review and update.

Note: If updating/changing your email, a validation request will be sent

Company name:
Company role:
Company size:
Country/Zone:
State/Province/Region:
You will be sent an email to validate the new email address. This pop-up will close itself in a few moments.