【问题标题】:Passing source and binaries directories to Sonar将源代码和二进制文件目录传递给 Sonar
【发布时间】:2012-09-03 03:08:39
【问题描述】:

我正在通过 Jenkins Sonar 插件设置 Sonar,我对 Sonar 解释我给它的目录的方式有几个问题。

  1. sources=srcDir1,srcDir2:据我了解,这是我传递项目源目录的地方。我的项目实际上是一个多项目,里面有很多源目录。是否可以给 Sonar 项目的根路径,Sonar 会知道深入并找到每个项目 .java 文件?还是我必须给它每个源目录?另外,如果我有 src/com/mycompany/myproj/... 包结构,我是否必须给它结束路径,或者 src 路径就足够了?
  2. binaries=binDir :这里我应该给 Sonar 提供已编译的 .class 代码或打包的 .jar / .war / .ear 文件的路径,这样 Findbugs 才能工作。同样的问题:我没有所有编译类的中心位置,所以我必须指定每个路径吗?

【问题讨论】:

  • 您似乎正在分析 Java,而且很明显您没有使用 Maven,但是...我无法判断您是否正在使用 Sonar ANT 任务...如果您正在使用Java runner 我不得不问为什么?您是否使用 ANT 或 Maven 以外的工具构建代码?
  • 我正在使用 Jenkins Sonar 插件,但我的问题更笼统,关于 Sonar 如何解释传递给它的属性
  • @Micheal Jenkins 插件确实是为支持 Maven 而设计的。如果您使用的是 ANT,最好将 ANT 任务集成到您的构建逻辑中,以便它可以利用您创建的任何路径,列出您的代码所依赖的 jar(Findbugs 需要)。至于如何使用这些属性,我在下面给出的文档链接中对此进行了描述。您需要阅读这篇文章,因为对多模块构建的支持是一个额外的复杂因素。

标签: jenkins sonarqube jenkins-plugins


【解决方案1】:

Sonar ANT 任务包含有关如何配置 Sonar 以分析多模块构建的部分:

【讨论】:

    猜你喜欢
    • 2012-07-04
    • 2012-02-29
    • 2016-04-20
    • 1970-01-01
    • 2012-10-19
    • 1970-01-01
    • 1970-01-01
    • 2012-08-21
    相关资源
    最近更新 更多