5

嗨女士们先生们,

我们有一个相当大的项目,拥有自己的构建框架,主要基于 Java(但也存在其他语言)。

我们想使用 Sonar Hudson 插件以图形方式呈现各种代码指标。我们如何做到这一点?

我们是否需要更改项目结构并将其带到 Maven 中,或者是否有一种解决方法来指定从何处获取测试结果和其他工件?

谢谢

4

2 回答 2

3

我们使用的方法是这样的:

  • 我们为声纳构建了一个定制的 pom.xml 构建文件(我们将 ant 用于其他构建目的)
  • 它只需要很好地执行测试,因此指定硬编码的依赖引用

    <scope>system</scope>
    
  • 我们没有改变maven的项目结构,你可以在maven自定义scr、test、resources目录中指定(只要你只有一个src和test目录)

  • CI中使用的命令是

    mvn clean compile sonar:sonar
    

我们将 Continuum 用于 CI 部分,但它在 Hudson 中应该也能正常工作。

此方法没有更改任何其他构建项目,它只是为 Sonar 定制的。但它确实为持续集成(每日)构建或使用 maven 作为构建工具开辟了道路。此方法类似于此处描述的“声纳光模式”

更多信息在这里:

于 2009-08-04T15:00:14.810 回答
2

您可以在没有 Maven 的情况下使用声纳。你只需要告诉它 rport 文件的属性:sonar.cobertura.reportPath, sonar.clover.reportPath, sonar.surefire.reportsPath...</p>

见这里:http ://sonar.codehaus.org/tag/ant/

在 hudson 中配置构建时,有一个复选框可以设置这些值 - 它被称为“检查这个项目是否不是用 maven2 构建的”

于 2009-08-04T16:57:15.757 回答