检查工程中没有引用到的文件,对于要求保证工程质量的业务团队而言至关重要,这也是工程瘦身的第一步,非常适应于业务需求变更频繁的团队
脚本介绍
可以检查工程中没有引用到的文件
脚本原理
首先检查文件名,存入allFileNameArray数组中,在检查每个文件下import的头文件,加入到allImportFileArray,从allImportFileArray剔除掉allFileNameArray(因为.m会引用一次.h),就是没有头文件引用的文件列表了。
代码:
|
|
这里只是简单对方法进行实现,可以对path进行输入,对文件类型进行检查等,方便使用其他工程
存在问题(iOS工程):
这样检查会遗漏动态方法组合VC名然后push,通过URL跳转进入的页面,需要再进一步手动全局搜索,进行排查。
delegate 无法检查
其他工具
如何进行工程中重复代码的检查?已有开源工具可供参考:
Simian
- 安装JDK 8,JDK低版本使用simian-2.4.0会报错
- 下载simian最新版:地址,解压,使用bin目录下的simian-2.4.0.jar
- 执行命令:java -jar simian-2.4.0.jar -includes=’*/.m’ -reportDuplicateText -ignoreCurlyBraces -ignoreNumbers -threshold=20
PMD
- 安装pmd,使用homebrew:brew install pmd
下载编译好的OC分析插件:地址
将ObjCLanguage-0.0.8-SNAPSHOT.jar拷到pmd的目录下:/usr/local/Cellar/pmd/5.1.3/libexec/lib/
- 执行命令:pmd cpd –language ObjectiveC –minimum-tokens 50 –files projectPath