Gradle任务在多模块项目中聚合checkstyle报告

时间:2017-04-12 01:00:25

标签: gradle checkstyle

我有一个多模块gradle项目,具有以下结构:

myProject
|
|-module1
  |-src
    |-main
    |-test
  |-build.gradle
|-module2
  |-src
    |-main
    |-test
  |-build.gradle
|-build.gradle

我有以下配置来生成checkstyle报告:

checkstyle {
        toolVersion = '6.4.1'
        configFile = rootProject.file("config/checkstyle/checkstyle.xml");
        showViolations = true
        ignoreFailures = true
        reportsDir = file("$project.rootDir/reports/checkstyle/$project.name")
        tasks.withType(Checkstyle) {
            reports {
                xml.enabled true
                html.enabled true
            }
        }
    }

checkstyleMain << {
        ant.xslt(in: file("$project.rootDir/reports/checkstyle/$project.name/main.xml"),
                style: rootProject.file('config/checkstyle-noframes-sorted.xsl'),
                out: rootProject.file('config/aggregated.html'))
    }

我的目标是生成一个聚合的checkstyle报告,其中包含来自这两个模块的信息。当我运行&#34; gradle checkstyleMain&#34; 时,汇总的html报告仅包含来自module2的checkstyle报告信息,并忽略module1信息。

我是新手,如果有人可以帮助我,那将会很棒。如果您需要其他信息,请与我们联系

1 个答案:

答案 0 :(得分:0)

尝试包含您的配置以生成检查样式报告

在每个模块的build.gradle文件中分别而不是包括此 仅限于您的项目build.gradle文件。

或者您可以使用此插件

下载链接 - https://plugins.jetbrains.com/plugin/1065-checkstyle-idea

它给出了正确的结果

或者使用声纳 - 并在下面的链接中提及我的答案

What is the correct way to configure an Android project with submodules for use with the sonarqube gradle plugin?

只是分享我的意见希望它有所帮助。