Java代码分析/度量工具

时间:2011-12-01 16:52:15

标签: java netbeans code-analysis code-metrics jdepend

我正在寻找一个免费的Java代码分析/度量工具,我可以用它来查看类依赖性,方法执行时间等,并可能打印出一个显示它们的图表。我目前正在ANT中使用jdepend任务来实现这一目标,但我认为必须有一个更好的工具来处理这类事情。我也更喜欢它与Netbeans集成,因为我不想将我的所有项目移植到Eclipse来完成分析任务。我曾尝试使用Visual Paradigm的社区版本,但是当它没有在社区版本中提供代码同步时,我很快就厌倦了它。虽然如果确实如此,我可以再给它一次。我也试过BOUML,但它似乎更像是一个UML设计工具,而不是现有的代码分析器。所以,我的问题是,你们用什么来进行Java代码分析?谢谢!

编辑:例如,JDepend测量一些指标并且可以绘制一个很好的小依赖图,但它并没有完全具有UI或任何东西。我想我正在寻找一个工具,可以绘制出我所有的类和它们之间的依赖关系(jdepend只做包AFAIK)以及在类之间调用的方法,并提供指标数&# 34;代码结构有多好"。如果问题含糊不清,我很抱歉,我只是在寻找各种选项,而且我对代码指标工具没有多少经验...

2 个答案:

答案 0 :(得分:3)

正如@Victor所说,Sonar是一个非常好的静态代码分析工具。它生成图形和图表,并且通常允许您以多种方式对Java代码分析进行切片和切块。

但是,它确实作为服务器运行,可能需要您可能没有的计算机/网络权限。我自己使用它,我推荐它,但它并不总是实用的。因此,让我们来看看它在引擎盖下使用的一些工具。

首先,FindBugs。顾名思义,它可以帮助您找到Java源代码中的错误。

接下来,有PMD。它有助于以不同的方式从FindBugs中找到错误。

第三,有CheckStyle。它有助于确保您的代码符合某些样式指南。

最后,有Cobertura,它可以检测您的Java字节码并分析您的单元测试执行哪些源代码行(您有单元测试,对吗?)

这不是Sonar所使用的工具的详尽列表,但它涵盖了似乎是亮点的内容。在Sonar内部,这些都是100%可配置的。在Sonar之外,它们仍然是可配置的,但你更喜欢XML。

答案 1 :(得分:2)

Sonar.虽然,我个人从未使用它,所以我无法回答有关细节的问题。但是,我知道我们的conitnuos构建工具与它集成在一起制作漂亮的图片:)