Scala源代码度量工具(代码行数、注释行数等)

6
似乎有很多支持Java语言的代码分析工具,但我到目前为止还没有找到一个支持Scala的(找到类似查找LOC这样简单的工具就好了)。我正在使用IntelliJ,尝试了Metrics Reloaded和Static插件,但它们完全忽略了Scala文件。
如果有任何建议,将不胜感激... :)
编辑: 需要的指标只是像代码行数、注释行数(%注释)、简单的东西。
编辑:谢谢大家,两个回答都很有用。 :) 我只能选择一个“正确”的答案(只给了得票最少的一个)。

请更具体地说明您要查找哪些指标。单元测试覆盖率、代码风格检查、每秒 WTF 数量等等。 - Rado Buransky
Cloc 似乎适用于 Scala。我还没有验证其准确性,但它知道文件扩展名并给出合理的计数。 - Randall Schulz
2个回答

9

我使用 cloc,它运行良好。它可以理解几乎所有的语言和脚本,安装也很容易 - 在Linux上作为一个包提供,并且易于使用。它还可以输出多种格式,例如csv、xml、yaml、sql等。这是我的一个项目的示例输出:

# 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
--------------------------------------------------------------------------------

5
尽管示例是用Java编写的,但你真的需要看一下名为Coda Hale度量库的库。这里是它的Scala API。我认为这正是你所需要的。它甚至支持像部分函数和Actors和Futures这样的东西。

看到@Randall的评论和你的编辑,很明显你正在寻找静态分析工具,而不是我认为的“度量标准”。我的错。因此,我建议你看一下Scalastyle,它比Gangnam Style好得多,并且类似于Java中的CheckStyle。尽管常见的误报可能较多,但你也应该看一下cpd4sbt(类似于PMD)和FindBugs(类似于,唔,FindBugs)。


1
我无法将这个问题解释为关于执行指标的问题。 - Randall Schulz
感谢您和楼主的澄清。已进行编辑。 - Vidya

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接