java ncss 代码_java静态代码检查工具:JavaNCSS的使用-Go语言中文社区

在学习jDepend的时候,看到了这JavaNCSS静态代码分析工具。jDepend检查java包的稳定性、抽象性、包之间的依赖关系,而JavaNCSS则检查java源文件、类、方法等更细粒度的指标。JavaNCSS统计packages信息、classes信息、functions信息。

1.Packages信息

43ae057b5cc56cd241a94f91b8c476db.png

2.Classes信息

282364e8d83f94e0bd4f12aaba6d75b2.png

3.functions信息

a91065a332209b4d8b7f9c57e6be21bc.png

有几个名词解释下:

NCSS:Non Commenting Source Statements,除了注释和空行外的java有效代码行数。

CNN:Cyclomatic Complexity Number (McCabe metric),函数的圈复杂度,就是if、while、for、catch等逻辑控制语句的分支个数。这个跟Eclipse Mertics插件统计的函数圈复杂度指标类似,只不过两者使用的计算规则不同罢了。

JVDC:Javadoc comments,是否编写了符合javadoc规范的注释。0代表无javadoc,1代表有javadoc。

关于JavaNCSS的统计规则,官网上有介绍,有兴趣的可以自己研究下。写点测试代码,用JavaNCSS跑下看结果,对比下就知道了。

下面介绍下,如何在windows下安装使用JavaNCSS工具。我用的是JavaNCSS 32.53。首先从官方下载javancss-32.53.zip安装包。

4913ece2f4c331c74edcc3dd806a6e44.png

由于JavaNCSS是用java编写的工具,所以必需要安装JDK,并配置好JAVA_HOME环境变量。并不需要配置什么CLASSPATH环境变量,javaNCSS会自动将javancss.jar、ccl.jar、jhbasic.jar加入CLASSPATH中。

0d80bfdd5686e76b2d88b94ad219cd91.png

如果遇到上面这个错误,是因为我们JAVA_HOME中路径含有空格。这个看下javancss.bat很容易知道:

%JAVA_HOME%binjava -classpath %CLASSPATH% javancss.Main %1 %2 %3 %4 %5 %6 %7 %8 %9

解决方法也很简单:用双引号即可:"%JAVA_HOME%binjava" -classpath %CLASSPATH% javancss.Main %1 %2 %3 %4 %5 %6 %7 %8 %9

javaNCSS使用也很简单:#统计结果输出到文件

javancss -out "result.txt" D:workspacedemosrc

#统计结果显示到javancss自带的GUI

javancss -gui D:workspacedemosrc

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值