【问题标题】:How to exclude generated sourceSet from jacoco plugin in Gradle如何从 Gradle 中的 jacoco 插件中排除生成的 sourceSet
【发布时间】:2018-03-07 08:21:54
【问题描述】:

我搜索了很多,所有的问题和答案都是关于排除特定的包结构。

我有一个包含src/main/javasrc/test/javasrc/generated/java 目录的项目。

maingenerated 的内容编译到同一目录中。

有没有办法从 jacoco 插件源集中排除 src/generated/java/ 文件中的文件?

【问题讨论】:

  • generated 文件有共同的包名吗?
  • 不。它们是由 QueryDSL 生成的,因此每个类都有一个类,其名称前只有一个 Q,并且在同一个包中。

标签: java gradle jacoco source-sets


【解决方案1】:

也许是这样的:

jacocoTestReport {
    afterEvaluate {
        classDirectories = files(classDirectories.files.collect {
            fileTree(dir: it, exclude: '**/Q*')
        })
    }
}

如果还不够(src/main/java 中的某些类以Q 开头),可以尝试覆盖默认值为Qquerydsl.prefix 属性,使用更独特的东西。

【讨论】:

  • 如果您查看docs.gradle.org/current/dsl/…,在 JacocoReport 类中有一个 sourceDirectories 属性。但我不知道如何在 Gradle 构建文件中进行配置。
猜你喜欢
  • 2014-07-08
  • 2018-12-18
  • 2013-11-16
  • 1970-01-01
  • 2018-09-22
  • 1970-01-01
  • 1970-01-01
  • 2015-01-17
  • 1970-01-01
相关资源
最近更新 更多