使用Simian进行重复代码检测
一、概述
Simian是一个可跨平台使用的重复代码检测工具,有商用和免费两种使用渠道,官方网址为:http://www.harukizaemon.com/simian/installation.html,能够检测代码片段中除了空格、注释及换行外的内容是否完全一致,且支持的语言十分广泛,包括:
- Java
- C#
- C++
- C
- Objective-C
- JavaScript (ECMAScript)
- COBOL, ABAP
- Ruby
- Lisp
- SQL
- Visual Basic
- Groovy
- Swift
二、安装与使用
直接下载文件http://www.harukizaemon.com/simian/get_it_now.html,推荐下载.MD5版本,保证下载的文件是完整的。下载后解压,无需安装即可使用。
Windows平台使用bin目录下的exe,linux平台可执行bin目录下的simian*.jar。
三、示例
c:\>simian.exe [options] files 一些参数:
- 检查包括子目录下的所有的c#文件:
"-recurse=*.cs"
- 检查当前目录下的所有c#文件 ,并且只检查代码3行以上重复的代码
-threshold=3 "*.cs"
- 在当前目录的所有子文件夹下检测所有c和h后缀的文件:
**/*.c **/*.h
- 检测两个不同目录下的所有java文件:
"/csharp-source/*.cs" "/java-source/*.java"
- 检测所有子目录下的所有java文件,包括test类:
-includes=**/*.java -excludes=**/*Test.java
- 检测当前目录下的所有java文件,且忽略其中的数字的不同:
-ignoreNumbers "*.java"
- 检测所有java文件,并以xml格式显示结果:
-formatter=xml "*.rb"
- 从文件中读取配置参数(文件中一行只能包括一个simian有效的参数):
-config=simian.config
转载于:https://www.cnblogs.com/ttssrs/p/10313210.html
使用Simian进行重复代码检测相关推荐
- java文档检测重复_使用Simian进行重复代码检测
一.概述 Simian是一个可跨平台使用的重复代码检测工具,有商用和免费两种使用渠道,官方网址为:http://www.harukizaemon.com/simian/installation.htm ...
- 代码重复率PHP,终端代码重复率检测实践
背景 当一个项目在不断开发迭代.功能累加的过程中,重复代码的出现几乎是不可避免的.其出现的原因不外乎以下两点: 复制粘贴:这可能是造成代码重复的最大因素,其原因也有很多种,可能是跨项目的代码拷贝,可能 ...
- java静态代码检测 pmd,PMD使用与代码质量
最近项目组要求使用PMD工具,通过自定义规则来检查代码,接录部分文档内容如下: PMD介绍 PMD是一种开源分析Java代码错误的工具.与其他分析工具不同的是,PMD通过静态分析获知代码错误.也就是说 ...
- php代码冗余度检查插件,冗余代码检测与处理使用什么工具
冗余代码检测与处理使用工具Simian,使用方法:首先下载最新版本,并将文件解压:然后将simian所在的路径添加到windows环境变量path:接着将[simian-2.2.24.exe]文件名改 ...
- 5 款阿里常用代码检测工具,免费用!
作者 | 喻阳 面临问题 在日常研发过程中,我们通常面临的代码资产问题主要分为两大类:代码质量问题和代码安全漏洞. 1.代码质量问题 代码质量其实是一个老生常谈的话题,但问题是大家都知道它很重要,却又 ...
- 2篇word文档比较重复率_继续教育 | 你该知道的论文小技巧——重复率检测
点击上方蓝字关注我们 一年一度的毕业季又到了,不少学生愁眉苦脸,最近看到2016级.2017级的小伙伴们都开始疯狂加油写论文,但是写毕业论文,重复率必须达标.据报道,部分学校的毕业论文"查重 ...
- [系统安全] 四十六.Powershell恶意代码检测系列 (1)Powershell基础入门及管道和变量的用法
您可能之前看到过我写的类似文章,为什么还要重复撰写呢?只是想更好地帮助初学者了解病毒逆向分析和系统安全,更加成体系且不破坏之前的系列.因此,我重新开设了这个专栏,准备系统整理和深入学习系统安全.逆向分 ...
- [系统安全] 三十一.恶意代码检测(1)恶意代码攻击溯源及恶意样本分析
您可能之前看到过我写的类似文章,为什么还要重复撰写呢?只是想更好地帮助初学者了解病毒逆向分析和系统安全,更加成体系且不破坏之前的系列.因此,我重新开设了这个专栏,准备系统整理和深入学习系统安全.逆向分 ...
- coverity代码检测工具介绍_兴业证券:静态代码检测最佳实践
一. 引言 谷歌发布的代码规范中指出,80% 的缺失是由 20% 的代码所引起的.规范的代码可以消除过于强烈的个人风格,有助于代码在项目间高效的流转:提升代码的正确性,降低低级问题产生的可能性:同时也 ...
- coverity代码检测工具介绍_微服务测试之静态代码扫描
静态代码扫描为整个发展组织增加价值.无论您在开发组织中发挥的作用如何,静态代码扫描解决方案都具有附加价值,拥有软件开发中所需要的尖端功能,最大限度地提高质量并管理软件产品中的风险. 背景 微服务架构模 ...
最新文章
- 郭振宇计算机领域,数学实验教学中心简介
- 【IOS 开发】Objective - C 语法 之 流程控制
- 暴力求解法 之 枚举排列
- JQuery动态创建Form
- 【HDU - 3714 】Error Curves (三分)
- java+ssh+mysql酒店网站管理系统源码
- Hibernate简单的保存操作
- 长短期记忆网络_科研成果快报第181期:改进的长短期记忆网络用于长江上游干支流径流预测...
- 简单查询(1.普通查询2.条件查询3.模糊查询4.排序查询5.统计查询(聚合函数)6.分组查询7.分页查询)...
- 广域网访问局域网路由器设置_交换机路由器如何连接 交换机路由器连接方法【详解】...
- java中mysql.ini_为什么找不到mysql.ini文件,我是放在scr目录下的
- C++进程和Python进程通信
- 微信聊天小程序——(五、添加好友)
- 解决:error: (-215) size.width>0 size.height>0 in function cv::imshow
- 蓝桥杯摔手机测试次数
- 分分钟用上C#中的委托和事件
- liquibase(数据库管理)
- c语言中数组部分输入赋值,c语言scanf对数组赋值
- Duplicate named routes definition:
- 用Python量化海龟交易法则