UCDetector
1.1、UCDetector简介

UCDetector官网:http://www.ucdetector.org

UCDetector用于扫描无用的Java类、方法、变量等。

UCDetector是一个Eclipse的插件。

1.2、安装UCDetector

1、下载UCDetector

curl -LO https://jaist.dl.sourceforge.net/project/ucdetector/ucdetector/1.10.0/org.ucdetector_1.10.0.jar

2、将该jar包放到Eclipsedropins目录下:

cp org.ucdetector_1.10.0.jar ~/bin/eclipse/dropins/

3、重新启动Eclipse

1.3、设置UCDetector

通过菜单"Window → Preferences → UCDetector",打开如下界面:

1.4、执行UCDetector

选中某个项目或者包或者类文件,右击,选择"UCDetector → Detect unnecessary code", 如下图:

扫描后,如下图:

我们可以看到,扫描出的问题在Problem视图中列出来,并且在编辑器中的对应行上做了标记。

1.5、UCDetector结果报告

每次扫描完成后,会在Eclipse工作空间下的ucdetector_reports文件夹下生成报告, 报告有两种形式:htmltxt

1.5.1、html结果报告

用浏览器打开一个html结果报告,如下:

1.5.2、txt结果报告

如果您不满意UCDetector自动生成的html报告, 或者想与其他的静态扫描工具的结果进行综合汇总,您就有必要使用txt格式的报告了,txt格式的报告就是一个格式化的文本文件,我们对他进行分析后,生成我们想要的任何展现形式。

1.6、使用UCDetector的注意事项

扫描出来的不一定就是真的不需要的,这个需要自己判断,有以下几种情况:

  • 反射

    虽然扫描出了某个类、变量、方法没有被其他类引用,很有可能是通过反射使用的。比如:

    Spring的在XML中配置注入方式。

    Android四大组件在AndroidManifest.xml中注册

  • 被jar调用

    如果是大型项目,通常,接口与实现分开的,分别打成不同的jar包。

    有时候,某些类、变量、方法供第三方调用。