Eclipse计算代码行

con*_*ied 102 eclipse metrics line-count

我已经尝试了Metrics插件,虽然它很好,但并不是我老板想要的.它只用一条}作为一条线来计算一条线,他不希望这被视为"它不是一条线,它是一种风格选择".我还需要生成有关所提供指标的某种形式的报告.这有什么好的工具吗?

小智 250

总有"蛮力":

  1. 搜索 - >文件

  2. 在"包含文本" - >中键入以下内容^.*$.然后选中"正则表达式"复选框

  3. 在"文件名模式" - >中键入以下内容 *.java

  4. 点击"搜索"

  5. 检查"搜索"选项卡中的匹配数量.

  • 你也可以使用`\n [\ s]*`它也会忽略空行 (22认同)
  • 这完全符合我的要求.它不排除括号或任何花哨的东西,但它提供了我正在寻找的答案,在日食中,没有插件.谢谢! (11认同)
  • 非常好的解决方案,不需要其他插件!+1 (3认同)
  • 这适用于最新(霓虹灯)月食,但指标插件不起作用 (2认同)
  • @omerio注释也必须输入,并且是任何源代码的必要部分.不计算那些诱导它们不重要或只是盲文 - 这是一个严重的错误. (2认同)

ali*_*opi 91

安装Eclipse Metrics插件.创建HTML报告(使用可选的XML和CSV)right-click a project -> Export -> Other -> Metrics.

您可以通过忽略空白和仅注释行来调整代码行度量标准,或者根据需要排除Javadoc.为此,请检查选项卡Preferences -> Metrics -> LoC.

而已.排除花括号没有特殊选项{}.

该插件为LoC提供了一个名为Number of Statements的替代指标.这就是作者对此所说的话:

此度量标准表示方法中的语句数.我认为这是一个比代码行更强大的措施,因为后者在不同的格式约定方面是脆弱的.

编辑:

在您澄清了您的问题后,我了解您需要查看实时指标违规的视图,例如编译器警告或错误.您还需要一个报告功能来为您的老板创建报告.我上面描述的插件用于报告,因为您必须在要查看它们时导出指标.

  • 是啊.我无法在"右键单击项目 - >导出"下看到任何选项,我已经从eclipse市场直接安装了插件 - 版本是 - "Eclipse Metrics 3.12.0",任何人都可以帮助我.谢谢! (5认同)
  • 该插件的当前版本 (3.14.1) 似乎不适用于 Eclipse Luna (4.4)。令人惊讶的是,来自 Sourceforge 的古老 Metrics 插件仍然有效...... (2认同)
  • 有一个有效的版本-https://github.com/qxo/eclipse-metrics-plugin/blob/master/updatesite/plugins/net.sourceforge.metrics_1.3.10.jar (2认同)

ZOX*_*XIS 22

如果在OSX或*NIX上使用

从*.java文件中获取所有实际的java代码行

find . -name "*.java" -exec grep "[a-zA-Z0-9{}]" {} \; | wc -l
Run Code Online (Sandbox Code Playgroud)

获取*.java文件中的所有行,其中包括空行和注释

find . -name "*.java" -exec cat | wc -l
Run Code Online (Sandbox Code Playgroud)

获取每个文件的信息,这将为您提供[文件路径+","+行数]

find . -name "*.java" -exec wc -l {} \;
Run Code Online (Sandbox Code Playgroud)

  • 应该是`找到。-name "*.java" | xargs 猫 | grep "[a-zA-Z0-9{}]" | wc -l` (2认同)

Von*_*onC 8

另一种方法是使用另一个loc实用程序,例如LocMetrics.
它还列出了许多其他loc工具.与Eclipse的集成并不总是存在(就像Metrics2一样,你可以检查它,因为它是一个比Metrics更新的版本),但至少这些工具可以用逻辑行推算(通过求和计算)终端分号和终端花括号).
您还可以查看eclipse-metrics更适合您的期望.


ılǝ*_*ılǝ 7

另一个工具是Google Analytix,即使您无法在出现错误的情况下构建项目,也可以运行指标


ccl*_*eve 5

在Eclipse中计算代码行的一种可能方法是:

使用“搜索/文件...”菜单,选择“文件搜索”选项卡,为“包含文本”指定\ n [\ s] *(这不会计算空行),然后勾选正则表达式。

帽子提示:www.monblocnotes.com/node/2030

  • 还选择“*.java”(或您的扩展名)以关注代码文件 (2认同)