似乎有很多支持java语言的代码分析工具,但我到目前为止还无法找到支持scala的东西(像查找LOC会很简单的东西)?我在intellij工作所以尝试过metricsReloaded和Static插件,但他们完全忽略了scala文件。
任何建议都将受到赞赏.. :)
编辑: 所需的度量标准就像代码行,注释行(注释的百分比),简单的东西
编辑:谢谢大家,两个答案都很有用。 :)我不得不选择一个任意的“正确”答案(只是给了最少投票的那个。
答案 0 :(得分:9)
我使用cloc
,它运作得很好。它几乎可以理解任何语言或脚本,它易于安装 - 在Linux上作为一个软件包,易于使用。它还可以输出多种格式,如csv, xml, yaml, sql, etc
。以下是我的一个项目的示例输出:
# cloc .
1145 text files.
853 unique files.
937 files ignored.
http://cloc.sourceforge.net v 1.60 T=23.05 s (25.5 files/s, 8260.4 lines/s)
--------------------------------------------------------------------------------
Language files blank comment code
--------------------------------------------------------------------------------
XML 383 311 26 150875
Javascript 18 2330 948 9904
Scala 132 1689 1901 8029
CSS 8 1266 163 7373
HTML 23 459 91 2835
SQL 11 11 5 877
XSLT 1 30 16 468
Bourne Shell 9 57 108 240
Perl 1 57 102 227
Bourne Again Shell 1 2 0 3
DOS Batch 1 0 0 2
--------------------------------------------------------------------------------
SUM: 588 6212 3360 180833
--------------------------------------------------------------------------------
答案 1 :(得分:5)
尽管这些示例是使用Java编写的,但您确实需要查看名称恰当的Metrics library by Coda Hale。并且here is the Scala API for it。我认为这正是你所需要的。它甚至支持部分函数和Actors and Futures等内容。
在看到@Randall的评论和编辑后,很明显您正在寻找静态分析工具,而不是我认为的“指标”。我的错。为此,我建议您查看Scalastyle,它比Gangnam Style好得多,类似于Java中的CheckStyle。尽管常见的误报,你还应该看cpd4sbt(类似于PMD)和FindBugs(类似于,FindBugs)。