一、概述

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进行重复代码检测相关推荐

  1. java文档检测重复_使用Simian进行重复代码检测

    一.概述 Simian是一个可跨平台使用的重复代码检测工具,有商用和免费两种使用渠道,官方网址为:http://www.harukizaemon.com/simian/installation.htm ...

  2. 代码重复率PHP,终端代码重复率检测实践

    背景 当一个项目在不断开发迭代.功能累加的过程中,重复代码的出现几乎是不可避免的.其出现的原因不外乎以下两点: 复制粘贴:这可能是造成代码重复的最大因素,其原因也有很多种,可能是跨项目的代码拷贝,可能 ...

  3. java静态代码检测 pmd,PMD使用与代码质量

    最近项目组要求使用PMD工具,通过自定义规则来检查代码,接录部分文档内容如下: PMD介绍 PMD是一种开源分析Java代码错误的工具.与其他分析工具不同的是,PMD通过静态分析获知代码错误.也就是说 ...

  4. php代码冗余度检查插件,冗余代码检测与处理使用什么工具

    冗余代码检测与处理使用工具Simian,使用方法:首先下载最新版本,并将文件解压:然后将simian所在的路径添加到windows环境变量path:接着将[simian-2.2.24.exe]文件名改 ...

  5. 5 款阿里常用代码检测工具,免费用!

    作者 | 喻阳 面临问题 在日常研发过程中,我们通常面临的代码资产问题主要分为两大类:代码质量问题和代码安全漏洞. 1.代码质量问题 代码质量其实是一个老生常谈的话题,但问题是大家都知道它很重要,却又 ...

  6. 2篇word文档比较重复率_继续教育 | 你该知道的论文小技巧——重复率检测

    点击上方蓝字关注我们 一年一度的毕业季又到了,不少学生愁眉苦脸,最近看到2016级.2017级的小伙伴们都开始疯狂加油写论文,但是写毕业论文,重复率必须达标.据报道,部分学校的毕业论文"查重 ...

  7. [系统安全] 四十六.Powershell恶意代码检测系列 (1)Powershell基础入门及管道和变量的用法

    您可能之前看到过我写的类似文章,为什么还要重复撰写呢?只是想更好地帮助初学者了解病毒逆向分析和系统安全,更加成体系且不破坏之前的系列.因此,我重新开设了这个专栏,准备系统整理和深入学习系统安全.逆向分 ...

  8. [系统安全] 三十一.恶意代码检测(1)恶意代码攻击溯源及恶意样本分析

    您可能之前看到过我写的类似文章,为什么还要重复撰写呢?只是想更好地帮助初学者了解病毒逆向分析和系统安全,更加成体系且不破坏之前的系列.因此,我重新开设了这个专栏,准备系统整理和深入学习系统安全.逆向分 ...

  9. coverity代码检测工具介绍_兴业证券:静态代码检测最佳实践

    一. 引言 谷歌发布的代码规范中指出,80% 的缺失是由 20% 的代码所引起的.规范的代码可以消除过于强烈的个人风格,有助于代码在项目间高效的流转:提升代码的正确性,降低低级问题产生的可能性:同时也 ...

  10. coverity代码检测工具介绍_微服务测试之静态代码扫描

    静态代码扫描为整个发展组织增加价值.无论您在开发组织中发挥的作用如何,静态代码扫描解决方案都具有附加价值,拥有软件开发中所需要的尖端功能,最大限度地提高质量并管理软件产品中的风险. 背景 微服务架构模 ...

最新文章

  1. 郭振宇计算机领域,数学实验教学中心简介
  2. 【IOS 开发】Objective - C 语法 之 流程控制
  3. 暴力求解法 之 枚举排列
  4. JQuery动态创建Form
  5. 【HDU - 3714 】Error Curves (三分)
  6. java+ssh+mysql酒店网站管理系统源码
  7. Hibernate简单的保存操作
  8. 长短期记忆网络_科研成果快报第181期:改进的长短期记忆网络用于长江上游干支流径流预测...
  9. 简单查询(1.普通查询2.条件查询3.模糊查询4.排序查询5.统计查询(聚合函数)6.分组查询7.分页查询)...
  10. 广域网访问局域网路由器设置_交换机路由器如何连接 交换机路由器连接方法【详解】...
  11. java中mysql.ini_为什么找不到mysql.ini文件,我是放在scr目录下的
  12. C++进程和Python进程通信
  13. 微信聊天小程序——(五、添加好友)
  14. 解决:error: (-215) size.width>0 size.height>0 in function cv::imshow
  15. 蓝桥杯摔手机测试次数
  16. 分分钟用上C#中的委托和事件
  17. liquibase(数据库管理)
  18. c语言中数组部分输入赋值,c语言scanf对数组赋值
  19. Duplicate named routes definition:
  20. 用Python量化海龟交易法则

热门文章

  1. matlab指派问题求法,matlab指派问题
  2. Excel单元格自定义格式的知识和技巧
  3. Xshell6与Xftp6教育版下载(免费)
  4. GIS当中矢量数据、影像数据、地形数据等常见数据格式的介绍
  5. 数位板和sai2安装使用
  6. php 微信小程序签到功能,微信小程序每日签到
  7. 查看python源码位置方法以及潜在误区
  8. Masscan教程和入门手册
  9. Vue源码笔记之项目架构
  10. 后台业务管理系统高保真Axure原型模板