6

似乎有很多代码分析工具支持 java 语言,但我至今找不到支持 scala 的工具(像查找 LOC 这样简单的东西会很好)?我在 intellij 工作,所以尝试了 metricsReloaded 和 Static 插件,但它们完全忽略了 scala 文件。

任何建议,将不胜感激.. :)

编辑:所需的指标就像代码行、评论行(评论的百分比),像这样的简单东西

编辑:谢谢大家,两个答案都很有用。:) 我不得不选择一个任意的“正确”答案(只是把它给了得票最少的那个。

4

2 回答 2

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
--------------------------------------------------------------------------------
于 2014-01-28T00:20:39.563 回答
5

尽管这些示例是用 Java 编写的,但您确实需要看看Coda Hale 的恰当命名的 Metrics 库。这里是它的 Scala API。我认为这正是您所需要的。它甚至支持偏函数以及Actors 和 Futures 之类的东西。

在看到@Randall 的评论和您的编辑后,很明显您正在寻找静态分析工具,而不是我认为的“指标”。我的错。为此,我建议你看看Scalastyle,它比Gangnam Style好得多,类似于 Java 中的 CheckStyle。尽管经常报告误报,但 您还应该查看cpd4sbt (类似于 PMD)和 FindBugs(类似于 FindBugs)。

于 2014-01-27T23:04:42.260 回答