zoukankan      html  css  js  c++  java
  • 使用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
  • 相关阅读:
    Mysql事后触发器练习
    基础算法2.1——枚举法
    JSP第二次作业:使用session记录次数的猜数游戏
    JSP第一次作业:使用Cookie记录用户上次访问时间
    Python数据清洗见闻
    Python作业碎碎念
    数组那些事儿
    %1e9+7问题收录
    DB2数据库关于delete in id和batch delete的性能对比
    关于sql知识全面总结
  • 原文地址:https://www.cnblogs.com/ttssrs/p/10313210.html
Copyright © 2011-2022 走看看