I am looking out for an eclipse plug-in that could be used to detect unused methods or classes across a project. Does any one know a efficient good to use plug-in of that kind?
UCDetector (Unnecessary Code Detector) is a eclipse PlugIn tool to find unnecessary (dead) public java code. For example public classes, methods or fields which have no references.
Tools like Eclipse, Findbugs and PMD can detect useless (or “unnecessary”) code on the micro-level by analyzing the AST (abstract syntax tree) [PMD]. Statically unreachable code: Code that is not statically referenced is a superset of “dead code”.
The quickest way to find dead code is to use a good IDE. Delete unused code and unneeded files. In the case of an unnecessary class, Inline Class or Collapse Hierarchy can be applied if a subclass or superclass is used. To remove unneeded parameters, use Remove Parameter.
Of course, any of those tools can NOT deterministically find unused code (see the Halting Problem). Any code could eventually be called, through various means like Reflection.
But those static analysis tools can help.
For additional hints, a good test coverage is still required (dynamic analysis).
Something like EclEmma (http://www.eclemma.org/) might be what you're looking for. It shows code coverage for packages, classes, methods and individual lines.
Some lines will never get 100% coverage (e.g. Enums) but it will give you a good idea about what's being used.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With