【问题标题】:How to apply Cobertura plugin to all projects or all subprojects如何将 Cobertura 插件应用于所有项目或所有子项目
【发布时间】:2015-05-28 03:50:32
【问题描述】:

我正在尝试将 Cobertura 插件应用于我的 Gradle 构建脚本中的所有项目和子项目。但是,脚本在应用于所有时无法找到插件。这是我所拥有的:

buildscript {
    repositories {
        jcenter()
    }
}

allprojects {
    beforeEvaluate {
        project.buildscript {
            repositories {
                jcenter()
            }

            dependencies {
                classpath 'net.saliman:gradle-cobertura-plugin:2.2.7'
            }
        }
    }
}

subprojects {
    apply plugin: 'net.saliman.cobertura'
}

【问题讨论】:

    标签: maven groovy gradle android-gradle-plugin build-script


    【解决方案1】:

    build.gradle 应该是这样的:

    buildscript {
        repositories {
            jcenter()
        }
        dependencies {
            classpath 'net.saliman:gradle-cobertura-plugin:2.2.7'
        }
    }
    
    allprojects {
        apply plugin: 'net.saliman.cobertura'  
    }
    

    【讨论】:

      【解决方案2】:

      您可能还想将所有子项目的 cobertura 报告合并为一个用于整个项目的精美顶级报告。

      要做到这一点,我相信你需要 cobertura gradle 插件 2.2+,其配置类似于:

      // note - all non-cobertura config is stripped out of this example
      allprojects {
          apply plugin: 'cobertura'
      }
      subprojects {
          cobertura {
              coverageIgnoreTrivial = true
          }
      }
      buildscript {
          repositories {
              mavenCentral()
          }
          dependencies {
              classpath "net.saliman:gradle-cobertura-plugin:2.2.2"
          }
      }
      def files = subprojects.collect { new File(it.projectDir, '/build/cobertura/cobertura.ser') }
      cobertura {
          coverageFormats = [ 'xml', 'html' ]
          coverageSourceDirs = subprojects.sourceSets.main.allSource.srcDirs.flatten()
          coverageMergeDatafiles = files
      }
      test.dependsOn(subprojects.test)
      

      来自 syncsynchalt 对这里问题的精彩评论: https://github.com/stevesaliman/gradle-cobertura-plugin/issues/10

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2015-11-25
        • 1970-01-01
        • 1970-01-01
        • 2018-12-02
        • 1970-01-01
        • 1970-01-01
        • 2021-10-28
        相关资源
        最近更新 更多